SSHの設定まとめ(VPSにSSH接続する)
ssh-keygen で秘密鍵(id_rsa)と公開鍵(id_rsa.pub)を作成する。
鍵の名前は任意につけられるので-f オプションで覚えやすい名前にしておく。
ssh-keygen -t rsa -b 4096 -f sakura_rsa -C 'sakura'
- Cオプションはコメントをつけられる。
この場合、sakura_rsa(秘密鍵)とsakura_rsa.pub(公開鍵)が作成される。
sakura_rsa.pubの方をVPSサーバーにアップロードし、あらかじめホームディレクトリ~/に作成しておいた~/.sshに格納する。
scp -o PreferredAuthentications="password" -P 22 sakura_rsa.pub user@xxx.xxx.xxx.xxx:~/.ssh/
- Pオプションはポート番号指定。
- oオプションでパスワードでログインするという意味。
#VPSサーバー側 chmod 700 .ssh chmod 600 .ssh/sakura_rsa.pub
という権限にしておく。これをしないと接続できない。
#サーバー側の/etc/ssh/sshd_config PasswordAuthentication no PermitEmptyPasswords yes
としておくとパスワードなしでログインできるようになる。
うまくsshの設定ができないとき
ssh host -v
- v 処理の詳細を表示してくれるのでdebugしやすい。
Permission denied (publickey,gssapi-keyex,gssapi-with-mic).
とか出るときは、サーバー側のログを見てみる。
sudo tail /var/log/secure