无法连接到AD服务器?

时间:2019-05-08 13:28:57

标签: windows powershell active-directory ansible exchange-server

我正在尝试从可访问的主服务器执行AD和Exchange命令,但是我收到以下错误消息。我可以在Windows服务器上本地成功执行这些命令

对于广告:

失败! => {“ changed”:true,“ cmd”:“ powershell.exe \”导入模块活动目录; get-aduser -Identity'testuser01'\“> aa.txt”,“ delta”:“ 0:00:01.796829 “,”结束“:” 2019-05-08 12:41:19.824130“,” msg“:”非零返回码“,” rc“:1,”开始“:” 2019-05-08 12:41 :18.027300“,” stderr“:” get-aduser:无法联系服务器。这可能是因为该服务器\ r \ n不存在,当前已关闭或没有Active Directory \ r \ nWeb服务运行。

对于Exchange:

失败! => {“已更改”:true,“ cmd”:“ Add-PSSnapin Microsoft.Exchange.Management.PowerShell.SnapIn;启用邮箱'testuser01'> c:/temp/aa.txt”,“ delta”:“ 0 :00:12.734039“,”结束“:” 2019-05-08 01:13:51.726514“,” msg“:”非零返回码“,” rc“:1,”开始“:” 2019-05- 08 01:13:38.992475“,” stderr“:” Active Directory操作失败。提供的\ r \ n'DEVAD \ admin'凭据无效。

代码部分:

对于广告:

- name: Mailbox Creation
  win_shell: "import-module activedirectory;get-aduser -identity 'testuser01'"

对于Exchange:

- name: Mailbox Creation
  win_shell: "Add-PSSnapin Microsoft.Exchange.Management.PowerShell.SnapIn;enable-mailbox 'testuser01' > c:/temp/aa.txt"

2 个答案:

答案 0 :(得分:0)

也许有人帮忙。

在使用kerberos时遇到同样的问题

ansible_winrm_transport: kerberos

需要启用授权证书,仅使用kerberos进行测试。

ansible_winrm_kerberos_delegation: yes

答案 1 :(得分:0)

无论出于何种原因,从远程 Exchange PowerShell 环境访问 Active Directory 都无法开箱即用,您必须生成一个新会话并在其中运行您的命令。

$PWord = ConvertTo-SecureString -String "{{ ansible_password }}" -AsPlainText -Force
$UserCredential = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList "{{ ansible_user }}", $PWord

$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri http://{{ inventory_hostname }}/PowerShell/ -Authentication Kerberos -Credential $UserCredential
Import-PSSession $Session -DisableNameChecking

后跟您的代码:

Add-PSSnapin Microsoft.Exchange.Management.PowerShell.SnapIn
...

并以:

Remove-PSSession $Session

相关文档: