さくらVPS構築 No.3 秘密鍵作成 認証設定

Server

SSH接続用鍵作成

VPSのSSH接続にパスワード認証ではなく秘密鍵認証を使用できるようにします。

まずローカル(自分のPC)で秘密鍵作成

自分のはWindows11なのでコマンドプロンプトを使ってます

C:\Users\user名> ssh-keygen

passphraseを設定してくれと言われるので適当に入力します

これで自分のPCのuser名のフォルダに.sshというフォルダができて、中に秘密鍵と公開鍵のファイルが作成されます

そして公開鍵をサーバーに保存します

方法は色々ありますが、今回はそのままコマンドプロンプトでscpコマンドを使用します

C:\Users\use名> scp .ssh/id_rsa.pub サーバーのユーザー名@IPアドレス:~/

VPSサーバーへログインします

まずはフォルダ(サーバーに公開鍵の置き場所)作成

mkdir ~/.ssh

公開鍵の内容を .ssh/authorized_keys へ出力

cat id_rsa.pub > ~/.ssh/authorized_keys

ファイルの権限設定、権限の詳細はchmodコマンドの数字による記述方法を調べてください

chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

最初にSCPコマンドでアップロードした公開鍵ファイルを削除します

これで鍵認証でSSH接続できるようになります

次に鍵認証でしかログインできないように設定します

サーバーで /etc/ssh/sshd_config ファイルを編集する

sudo nano /etc/ssh/sshd_config

次の文章を追加します

PermitRootLogin no

PasswordAuthentication no

追加する場所は

Include /etc/ssh/sshd config.d/*.conf

の上くらいがいいです。上のほうの設定が優先されるので

ちなみにnanoの編集の保存の方法は Ctrl + Xで終了、Yで保存、Enterでnanoを閉じます

最後にsshを再起動

sudo systemctl restart ssh

これでパスワード認証のサーバーログインが禁止されました

コメント