, поэтому я проверил это в нескольких разных вариантах. У меня есть лаборатория с серверами Windows 2008 R2 и RHEL6 и Python2.6. Я могу использовать как средство для удаленного доступа к серверу Windows и выполнять ping (я выполнил все инструкции о том, как это сделать). У меня проблема с невозможностью сделать это с Rhel 7 и python2.7, однако я не уверен, что разница в версиях python - это то, что меня останавливает.пытается подключиться к Windows winRM, используя kerberos winrm
Я постоянно получаю эту ошибку hostname_override ...
[[email protected]]$ klist -a
Ticket cache: FILE:/tmp/krb5cc_37575
Default principal: [email protected]
Valid starting Expires Service principal
02/10/2017 11:30:32 02/10/2017 21:30:32 krbtgt/[email protected]
renew until 02/10/2017 21:30:32
Addresses: (none)
[[email protected]]$ python
Python 2.7.5 (default, Oct 11 2015, 17:47:16)
[GCC 4.8.3 20140911 (Red Hat 4.8.3-9)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import winrm
>>> s = winrm.Session('WINDOWSBOX', auth=('[email protected]', 'mypassword'), transport='kerberos')
>>> r = s.run_cmd('ipconfig', ['/all'])
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python2.7/site-packages/winrm/__init__.py", line 37, in run_cmd
shell_id = self.protocol.open_shell()
File "/usr/lib/python2.7/site-packages/winrm/protocol.py", line 132, in open_shell
res = self.send_message(xmltodict.unparse(req))
File "/usr/lib/python2.7/site-packages/winrm/protocol.py", line 207, in send_message
return self.transport.send_message(message)
File "/usr/lib/python2.7/site-packages/winrm/transport.py", line 173, in send_message
self.session = self.build_session()
File "/usr/lib/python2.7/site-packages/winrm/transport.py", line 140, in build_session
sanitize_mutual_error_response=False)
TypeError: __init__() got an unexpected keyword argument 'hostname_override'
С анзибль это выглядит так, та же ошибка hostname_override:
mywinserver.mydomain.com> WINRM CONNECT: transport=ssl endpoint=https://mywinserver.mydomain.com:5986/wsman
<mywinserver.mydomain.com> WINRM CONNECTION ERROR: the specified credentials were rejected by the server
Traceback (most recent call last):
File "/usr/lib/python2.7/site-packages/ansible/plugins/connection/winrm.py", line 154, in _winrm_connect
self.shell_id = protocol.open_shell(codepage=65001) # UTF-8
File "/usr/lib/python2.7/site-packages/winrm/protocol.py", line 132, in open_shell
res = self.send_message(xmltodict.unparse(req))
File "/usr/lib/python2.7/site-packages/winrm/protocol.py", line 207, in send_message
return self.transport.send_message(message)
File "/usr/lib/python2.7/site-packages/winrm/transport.py", line 190, in send_message
raise InvalidCredentialsError("the specified credentials were rejected by the server")
InvalidCredentialsError: the specified credentials were rejected by the server
mywinserver.mydomain.com | UNREACHABLE! => {
"changed": false,
"msg": "kerberos: __init__() got an unexpected keyword argument 'hostname_override', ssl: the specified credentials were rejected by the server",
"unreachable": true
}
Позвольте мне знать, что еще я могу попробовать, а также на на сервере Windows 2008R2 я вижу, что окно Linux пытается подключиться в журнале событий безопасности. Не уверен, что еще происходит. Опять же, это работает в RHEL6 на двух разных серверах Windows 2008 R2.
Может кто-нибудь прокомментировать, что означает hostname_override? Я могу полностью разрешить все в DNS, мой Linux-сервер находится в домене как мои серверы Windows. У меня есть полные разрешения на всех и удаленные ко всему ... с чем связан этот сбой? –