Bisakah saya memintas pemeriksaan kunci host di Ansible?

19

Saya sedang menjalankan buku pedoman yang Mungkin dengan hack halus untuk bekerja pada port forwarded port sewenang-wenang (jadi saya dapat menggunakan satu mesin tanpa akses langsung ke banyak mesin).

Saya punya tugas awal untuk mengubah ansible_portvariabel, jadi ketika saya mulai menjalankan tugas dan peran saya yang sebenarnya, saya diminta untuk menerima host host untuk localhost pada beberapa port acak.

Karena saya naif dan tidak peduli dengan keamanan, saya ingin ssh menerima dan mengalihkan secara otomatis ke /dev/null(atau file lain untuk masuk).

Apakah ini mungkin?

Peter Turner
sumber
Anda dapat melakukannya melalui opsi ssh yang Anda berikan ke konfigurasi yang dimungkinkan.
Jiri Klouda

Jawaban:

26

Ini biasanya dilakukan dengan menetapkan nilai berikut di ansible.cfg:

[defaults]
host_key_checking = False

Jika Anda tidak ingin memodifikasi, ansible.cfgAnda dapat mengatur variabel lingkungan seperti:

export ANSIBLE_HOST_KEY_CHECKING=False

Sumber: http://docs.ansible.com/ansible/intro_getting_started.html#host-key-checking

Zlemini
sumber
Saya menggunakan MacOS dan pengaturan host_key_checking = Salah tetapi saya masih mendapat "PERINGATAN: MUNGKIN DNS SPOOFING DETECTED!". Saya memperbaikinya setelah saya menyadari bahwa saya terhubung ke host target dengan nama yang sama sebelumnya dan kemudian membangunnya kembali sehingga ada kunci lama di ./ssh/known_hosts.
Chad Juliano
21

Di ansible.cfgfile Anda, Anda perlu menambahkan baris berikut:

ssh_args = -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no

Anda juga bisa menambahkan opsi-opsi itu di ~/.ssh/configdalam setiap mesin yang Anda gunakan untuk menjalankannya seperti ini:

Host *
   StrictHostKeyChecking no
   UserKnownHostsFile=/dev/null
Jiri Klouda
sumber
1
Ini seharusnya bekerja. Juga, lihat file ansible.cfg untuk pengaturan lebih lanjut :)
Dawny33
+1 untuk tambahan Dawny, karena mereka yang menggunakan Paramiko perlu menggunakan ansible.cfg
Woodland Hunter
1
Apakah ada cara yang tepat untuk mengatur itu di dalam buku pedoman? Saya sudah mencoba ansible_ssh_common_argsdan ansible_ssh_extra_argsdan itu tidak menimpa apa yang saya dapatkan di ansible.cfg. Saya punya ansible.cfg yang saya gunakan untuk yang lainnya dan lebih baik hanya menimpa parameter tersebut untuk jenis buku pedoman daripada menyalinnya hanya untuk membuat perubahan itu.
Peter Turner
3
Saya tidak dapat berbicara dengan variabel-variabel tersebut, Peter, tetapi Anda dapat memasukkan ansible.cfg yang dimodifikasi di direktori dengan buku pedoman ini, dan itu akan diutamakan.
Woodland Hunter
1
UserKnownHostsFile = / dev / null benar-benar memecah keamanan ssh
mmv-ru