SSHを公開鍵認証で接続する

2020年8月21日  2020年10月3日 
今までSSH接続をパスワード認証で行っていたのですが、セキュリティ的に良くないということなので、公開鍵認証に変更しました。これから何回かやることになる作業なので、作業手順をメモしておきます。

SSHを公開鍵認証で接続する


公開鍵を作成する

まずはクライアントPCで公開鍵と秘密鍵を作成します。

1.ターミナルを起動して、下記のコマンドを実行します。

ssh-keygen

2.保存するパスを入力して、「Enter」を押します。
デフォルトのパスは「/home/<user>/.ssh」で、変更しなくて良い場合は未入力のまま「Enter」を押します。

3.パスフレーズを入力して、「Enter」を押します。

4.同じパスフレーズを再度入力して、「Enter」を押します。

以上で公開鍵と秘密鍵が作成されました。

公開鍵をサーバーにコピーする

次は作成した公開鍵をサーバーにコピーします。

1.ターミナルを起動して、下記のコマンドを実行します。hostnameは公開鍵をコピーするサーバーになります。

ssh-copy-id -i ~/.ssh/id_rsa.pub <hostname>

以上で公開鍵をサーバーにコピーすることができました。


これでSSHを公開鍵認証で接続することができるようになりました。
対象のクライアントPCでsshコマンドを実行すれば公開鍵認証が使われるようになります。

パスワード認証を禁止する

下記の作業は必須ではないのですが、セキュリティのためにサーバでSSHのパスワード認証を禁止にします。

1.サーバのターミナルを起動して、下記のコマンドを実行します。

sudo nano /etc/ssh/sshd_config

2.下記の設定を変更します。

# パスワード認証を禁止する
PasswordAuthentication no
# 公開鍵認証を許可する
PubkeyAuthentication yes
# rootユーザーでのログインを拒否する
PermitRootLogin no

3.下記のコマンドを実行して、設定の変更を反映します。

systemctl reload sshd

これでサーバーのセキュリティがより強固になりました。

環境

Ubuntu 18.04


ー記事をシェアするー
B!
タグ

コメント

このブログを検索

自己紹介

自分の写真
yayao
Unityを使って、モバイルゲームを作っています。
人気の投稿