无法从远程服务器访问Active Directory域控制器

本文关键字:Active Directory 域控 控制器 访问 服务器 | 更新日期: 2023-09-27 18:27:11

我对LDAP和Active Directory集成部分非常陌生。尽管我成功地将本地计算机配置为访问Active Directory域控制器,但当我将其部署在我们的一台服务器上时,无论是通过域的IP地址还是域名,都无法访问它。

我的网站使用ASP.NET C#。

它得到了这个错误:

指定的域不存在或无法联系。

我写的访问AD的方法在这里:

private SearchResultCollection sResults { get; set; }
sResults = null;
public void SearchByUsername(string username)
{
   try
   {
       // initiate a directory entry
       private const string ldapPath = "LDAP://192.168.0.190/OU=Domain   Users,DC=mydomain,DC=net"                
       dEntry = new DirectoryEntry(ldapPath);
       dSearcher = new DirectorySearcher(dEntry);
       dSearcher.Filter = "(&(objectClass=user)(sAMAccountname= " + username +  "))";
       performSearch();
       getValues();
    }
    catch (Exception)
    {
        throw;
    }
}
private void performSearch()
{
    // perform search in Active Directory
    sResults = dSearcher.FindAll();
}
private void getValues()
{
    // loop through results of search
    foreach (SearchResult sResult in sResults)
    {
        Employee emp = new Employee();
        emp.CN = getProperty(sResult, "cn");
        emp.FirstName = getProperty(sResult, "givenName");
        emp.LastName = getProperty(sResult, "sn");
        emp.Username = getProperty(sResult, "sAMAccountname");
        emp.Email = getProperty(sResult, "mail");
        Employees.Add(emp);
    }
}

上面的方法在我的本地机器上运行得很好,无论是IP地址还是域名。我尝试此操作的服务器是Windows Server 2012 R2。

我运行了命令nltest /dclist:mydomain.net,并确保服务器在域内,因为它向我返回了详细信息。即DC名称、IP地址、域名。

我遇到过语法问题吗?还是与DNS等配置问题有关?

此外,当我尝试在www.serverfault.com上搜索时,我想提一下,但无法收集到太多细节。

请给我指路。

无法从远程服务器访问Active Directory域控制器

事情终于解决了。

早些时候我提到,我确保我正在工作的机器在域中,但那里的情况略有不同。我试图使事情正常工作的机器实际上不在域中,而是在工作组中。

以下两个Netdom命令帮助我识别了这种情况。

  1. netdomverify-使用此命令可以发现机器尚未加入域
  2. netdomjoin-通过这个命令,可以将机器连接到网络域

参考:https://technet.microsoft.com/en-us/library/cc772217.aspx

一旦进入域,Active Directory就可以立即访问。