Tera Termで鍵ペア(公開鍵・秘密鍵) を作成して、CentOSサーバーへ公開鍵認証方式のSSH接続するための設定を行います。

パスワード認証方式でのSSH接続はこちらです。
SSHクライアント「Tera Term」でパスワード認証によるリモート接続(windows → Linux)

鍵ペアの生成(公開鍵・秘密鍵)

Tera Termを起動後、メニューの「設定」⇒「SSH鍵生成」をクリックします。

鍵の種類「RSA」を選択、ビット数は「2048」以上を入力して「生成」をクリックします。

「鍵のパスフレーズ」は、忘れにくいパスワードを英数字で入力しましょう。
まずは「公開鍵の保存」をクリックします。

「id_rsa.pub(公開鍵) 」の保存先を決めます。
同様に先ほどの画面で「秘密鍵の保存」をクリックして、「id_rsa(秘密鍵) 」を保存します。

以上で、鍵ペア(公開鍵・秘密鍵)の生成ができました。

CentOSサーバーへ公開鍵を設置

通常通りまずは、パスワード認証方式でSSH接続を行います。
Tera Term起動後、「ユーザー名」と「パスワード」を入力してCentOSサーバーへ接続します。

パスワード認証方式でSSH接続しましたので、 先ほど生成した「id_rsa.pub(公開鍵) 」をトラッグ&ドロップして、SCPでファイル転送します。

「SCP」をクリックするとファイル転送完了です。
ファイル転送後は、「.ssh」ディレクトリを新規作成をして、「パーミッションの変更」⇒「公開鍵(id_rsa.pub )の名前変更と移動」を行います。

$ pwd
/home/centos7
$ ls
id_rsa.pub
$ mkdir .ssh
$ chmod 700 .ssh
$ mv id_rsa.pub .ssh/authorized_keys
$ chmod 600 .ssh/authorized_keys

CentoOSサーバー側に公開鍵(id_rsa.pub )の設置が完了しました。

公開鍵認証方式でSSH接続

Tera Term起動後、「ユーザー名」と「パスワード」を入力後に「RSA/DSA/ECDSA/ED25519鍵を使う」を選択して「秘密鍵」をクリックします。

先ほど保存した「秘密鍵(id_rsa)」を指定します。

この画面が表示されると、無事に公開鍵認証方式でSSH接続ができました。

今後は「公開鍵認証方式」でSSH接続をしますので、「パスワード認証方式」での接続を禁止する設定を行いセキュリティを高めます。

sshd_configファイルを編集

$ su -
# vi /etc/ssh/sshd_config

※ rootログインを無効化
PermitRootLogin no

※空パスワードを使用を無効化
PermitEmptyPasswords no

※パスワード認証を無効化
PasswordAuthentication no

※エージェント転送を無効化
AllowAgentForwarding no

※TCP転送を無効化
AllowTcpForwarding no

※sshd.service再起動
# systemctl restart sshd.service

設定は以上です。
最後にTera Termから「パスワード認証方式」は接続不可、「公開鍵認証方式」は接続可能か確認しましょう。

コメントを残す