ansibleコマンド実行時にHost Key checkingのエラーになった場合の対処法
ansibleでリモートのサーバへパスワード認証で接続する際、初めて接続するサーバの場合などに以下のような接続エラーとなることがあります。
Using a SSH password instead of a key is not possible because Host Key checking is enabled and sshpass does not support this. Please add this host’s fingerprint to your known_hosts file to manage this host.
これは、接続元ホストの~/.ssh/known_hostsに接続先ホストのfingerprintが無い場合や、接続先ホストのfingerprintが変わった場合に表示されます。
目次
対処法
システム共通の設定ファイルをansibleコマンド実行するカレントディレクトリにコピーします。
$ cp /etc/ansible/ansible.cfg .
コピーしてきたansible.cfgを編集します。
$ vi ./ansible.cfg .
62行目あたりにある、host_key_checking = Falseの行のコメントアウトを解除します。
コピー元との差分はこんな感じです。
$ diff /etc/ansible/ansible.cfg ./ansible.cfg
62c62
< #host_key_checking = False
---
> host_key_checking = False
これで接続エラーが回避できます。めでたしめでたし。
-
前の記事
ansibleコマンド実行時にselinuxのエラーとなった時の対処法 2019.07.20
-
次の記事
ansibleコマンドでローカルのファイルをリモートへ配布する方法 2019.07.21
コメントを書く
コメントを投稿するにはログインしてください。