Tôi có thể bỏ qua kiểm tra khóa máy chủ trong Ansible không?


19

Tôi đang chạy một Playbook Ansible với một bản hack tinh tế để hoạt động trên một cổng chuyển tiếp cổng tùy ý (vì vậy tôi có thể sử dụng một máy không có quyền truy cập trực tiếp vào nhiều máy).

Tôi đã có một nhiệm vụ trước để thay đổi ansible_portbiến, vì vậy sau đó khi tôi bắt đầu chạy các nhiệm vụ và vai trò thực sự của mình, tôi được nhắc chấp nhận các khóa máy chủ cho localhost trên một số cổng ngẫu nhiên.

Vì tôi ngây thơ và không quan tâm đến bảo mật, tôi muốn ssh tự động chấp nhận và chuyển hướng đến /dev/null(hoặc một tệp khác để đăng nhập).

Điều này có thể không?


Bạn có thể làm điều đó thông qua các tùy chọn ssh mà bạn chuyển đến cấu hình ansible.
Jiri Klouda

Câu trả lời:


26

Điều này thường được thực hiện bằng cách đặt giá trị sau trong ansible.cfg:

[defaults]
host_key_checking = False

Nếu bạn không muốn sửa đổi, ansible.cfgbạn có thể đặt biến môi trường như sau:

export ANSIBLE_HOST_KEY_CHECKING=False

Nguồn: http://docs.ansible.com/ansible/intro_getting_started.html#host-key-checking


Tôi đang sử dụng MacOS và cài đặt host_key_checking = Sai nhưng tôi vẫn nhận được "CẢNH BÁO: POSSIBLE DNS SPOOFING DETECTED!". Tôi đã sửa lỗi này sau khi tôi nhận ra rằng tôi đã kết nối với máy chủ đích cùng tên trước đó và sau đó xây dựng lại nó để có một khóa cũ trong ./ssh/ Unknown_hosts.
Chad Juliano

21

Trong ansible.cfgtệp của bạn, bạn cần thêm dòng sau:

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

Bạn cũng có thể thêm các tùy chọn đó vào máy của mình ~/.ssh/configtrên mọi máy mà bạn chạy nó như thế này:

Host *
   StrictHostKeyChecking no
   UserKnownHostsFile=/dev/null

1
Điều này nên làm việc. Ngoài ra, hãy xem tệp ansible.cfg để biết thêm cài đặt :)
Dawny33

+1 cho sự bổ sung của Dawny, bởi vì những người sử dụng Paramiko sẽ cần sử dụng ansible.cfg
Woodland Hunter

1
Có cách nào thích hợp để đặt nó bên trong playbook không? Tôi đã thử ansible_ssh_common_argsansible_ssh_extra_argsnó không ghi đè lên những gì tôi đã có trong ansible.cfg. Tôi đã có một ansible.cfg mà tôi sử dụng cho mọi thứ khác và thà chỉ ghi đè các tham số đó cho loại playbook này hơn là sao chép nó chỉ để thực hiện thay đổi đó.
Peter Turner

3
Tôi không thể nói với các biến đó, Peter, nhưng bạn có thể đặt một ansible.cfg đã sửa đổi trong thư mục với playbook này và nó sẽ được ưu tiên.
Thợ săn rừng

1
UserKnownhostsFile = / dev / null hoàn toàn phá vỡ bảo mật ssh
mmv-ru
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.