LDAPStartTLSError:('包装套接字错误:[SSL] 内部错误(_ssl.c:1108)',)

LDAPStartTLSError:('包装套接字错误:[SSL] 内部错误(_ssl.c:1108)',)

我开始学习 Flask,但是当我按照这个文档

我收到这个错误...奇怪的是使用 ldapsearch 一切都正常....

使用:

  • Ubuntu Focal
  • python3.8
  • python3-flask 1.1.1-2
  • python3-flask-ldapconn 0.7.2-1
  • python3-ldap3 2.4.1-2
  • python3-openssl 19.0.0-1build1
  • openssl 1.1.1f-1ubuntu1
  • slapd 2.4.49+dfsg-2ubuntu1

ldap.conf:

BASE    dc=contatogs,dc=com,dc=br
URI     ldap://zeus7.contatogs.com.br
SIZELIMIT       0
TIMELIMIT       0
TLS_REQCERT demand
TLS_CACERT      /etc/ssl/contatogs.com.br/cacert.pem

烧瓶的一部分:

from flask import Flask, render_template
from flask_ldapconn import LDAPConn

app = Flask(__name__)
ldap = LDAPConn(app)
app.config['SECRET_KEY'] = 'lihflhdlkfhlkfh'

import ssl
LDAP_SERVER = 'zeus7.contatogs.com.br'
LDAP_PORT = 389
LDAP_BINDDN = 'cn=admin,dc=contatogs,dc=com,dc=br'
LDAP_SECRET = 'adminldap'
LDAP_TIMEOUT = 0
LDAP_USE_TLS = True  # default
LDAP_REQUIRE_CERT = ssl.CERT_NONE  # default: CERT_REQUIRED
LDAP_CA_CERTS_FILE = '/etc/ssl/contatogs.com.br/cacert.pem'
LDAP_CLIENT_PRIVATE_KEY = '/etc/ssl/contatogs.com.br/private/zeus7.contatogs.com.br.key.pem'
LDAP_CLIENT_CERT = '/etc/ssl/contatogs.com.br/newcerts/zeus7.contatogs.com.br.crt.pem'

当使用 ldapseach 时可以:

ldapsearch -xLLLZZ -D cn=admin,dc=contatogs,dc=com,dc=br -w adminldap -H ldap://zeus7.contatogs.com.br | wc -l

结果:5862

我的错误在哪里?

先谢谢了


第二轮学习了更多关于ldap3的知识后,我看到了同样的错误( https://ldap3.readthedocs.io/en/latest/tutorial_intro.html

python3

Python 3.8.2(默认,2020 年 3 月 13 日,10:14:16)

[GCC 9.3.0] 在 Linux 上输入“help”、“copyright”、“credits”或“license”获取更多信息。

从 ldap3 导入服务器、连接、全部、Tls

导入 SSL

tls_configuration = Tls(验证=ssl.CERT_REQUIRED,版本=ssl.PROTOCOL_TLSv1)

服务器 = 服务器('ipa.demo1.freeipa.org',use_ssl=True,tls=tls_configuration)

conn = 连接(服务器)

conn.打开()

回溯(最近一次调用最后一次):文件“”,第 1 行,在文件“/usr/lib/python3/dist-packages/ldap3/strategy/sync.py”,第 56 行,打开 BaseStrategy.open(self,reset_usage,read_server_info)文件“/usr/lib/python3/dist-packages/ldap3/strategy/base.py”,第 141 行,打开引发 exception_history0(exception_history[0][2]) ldap3.core.exceptions.LDAPSocketOpenError: (LDAPSocketOpenError('套接字 ssl 包装错误:[SSL] 内部错误 (_ssl.c:1108)'),)

也许是关于 ssl/tls 的内容

答案1

尝试更改 SSL 配置以接受旧版本的 TLS。

在 Ubuntu 上编辑 /etc/ssl/openssl.cnf || 在 RHEL 8.1 中:/etc/crypto-policies/back-ends/opensslcnf.config 并编辑以下内容:

MinProtocol = TLSv1
CipherString = DEFAULT:@SECLEVEL=1

请注意,这对安全是一个严重的威胁,但您可以使用它进行测试,看看是否有帮助。

參考文獻:

https://takraw-s.medium.com/fix-errors-socket-ssl-wrapping-error-errno-104-connection-reset-by-peer-9c63c551cd7

https://github.com/cannatag/ldap3/issues/385

我希望它有帮助!

相关内容