根暗シアン

備忘録という名の予防線

さくらのVPS初期設定

さくらのサポート情報 にしたがって設定する

1. 契約〜ログイン

  • 画面にしたがってポチポチ
    1GB,HDD100GBのプランにした
    年間10,692円 + 初期費用1,620円

  • VPSコントロールパネルにログイン

    • とりあえず名前は適当につけて、起動
    • PINGが通ることを確認
  • ssh root@

    • パスワードはメールで送られてくる
  • アプリケーションのアップデート

# yum -y update
# yum -y upgrade

2. パスワード変更

# passwd
ユーザー root のパスワードを変更。
新しいパスワード:
新しいパスワードを再入力してください:

3. ユーザ追加

# useradd user
# passwd user

sudoを利用できるように設定する

# usermod -G wheel user 
# visudo

次の箇所のコメントアウトを外す

# Allows people in group wheel to run all commands
%wheel        ALL=(ALL)       ALL

4. SSH設定変更

  • デフォルトポート22のままだとアタックされやすいので変更する
# vi /etc/ssh/sshd_config
# Port 22
Port 10022
    :
# Authentication:
# rootでのログイン不可
PermitRootLogin no
    :
# パスワードなしでのログイン不可
PermitEmptyPasswords no
  • ここまで設定したら、sshdを再起動して反映させる
# service sshd restart

ここでexitして再ログインしようとしたら、"No route to host"のメッセージが出てsshログインできなくなった

ローカル
$ ssh -p 10022 user@xxx.xxx.xxx.xxx
ssh: connect to host xxx.xxx.xxx.xxx port 10022: No route to host

原因はサーバ側のiptablesの設定をしないままログアウトしてしまったため。
さくらのコントロールパネルを開いて、コンソールから6.の作業を実施

5. SSH鍵設定

  • クライアント作業
# 鍵ペア生成
$ ssh-keygen -t rsa -v
# ファイル、パスフレーズはデフォルトで作成
# 作ったらSCPでサーバに転送
$ scp -P 10022 ~/.ssh/id_rsa.pub user@xxx.xxx.xxx.xxx:/home/user/
  • サーバ作業
$ mkdir .ssh
$ chmod 700 .ssh
# 公開鍵を追加する(新規作成の場合は mv id_rsa.pub .ssh/authorized_keys でもいい)
$ cat id_rsa.pub >> .ssh/authorized_keys
$ chmod 600 .ssh/authorized_keys
$ sudo service sshd restart

6. ファイアウォールの設定

  • iptablesLinuxファイアウォールみたいなもの。許可・拒否する通信を設定する
  • わからないのでサイトの説明の通りに設定した
  • SSHのポートを変更した場合は必ず設定が必要
$ sudo iptables -A INPUT -p tcp --dport 10022 -j ACCEPT # (ssh)
$ sudo service iptables save
$ sudo service iptables restart