クライアント用に秘密鍵、サーバー用に公開鍵を作成し、鍵ペアによる認証でログインできるようにします
1.鍵ペア作成
OpenSSH 使って Linux サーバに接続するユーザの公開鍵と秘密鍵のペアを作成します。
鍵ペアの作成は ssh-keygen をを使います。
公開鍵と秘密鍵のペアの作成はリモートログインするユーザ権限で実行します。
作成先・ファイル名を指定しなければ、 /home/(ユーザ名)/.ssh/ に id_ecdsa, id_ecdsa.pub が作成される。 途中、鍵用のパスワードも入力する。
鍵ペア作成
1 |
# su - suse |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
suse@Lepard:~> ssh-keygen -t ecdsa Generating public/private ecdsa key pair. Enter file in which to save the key (/home/suse/.ssh/id_ecdsa): 空エンター Created directory '/home/suse/.ssh'. Enter passphrase (empty for no passphrase): 任意のパスワード Enter same passphrase again: 再度パスワード Your identification has been saved in /home/suse/.ssh/id_ecdsa Your public key has been saved in /home/suse/.ssh/id_ecdsa.pub The key fingerprint is: SHA256:njRHwWiZLd3e7cmiZDbipHa62zIpWtuNCm0S4pYeAQ4 suse@Lepard The key's randomart image is: +---[ECDSA 256]---+ | B.. | | * +.. | |E . ... . . | |+ . . . .| | + . S . ...| |. + o o * = . o.| | = o + B = o . | |o . =.o*+o . | | . ..o+*Bo | +----[SHA256]-----+ |
1 2 3 4 |
suse@Lepard:~> ll ~/.ssh total 8 -rw------- 1 suse users 557 Sep 9 21:58 id_ecdsa -rw-r--r-- 1 suse users 173 Sep 9 21:58 id_ecdsa.pub |
1 2 |
suse@Lepard:~>cat ~/.ssh/id_ecdsa.pub >> ~/.ssh/authorized_keys suse@Lepard:~>chmod 600 ~/.ssh/authorized_keys |
winSCPを起動する
New Site クリック
Host name : サーバーIPアドレス
Port number : SSHポート番号
User name : ログインユーザー名
Password : 上記ユーザーのパスワード
Save クリック
OK クリック
OK クリック
2. SSH 設定の編集
2.1 設定ファイルの編集
なお、鍵認証にした場合、以下のように SSH サーバー側でパスワード認証を禁止すると、よりセキュアな環境とすることができます。今度は一般ユーザではなく、 su - で rootになり行う。
1 2 3 4 5 |
# vi /etc/ssh/sshd_config # 58, 62行目:コメント解除してパスワード認証不可に変更 PasswordAuthentication no ChallengeResponseAuthentication no |
1 |
# systemctl restart sshd.service |
2.2 Tera Termで接続方法
TeraTermを開き「File」メニューから「New Connection」をクリック
Host : サーバーIPアドレス TCP port : SSHポート番号
OK クリック
User name : ログインユーザー名
Passphrase : 秘密鍵id_ecdsaを作成時に設定したパスワード
「Use RSA/DSA/ECDSA/ED25519 key to log in」の「Private key file:」には先ほどWindowsに保存した
「id_ecdsa」を設定し、「OK」をクリック
2.3 PuTTYgen を使った秘密鍵の作成
Winscpを起動しツールからputtygen.exe を起動する
Loadをクリック[ ファイルを開くダイアログ ] が開くのでファイルの種類を [ All Files (*.*) ] に変更して Linux サーバから転送した秘密鍵 id_ecdsa を読み込みます。
「Save private key」をクリックする ↓
Windows側に先ほど保存した「id_ecdsa」と同じところに拡張子「.ppk」として「id_ecdsa.ppk」の名称で保存
該当サーバーを確認の上、Save クリック
Edit をクリック
Advabced...をクリック
「Authentication」メニューを開き、「Private key file」に先ほどWindowsに保存した「id_ecdsa.ppk」を指定する
Save の後、「Login」クリック
パスワードの欄には、最初に作成した公開鍵の課程で定義したパワードを入力する
ユーザーのログインパスワードではありません