Ad Widget

Collapse

Проблемы с ldaps

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Zerocool56
    Member
    • Mar 2013
    • 68

    #1

    Проблемы с ldaps

    Стрельнуло мне в голову поставить авторизацию с ldap

    Так, как гонять открытым текстом пароли - не комильфо, было решено использовать ldaps
    Ситуация Следующая.
    Прописываю настройки, ставлю просто ldap - всё работает на ура
    Дописываю ldaps и 636 порт - мне сервер вываливает
    ldap_bind(): Unable to bind to server: Can't contact LDAP server [include/classes/class.cldap.php:115]
    Остюда вопрос, как подружить ldaps и заббикс?
  • Jimson
    Senior Member
    • Jan 2008
    • 1327

    #2
    Так а сервер то на порту 636 вас ждет? Может там порт закрыт файрволом или в настройках ldap сервера есть список адресов с которых он будет принимать соединения.

    Comment

    • Zerocool56
      Member
      • Mar 2013
      • 68

      #3
      Originally posted by Jimson
      Так а сервер то на порту 636 вас ждет? Может там порт закрыт файрволом или в настройках ldap сервера есть список адресов с которых он будет принимать соединения.
      Да ждёт, с другого сервера через ldp соединение открывается
      Сервер принимает соединения со всех локальных адресов

      Comment

      • uniken1
        Member
        • Sep 2012
        • 93

        #4
        Как воркраунд можно в файле
        /etc/openldap/ldap.conf
        добавить строчку
        TLS_REQCERT never
        потом перезагрузиться.


        Нормальная установка сертификата.
        Экспортировать корневой сертификат в cacert.cer в формате X.509 Base-64 (если мы говорим про AD)
        скопировать в /etc/openldap/certs
        добавить в файл /etc/openldap/ldap.conf
        TLS_REQCERT hard
        TLS_CACERT /etc/openldap/certs/cacert.cer
        TLS_CACERTDIR /etc/openldap/certs

        перезагрузка
        Last edited by uniken1; 04-06-2013, 06:21.

        Comment

        • Zerocool56
          Member
          • Mar 2013
          • 68

          #5
          Originally posted by uniken1
          Как воркраунд можно в файле
          /etc/openldap/ldap.conf
          добавить строчку
          tls_reqcert never
          потом перезагрузиться.


          Нормальная установка сертификата.
          Экспортировать корневой сертификат в cacert.cer в формате x.509 base-64 (если мы говорим про ad)
          скопировать в /etc/openldap/certs
          добавить в файл /etc/openldap/ldap.conf
          tls_reqcert hard
          tls_cacert /etc/openldap/certs/cacert.cer
          tls_cacertdir /etc/openldap/certs

          перезагрузка
          Благодарю, ворэраунд помог
          Имхо, стОит добавить этот момент в официальную документацию

          Comment

          • Jimson
            Senior Member
            • Jan 2008
            • 1327

            #6
            Так обычно отталкиваются от предположения что автор вопроса уже спросил на гугле "в лоб", в данном случае в точности то что вы выделили: "ldap_bind(): Unable to bind to server: Can't contact LDAP server", вторая ссылка в выдаче гугла даст описанный выше workaround. WTF ?

            Comment

            • Zerocool56
              Member
              • Mar 2013
              • 68

              #7
              кстати, пробовал в прошлый раз писать сей момент (TLS_REQCERT = never), только там не указано было, что надо перезагрузить сервер, оттого меня и игнорило ...

              Comment

              • uniken1
                Member
                • Sep 2012
                • 93

                #8
                Может быть и без перезагрузки будет работать, но какой сервис надо перезапустить я не нашел, поэтому просто перезагружаюсь.

                Установить сертификат или отключить это конечно на свое усмотрение, с одной стороны повышение безопасности с другой надо следить что бы при окончании действия сертификата его вовремя обновляли.

                Comment

                • Hardman
                  Junior Member
                  • Dec 2017
                  • 1

                  #9
                  Здравствуйте!

                  Originally posted by uniken1
                  Как воркраунд можно в файле
                  /etc/openldap/ldap.conf
                  добавить строчку
                  TLS_REQCERT never
                  потом перезагрузиться.


                  Нормальная установка сертификата.
                  Экспортировать корневой сертификат в cacert.cer в формате X.509 Base-64 (если мы говорим про AD)
                  скопировать в /etc/openldap/certs
                  добавить в файл /etc/openldap/ldap.conf
                  TLS_REQCERT hard
                  TLS_CACERT /etc/openldap/certs/cacert.cer
                  TLS_CACERTDIR /etc/openldap/certs

                  перезагрузка
                  Какой сертификат нужно экспортировать?
                  Открыл оснастку "Сертификаты", их там тьма.

                  Что делаю:
                  Не настраивается аутентификация в заббиксе.
                  Пробую в ldapsearch подключиться к AD по ldap:// - выдаёт "Strong(er) authentication required (8)"

                  Code:
                  ldapsearch -v -x -D "[email protected]" -w "1q2w3e4r5t6y7u8i9o0p" -b "DC=mydomain,DC=ru" -H "ldap://server.mydomain.ru" sAMAccountName=zabbix_ad_explorer
                  ldap_initialize( ldap://server.mydomain.ru:389/??base )
                  ldap_bind: Strong(er) authentication required (8)
                          additional info: 00002028: LdapErr: DSID-0C090252, comment: The server requires binds to turn on integrity checking if SSL\TLS are not already active on the connection, data 0, v1db1
                  Пробую в ldapsearch подключиться к AD по ldaps:// - выдаёт "Can't contact LDAP server (-1)"

                  Code:
                  ldapsearch -Z -v -x -D "[email protected]" -w "1q2w3e4r5t6y7u8i9o0p" -b "DC=mydomain,DC=ru" -H "ldaps://server.mydomain.ru" sAMAccountName=zabbix_ad_explorer
                  ldap_initialize( ldaps://server.mydomain.ru:636/??base )
                  ldap_start_tls: Can't contact LDAP server (-1)
                          additional info: Error in the push function.
                  ldap_sasl_bind(SIMPLE): Can't contact LDAP server (-1)
                  Пользователи заведены. В AdExplorer от этого пользователя доступ работает.

                  Как я сейчас представляю:
                  Для подключения к AD мне нужно использовать защищённое подключение. Для этого надо прописать сертификат в ldap.conf
                  Прописывал server.mydomain.cer и Default CA.cer - не помогло.
                  Значит либо не тот сертификат, либо не тот формат, либо делаю совсем не то...

                  Comment

                  Working...