Linux:如何获取连接到域的所有主机的列表?(CentOS 6.5)

Dob*_*obi 2 linux ldap hosts

我想打印连接到域的所有主机的列表.

我正在寻找一个或多或少与Powershell中的那个一样的命令,但对于Linux:

Get-ADComputer -Filter * | ForEach-Object {$_.Name}
Run Code Online (Sandbox Code Playgroud)

所以,我想要做的是获取一个包含域中所有主机的列表,然后将其与已经使用Nagios监控的所有主机进行比较.

将在其上执行命令的计算机是Nagios服务器(不在DC本身上).

nos*_*nos 6

没有方便的包装器与Active Directory集成作为powershell中的cmdlet.但是,Active Directory是LDAP服务器,您可以使用该ldapsearch工具提取信息,此查询将获取Active Directory域中的所有注册计算机:

ldapsearch -LLL  -H ldap://ad.ourdomain.local  -x  -D 'OURDOMAIN\user' -w 'thepassword' -b 'dc=ourdomain,dc=local' 'objectClass=computer' name
Run Code Online (Sandbox Code Playgroud)
  • ad.ourdomain.local 是活动目录域控制器的主机名或IP地址.

  • OURDOMAIN\user是您的域名和现有用户名(例如ACME\Jon).即登录到Windows机器上的域帐户时使用的用户名

  • thepassword 是上述用户Jon的密码

  • dc=OURDOMAIN,dc=local是顶级LDAP DN,例如dc=acme,dc=local,它可能是dc = acme,dc = com`或其他东西.除了从ADExplorer中提取信息之外,我不知道一个简单的方法来解决它