ASとか

開発系の記事が多めです。タイトルのASはActionScriptの略です。

さくらVPS申し込み〜SSHするまで

はじめに

  • Linux知らない
  • 開発環境作れない
  • 気軽にアプリ出せるような場がない

というないないづくしな私ですがこの度さくらVPSを契約してみました。これで遊び倒して「昨日話してたアプリのアイデア面白かったから今日リリースしたわー、とりま自分の仮想専用サーバーでリリースしたわー」とか、「ローカルにしか開発環境ないとすぐにリリースできなくない?」とか、「俺が昨日自分の仮想専用サーバーのセキュリティ高めた話ってもうしたっけ?」とか言えるようになりますね。2週間の無料お試し期間もあってとてもいいと思います。以下作業ログ。

申し込み

  • 申し込み完了
  • 仮登録完了メール受信
  • メールにあるURLでコントロールパネルへ行きIPとパスワード打ち込んでログイン
    • 簡単にUbuntuとかに変えられると知って迷う
    • でもなにも知らないので何しても勉強になると思いそのままCentOSを使用
    • ちなみにバージョン
# cat /etc/redhat-release
CentOS release 6.2 (Final)

ユーザを作る

  • コンパネの[仮想サーバ操作]から[起動]ボタンを押す
  • ステータスが稼働中になる
  • コンパネの[リモートコントロール]を押す
  • CentOSがカタカタと動いたあと、ログインを求められる
  • rootで入り、パスワードを求められるのでコンパネにログインしたのと同じパスワードを入力
  • ログイン
  • rootは権限が強すぎて怖いのでそうでもない権限をもつユーザを作成
    • ユーザのホームディレクトリもこれで作成される
# useradd murakaming
  • パスワード設定
    • passwdコマンドは予測されやすかったり短かったりするパスワードに警告出してくれる
# passwd murakaming
  • rootから変更、-を付けることで元のユーザの環境変数を引き継がないようにする
    • 自分で環境変数追加してないからこの時点で影響あるのかは知らないけどなんとなく
# su - murakaming
  • とりあえず作っただけなのでrootに戻る
    • rootに戻る場合はハイフンの後指定なし
    • 元のユーザに戻る場合はexitを使う、この場合は同じくrootに戻る
$ su -

セキュリティ設定の準備

  • 自分のユーザを管理グループであるwheelに入れる
    • 後でrootになれるユーザをグループで制限する
    • -Gオプションは入るグループをカンマ区切りで繋げれて、ここに含まないグループからは削除される
# usermod -G wheel murakaming
  • wheelグループは最初からあって、rootはそこに属しているみたい
# cat /etc/group | grep wheel
wheel:x:10:root

・後でMacからSSHでファイル転送(scp)するためにsshd起動

# /etc/init.d/sshd start

Macから鍵を用意(公開鍵暗号方式

  • ターミナルで鍵生成
    • -t rsaオプションでRSA暗号方式
    • 保存場所を聞かれるがデフォルトでいいので華麗にエンターを押す
    • パスワード無しはまずいのでしっかりパスワード入力する
$ ssh-keygen -t rsa
$ chmod 600 ~/.ssh/id_rsa.pub
  • 公開鍵を名前を変えて転送する
    • 複数端末からアクセスする場合はauthorized_keysに公開鍵を追加するらしい
$ scp ~/.ssh/id_rsa.pub murakaming@:~/.ssh/authorized_keys

セキュリティ設定

  • 設定ファイルを開く
# vi /etc/ssh/sshd_config
  • ポート番号変更
Port 
  • ルートログイン禁止
PermitRootLogin no
  • パスワードでの認証なし(公開鍵認証のみ)
PasswordAuthentication no
UsePAM no
  • 設定が終わったのでsshdを再起動
# /etc/init.d/sshd restart

Macから入ってみる

  • パスワードは鍵作った時に設定したもの
$ ssh murakaming@ -p 
  • コングラッチレーション・・・!

sudoを使えるようにする

  • 次のコマンドがroot権限じゃないと駄目みたいなので一旦rootへ
$ su -
  • sudoコマンドのための設定ファイルを開く
    • "%wheel ALL=(ALL) ALL"という行のコメントを外す
      • これでwheelに所属しているユーザがsudoできる
# visudo
  • murakamingに戻る
# exit
  • sudoを試してみる
    • パスワードはmurakamingのものを入力
$ sudo visudo

お疲れさまでした

$ logout