默子昂 2021-01-14 17:11 采纳率: 50%
浏览 200

ldap无法同步 ldap_start_tls failed (-11)

TLS: can't connect: (unknown error code).
600009b7 slap_client_connect: URI=ldap://ldap.example.org Error, ldap_start_tls failed (-11)
600009b7 do_syncrepl: rid=101 rc -11 retrying
TLS: can't connect: (unknown error code).
600009b7 slap_client_connect: URI=ldap://ldap.example.org Error, ldap_start_tls failed (-11)
600009b7 do_syncrepl: rid=001 rc -11 retrying

 

  • 写回答

1条回答 默认 最新

  • 你知我知皆知 2024-07-24 16:02
    关注

    以下回答参考 皆我百晓生券券喵儿 等免费微信小程序相关内容作答,并由本人整理回复。

    这个问题可能由多个原因引起。以下是一些常见的解决方法:

    1. 检查DNS解析:确保你的客户端机器能够正确解析到LDAP服务器的IP地址和端口。

    2. 确保SSL/TLS证书已安装:如果使用的是SSL/ TLS协议进行连接,请确保你已经为LDAP服务器安装了相应的证书。

    3. 检查LDAP服务器是否运行:如果你尝试连接到一个正在维护中的LDAP服务器,那么可能会遇到上述错误信息。

    4. 检查防火墙设置:某些防火墙规则可能阻止了TCP/IP连接到LDAP服务器。

    5. 使用不同的代理服务器:如果你在使用代理服务器,则需要检查代理服务器是否正常工作,并且它允许TCP/IP连接到LDAP服务器。

    以下是一个简单的Python脚本示例,用于验证DNS解析和SSL证书是否可用:

    import socket
    
    # DNS解析
    try:
        sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        sock.connect(('8.8.8.8', 53))
    except Exception as e:
        print("Error in DNS:", str(e))
    
    sock.close()
    
    # SSL/TLS证书
    try:
        context = ssl.create_default_context()
        with socket.create_connection(("example.com", 443)) as sock:
            context.check_hostname = False
            context.verify_mode = ssl.CERT_NONE
            with context.wrap_socket(sock, server_hostname="example.com") as ssock:
                ssock.do_handshake()
    except Exception as e:
        print("Error in SSL/TLS certificate:", str(e))
    

    请注意,你需要将example.com替换为你要测试的域名。

    对于Docker,你可以使用以下命令来启动一个包含SSL/TLS证书的容器:

    docker run --name my-ldap -d --restart always -p 389:389 \
      -v /path/to/certificates:/etc/pki/tls/certs \
      -e LDAP_URL=https://ldap.example.com \
      -e LDAP_BIND_DN=admin \
      -e LDAP_PASSWORD=password \
      -e SSL_CERTFILE=/etc/pki/tls/certs/server.crt \
      -e SSL_KEYFILE=/etc/pki/tls/private/server.key \
      -e SSL_CAFILE=/etc/pki/tls/ca.crt \
      my-lab-image
    

    这将在my-ldap容器中启动一个基于MySQL的Ldap服务。注意,你需要根据实际情况修改LDAP_URL, LDAP_BIND_DN, 和 LDAP_PASSWORD等变量。

    这个脚本首先尝试DNS解析,然后尝试SSL/TLS证书认证。如果两者都成功,那么你应该能够在my-ldap容器中看到响应。

    评论

报告相同问题?