概要
Ansibleでコントロールノードがターゲットノードを操作する際にSSH接続が必要
そのための環境整備を行う
環境
手順
SSHキー作成コマンドを実行し、鍵ペアを作成する
参考:SSH キーの管理: SSH キーを作成する (ssh-keygen)
ssh-keygen -t ed25519
-t オプション・・作成する鍵の暗号化形式を指定する
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 オプション・・コピーする鍵ファイルを指定する
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
設定前
設定後
パスワード認証が接続拒否されるようになった
コメント