AlmalinuxでSSH公開鍵認証を使用する

概要

Ansibleでコントロールノードがターゲットノードを操作する際にSSH接続が必要

そのための環境整備を行う

環境

手順

SSHキー作成コマンドを実行し、鍵ペアを作成する

参考:SSH キーの管理: SSH キーを作成する (ssh-keygen)

ssh-keygen -t ed25519

-t オプション・・作成する鍵の暗号化形式を指定する

【 ssh-keygen 】コマンド

Enter file in which to save the key (/home/test_user/.ssh/id_ed25519): ←キーを保存する場所

Enter passphrase (empty for no passphrase): ←公開鍵認証でパスフレーズを設定する時に入力する、今回はAnsibleで使用するため何も入力せずEnter

id_ed25519 ← 秘密鍵

id_ed25519.pub ← 公開鍵

が作成された

ターゲットノードへ公開鍵を登録する

ssh-copy-id -i ~/.ssh/id_ed25519.pub ansible@192.168.3.8

-i オプション・・コピーする鍵ファイルを指定する

【 ssh-copy-id 】コマンド

Are you sure you want to continue connecting (yes/no/[fingerprint])? yes ← はじめて相手ホストにssh接続する際に聞かれる known_hostsファイルにホスト鍵が登録され2回目以降は聞かれない

ansible@192.168.3.8’s password: ←相手ホストのansibleユーザーのパスワードを入力する

ターゲットノード「ansible@192.168.3.8」の状況

.ssh/authorized_keysファイルにid_ed25519.pubの内容が登録された

ターゲットノードへssh接続する

ssh ansible@192.168.3.8

ssh接続できるようになった

ターゲットノードへのパスワード認証を無効にする

ターゲットノードのsshd_configファイルを編集し、パスワード認証を無効にする

vi /etc/ssh/sshd_config

70行目の「PasswordAuthentication yes」を 「PasswordAuthentication no」に書き換えて保存する

sshdサービスを再起動し、設定を反映する

systemctl restart sshd

設定前

設定後

パスワード認証が接続拒否されるようになった

コメント

タイトルとURLをコピーしました