1

を使用して Windows インスタンスに ping を実行しようとするとansible windows -i hosts.ini -m win_ping、次のエラーが発生しました。

54.197.197.91 | UNREACHABLE! => {
"changed": false,
"msg": "plaintext: the specified credentials were rejected by the server",
"unreachable": true
}

私のhosts.iniファイルは次のようになります。

[windows]
54.197.197.91

[windows:vars]
ansible_ssh_user=Administrator
ansible_ssh_pass=MyPassword123!
ansible_ssh_port=5985
ansible_connection=winrm

それを解決するために、私はこれを行いました:

ansible-vault create secret.yml

そこに私のパスワードを次のように入力しました:

win_initial_password: MyPassword123!

次に、私のhosts.iniファイルは次のようになりました。

[windows]
54.197.197.91

[windows:vars]
ansible_ssh_user=Administrator
ansible_ssh_pass={{ win_initial_password }}
ansible_ssh_port=5985
ansible_connection=winrm

ping を実行しようとすると、次のエラーが表示されました。

54.197.197.91 | FAILED! => {
"failed": true,
"msg": "the field 'password' has an invalid value, which appears to include a variable that is undefined. The error was: 'win_initial_password' is undefined"
}

どこが間違っていますか?

4

6 に答える 6

6

これらを変更して解決しました:

ansible_ssh_port=5986
ansible_winrm_server_cert_validation=ignore

これはうまくいきました。

于 2016-08-21T11:17:07.353 に答える
5

元の投稿に似たAnsibleの例に従っていたので、受け入れられた答えはうまくいきませんでした。

注: これはプレーン テキストでパスワードを送信するため、本番環境では使用しないでください

ターゲット マシンで、管理者権限で PowerShell を実行し、次のコマンドを入力します。

Set-Item -Path WSMan:\localhost\Service\Auth\Basic -Value $true winrm set winrm/config/service '@{AllowUnencrypted="true"}'

また、必要なポート (TCP/5985、TCP/5986) を許可するようにファイアウォールが正しく構成されていることを確認します。

ソース:

http://docs.ansible.com/ansible/latest/user_guide/windows_winrm.html#authentication-options https://github.com/diyan/pywinrm/issues/114

于 2018-05-15T17:39:30.480 に答える