さくらVPS申し込み〜SSHするまで
はじめに
- Linux知らない
- 開発環境作れない
- 気軽にアプリ出せるような場がない
というないないづくしな私ですがこの度さくらVPSを契約してみました。これで遊び倒して「昨日話してたアプリのアイデア面白かったから今日リリースしたわー、とりま自分の仮想専用サーバーでリリースしたわー」とか、「ローカルにしか開発環境ないとすぐにリリースできなくない?」とか、「俺が昨日自分の仮想専用サーバーのセキュリティ高めた話ってもうしたっけ?」とか言えるようになりますね。2週間の無料お試し期間もあってとてもいいと思います。以下作業ログ。
参考
申し込み
- 申し込み完了
- 仮登録完了メール受信
- メールにあるURLでコントロールパネルへ行きIPとパスワード打ち込んでログイン
# cat /etc/redhat-release CentOS release 6.2 (Final)
ユーザを作る
- コンパネの[仮想サーバ操作]から[起動]ボタンを押す
- ステータスが稼働中になる
- コンパネの[リモートコントロール]を押す
- CentOSがカタカタと動いたあと、ログインを求められる
- rootで入り、パスワードを求められるのでコンパネにログインしたのと同じパスワードを入力
- ログイン
- rootは権限が強すぎて怖いのでそうでもない権限をもつユーザを作成
- ユーザのホームディレクトリもこれで作成される
# useradd murakaming
- パスワード設定
- passwdコマンドは予測されやすかったり短かったりするパスワードに警告出してくれる
# passwd murakaming
# 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から鍵を用意(公開鍵暗号方式)
- ターミナルで鍵生成
$ ssh-keygen -t rsa
- 読み書きできるようパーミッション設定
- パーミッションについてはLinuxの教科書―ホントに読んでほしいroot入門講座 (IDGムックシリーズ)の46pを見た
$ 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
- sshの認証を公開鍵認証だけにしたい時にUsePAMの設定をどうすべきか: よしなしごと
- ChallengeResponseAuthenticationはデフォルトでnoだったけど一応
UsePAM no
- 設定が終わったのでsshdを再起動
# /etc/init.d/sshd restart
sudoを使えるようにする
- 次のコマンドがroot権限じゃないと駄目みたいなので一旦rootへ
$ su -
- sudoコマンドのための設定ファイルを開く
- "%wheel ALL=(ALL) ALL"という行のコメントを外す
- これでwheelに所属しているユーザがsudoできる
- "%wheel ALL=(ALL) ALL"という行のコメントを外す
# visudo
- murakamingに戻る
# exit
- sudoを試してみる
- パスワードはmurakamingのものを入力
$ sudo visudo
お疲れさまでした
$ logout