일부 Windows 호스트에 대해 실행하고 싶은 일부 장난 재생 기능이 있습니다. 필자는 WinRM을 설정하기위한 다양한 Unsible 가이드를 따라 갔지만 정상적으로 작동했지만 기본 설정은 매우 안전하지 않으므로 더 많은 준비가 필요합니다. 그러나이를 수행하는 방법은 매우 희소합니다. 오히려/5986 HTTPS에 유효한 인증서를 사용하도록 제공된 ConfigureRemotingForAnsible.ps1 스크립트를 Windows 용 : WinRM HTTPS 설정
- : 내 Windows 상자에서
: 지금까지 나는 다음과 같은 짓을했는지 위의 스크립트에서 생성 한 자체 서명 된 인증서보다
- WinRM의 대상 컴퓨터에서 Kerberos 및 CredSSP 인증 방법을 사용합니다. 내 역할 단계 중 일부는 CredSSP가 안정적으로 작동하도록 요구합니다.
지금까지 그렇게 좋았습니다. Windows 측은 제대로 작동하는 것 같습니다. 그러나, 연결하는 것을 얻는 것은 악몽을 증명하고 있습니다. 나는 Anabilities가 그것을 추가 함에도 불구하고 표적에 대한 HTTPS 인증서를 믿을 수있는 방법을 알아낼 수 없다. 내 CentOS의 7 '푸시 상자'에 나는 다음과 같은 짓을했는지 :
- 이 requests_kerberos 및 requests_credssp 모듈을 Ansible를 설치하고 pywinrm와 핍
- 추가 모두 내 CA 인증서의/etc/PKI/TLS/인증서 표시 및/etc
- 이 다음에 내 인벤토리를 설정/PKI/CA-CERT : 인증 유효성 검사
ansible_password=Password1
ansible_port=5986
ansible_connection=winrm
ansible_winrm_scheme=https
/#ansible_winrm_server_cert_validation=ignore
ansible_winrm_transport=credssp
가 연결되어 다음과 같은 오류와 함께 실패합니다
fatal: [host.domain.com]:
UNREACHABLE! => {
"changed": false,
"msg": "credssp: HTTPSConnectionPool(host='host.domain.com', port=5986): Max retries exceeded with url: /wsman (Caused by SSLError(SSLError(\"bad handshake: Error([('SSL routines', 'tls_process_server_certificate', 'certificate verify failed')],)\",),))",
"unreachable": true}
인증서 유효성 검사가 해제되어 있으면 제대로 작동합니다.
그럼 내 질문 : 어떻게 CA CA cert를 신뢰할 수 있습니까? ansible 제어 호스트
있는지 확인 인증서를 찾을 것으로 기대하고 당신이 볼이 방법 NTLM을 사용할 수 없으며 안전하지 않습니다. HTTPS를 제대로 확인해야합니다. 그렇지 않으면 인증서 유효성 검사를 무시하면 문제가 없습니다. 솔직히이 종류의 것은 표준 문서에없는 것이 기괴하다고 생각합니다. – Matt
명확성을 위해 SSL (https)은 인증서를 사용하지만 Kerberos는 인증서를 사용하지 않습니다. SSL을 사용하는 경우 인증서는 제어 노드가 아닌 원격 Windows 상자에 설치해야합니다. [내 작업은 다음과 같습니다.] (https://groups.google.com/forum/#!searchin/ansible-project/skinnedknuckles%7Csort:date/ansible-project/3uSUemHNGsY/odRqM_E5BQAJ) 내 Windows 박스에서 Anipal 작업을 할 수 있습니다. – skinnedKnuckles