С хоста не удается подключиться к серверу OpenLDAP, установленному на виртуальной машине

Я создал установку OpenLDAP на виртуальной машине CentOS Hyper-V, размещенной на моем ноутбуке с Windows 10. Используя Apache Directory Studio (на виртуальной машине), я создал соединение, настроил домен и добавил группы и людей.

IP-адрес виртуальной машины 172.16.22.150, На моем хост-компьютере, если я пингую этот IP, я получаю ответ. Если я затем выключу виртуальную машину и снова пингую IP, на этот раз я не получу ответа. Включите виртуальную машину, выполните команду ping и получите ответ. Похоже, что IP хорош.

Пока все хорошо. Тем не мение...

Во-первых, я также установил Apache Directory Studio на свой хост-компьютер. Но когда я пытаюсь создать то же соединение, я получаю

Соединение не удалось - невозможно подключиться.

Детали:

The connection failed
 - Unable to connect
  java.lang.Exception: Unable to connect
    at org.apache.directory.studio.connection.core.io.api.DirectoryApiConnectionWrapper$1.run(DirectoryApiConnectionWrapper.java:251)
    at org.apache.directory.studio.connection.core.io.api.DirectoryApiConnectionWrapper.runAndMonitor(DirectoryApiConnectionWrapper.java:1312)
    at org.apache.directory.studio.connection.core.io.api.DirectoryApiConnectionWrapper.doConnect(DirectoryApiConnectionWrapper.java:281)
    at org.apache.directory.studio.connection.core.io.api.DirectoryApiConnectionWrapper.connect(DirectoryApiConnectionWrapper.java:172)
    at org.apache.directory.studio.connection.core.jobs.CheckNetworkParameterRunnable.run(CheckNetworkParameterRunnable.java:80)
    at org.apache.directory.studio.connection.ui.RunnableContextRunner$1.run(RunnableContextRunner.java:140)
    at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:119)

  Unable to connect

Во-вторых, мне нужно создать небольшое небольшое консольное приложение на C# в качестве PoC для подключения к серверу и аутентификации пользователя. Как ни странно, я могу нормально подключиться к серверу, используя:

LdapDirectoryIdentifier ldi = new LdapDirectoryIdentifier("172.16.22.150");
LdapConnection ldapConnection = new LdapConnection(ldi);

Но когда я пытаюсь аутентифицировать пользователя:

ldapConnection.AuthType = AuthType.Basic;
ldapConnection.SessionOptions.ProtocolVersion = 3;
NetworkCredential nc = new NetworkCredential("ccrookston", "password", "mydomain.com");
ldapConnection.Bind(nc);

Я получил:

Сервер LDAP недоступен.

Трассировки стека:

   at System.DirectoryServices.Protocols.LdapConnection.Connect()
   at System.DirectoryServices.Protocols.LdapConnection.BindHelper(NetworkCredential newCredential, Boolean needSetCredential)
   at System.DirectoryServices.Protocols.LdapConnection.Bind(NetworkCredential newCredential)
   at OpenLDAP.Program.Main(String[] args) in C:\Users\caseyc\Documents\Visual Studio 2017\Projects\OpenLDAP\Program.cs:line 33

Я не уверен, с чего начать устранение неполадок. Это конфигурация в CentOS на ВМ? Это конфигурация Hyper-V? Или что-то на моем хосте Windows, например, настройка брандмауэра?

Благодарность!

1 ответ

Понял. В брандмауэр (с помощью графического интерфейса) я добавил порты:

389 - ТКП 389 - УДП

Кажется, нужны оба.

Другие вопросы по тегам