さくらのVPSでのSSHの設定
1.鍵交換方式でのログインの設定
まず、SSHでログインする時に、ユーザーID/パスワードは使用せずに、鍵交換方式でログイン出来るように設定します。
ssh-keygen -t rsa
と入力して鍵を作成します。
Enter passphrase (empty for no passphrase): Enter same passphrase again:
この2行はパスワードを入力しても、入力しなくても大丈夫です。
パスワードを入力しなかった場合はパスワード無しで鍵が作成されます。
上記2行のパスワード設定以外は全て、デフォルトで、Enterで大丈夫です。
コマンドが上手く完了すると
ホームディレクトリ以下に「.ssh/id_rsa」と「.ssh/id_rsa.pub」というファイルが作成されます。
「.ssh/id_rsa」(秘密鍵)
これは、秘密鍵でサーバ上に配置せず、クライアント側に置いておきます。
クライアントがMacやLinuxなら「ホームディレクトリ/.ssh/」にコピーして、元ファイルは削除します。
コピーしたクライアント側のファイルの権限を「chmod」を使用して変更します。
chmod 600 ~/.ssh/id_rsa
鍵ファイルの権限を正しく設定しないとSSHエラーでログイン出来ない事がありますし、セキュリティの観点からも良くないので変更しておいて下さい。
Windowsの場合は、「Linuxでsshの鍵を作成するには」などを参考にSSHクライアント「putty」で使用して下さい。
クライアント側にコピーしたらサーバ上にファイルを残しておくとセキュリティ上良くないので削除しましょう。
「.ssh/id_rsa.pub」(公開鍵)
これは、サーバ上に残しておきます。
以下のコマンドで「~/.ssh/authorized_keys」を作成します。
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
こちらも 以下のコマンドで権限を変更しておきます。
chmod 600 ~/.ssh/authorized_keys
鍵は、クライアント、サーバどちらでも作成できますので好きな方で作成して下さい。
今回はサーバ上で作成していますが私は、クライアント側で作成して公開鍵をサーバ上にアップロードして使用しています。
クライアントの設定
クライアント側に「~/.ssh/config」を作成します。
Host * IdentityFile ~/.ssh/id_rsa ForwardAgent yes TCPKeepAlive yes ServerAliveInterval 15 ServerAliveCountMax 3
IdentityFile:秘密鍵のパスを設定します。
それ以外の設定は、私がいつも使ってる設定です。
設定内容の詳しい内容がしりたい場合はこちらをご覧下さい
ここまで設定ができたら、ユーザーIDとパスワードでなく
鍵と鍵のパスワードでサーバにログイン出来るようになっているはずなので確認して下さい。
サーバ側の設定
セキュリティを高める為に、SSHはユーザーIDパスワードでのログインは許さずに、
鍵による認証のみを認めるように設定を変更します。
「/etc/ssh/sshd_config」を編集します。(root権限が必要です)
デフォルトでは
PasswordAuthentication yes
このようになっている箇所があるので、
PasswordAuthentication no
に変更します。
保存したら、sshdサーバを再起動します。
/etc/init.d/sshd restart
これで、SSHに関する設定が終了しました。
次は必要な個人設定をします。
関連する記事:
- さくらのVPSでのユーザーの作成
- さくらのVPSにmysqlのインストールと設定
- さくらのVPSにOS再インストール
- SSHのProxyCommandを使用すると踏み台サーバ経由のSSHが楽になる
- さくらのVPSにMongoDBをインストール
コメント 0