#ldap #docker-swarm #pgadmin #swarm #docker-network
#ldap #docker-swarm #pgadmin #swarm #docker-сеть
Вопрос:
Я запускаю pgadmin с помощью docker swarm, и хост может подключаться к внешнему кластеру роя серверов ldap.
conig_distro.py
AUTHENTICATION_SOURCES = ['ldap', 'internal']
LDAP_AUTO_CREATE_USER = True
LDAP_CONNECTION_TIMEOUT = 10
LDAP_SERVER_URI = 'ldap://x.x.x.x:389'
LDAP_USERNAME_ATTRIBUTE = [ 'uid', 'userid', 'sAMAccountName' ]
LDAP_BIND_USER = 'CN=svnadmin,OU=IS,OU=Services,OU=Users,OU=xxx,DC=xxx,DC=net'
LDAP_BIND_PASSWORD = 'password'
LDAP_ANONYMOUS_BIND = False
LDAP_BASE_DN = 'OU=xxx,DC=xxx,DC=xxx'
LDAP_SEARCH_BASE_DN = ''
LDAP_SEARCH_FILTER = '(objectclass=*)'
LDAP_SEARCH_SCOPE = 'SUBTREE'
LDAP_USE_STARTTLS = False
LDAP_CA_CERT_FILE = ''
LDAP_CERT_FILE = ''
LDAP_KEY_FILE = ''
и когда требуется войти в систему, возникает эта ошибка:
ОШИБКА flask.app: Ошибка подключения к серверу LDAP: ошибка подключения к сокету при открытии: время ожидания истекло
полные журналы:
[2020-09-28 04:39:38 0000] [81] [INFO] Booting worker with pid: 81
2020-09-28 04:40:19,633: ERROR flask.app: Error connecting to the LDAP server: socket connection
error while opening: timed out
Traceback (most recent call last):
File "/pgadmin4/pgadmin/authenticate/ldap.py", line 110, in connect
self.conn = Connection(server,
File "/usr/local/lib/python3.8/site-packages/ldap3/core/connection.py", line 356, in __init__
self._do_auto_bind()
File "/usr/local/lib/python3.8/site-packages/ldap3/core/connection.py", line 380, in _do_auto_bind
self.open(read_server_info=False)
File "/usr/local/lib/python3.8/site-packages/ldap3/strategy/sync.py", line 56, in open
BaseStrategy.open(self, reset_usage, read_server_info)
File "/usr/local/lib/python3.8/site-packages/ldap3/strategy/base.py", line 145, in open
raise exception_history[0][0]
ldap3.core.exceptions.LDAPSocketOpenError: socket connection error while opening: timed out
Комментарии:
1. Можете ли вы рассказать мне, как вы смогли увидеть эти журналы? Я сам пытаюсь настроить аутентификацию LDAP в pgadmin4 и не могу найти, где искать журналы. Спасибо,
2. Я запускаю эту службу в кластере swarm; показывать журналы с
docker logs -f CONTAINER_NAME