python - 如何在 ldaps 请求中更改我的 ssl 密码?

标签 python ssl ubuntu-12.10

亲爱的~, 我的环境是: 操作系统:Ubuntu 12.04.4 LTS python : python 2.7.3 当使用 ldap 通过 ssl 连接到 AD 服务器时。我收到这个错误 “接收到长度意外的 TLS 数据包” 我已经通过 tcpdump 获得了包裹并找到了 hello faild

Hello details

但是当我在相同的环境下使用 perl 脚本时是可以的,并且在 Ubuntu16 中运行的 python 脚本也连接成功(只有 python 在 ubuntu12 中不工作) 成功连接后,hello 请求将带来比 Ubuntu12 更多的密码。 Run well on Ubuntu16 失败时,AD服务器可以找到 error log

我的测试脚本是:

import ldap
TIMEOUT = 30
DEBUG_LEVEL = 8191
TRACE_LEVEL = 10
AD_HOST = "10.29.137.100"
USERNAME = "username"
PASSWORD = "password"

ldap.set_option(ldap.OPT_X_TLS_REQUIRE_CERT, ldap.OPT_X_TLS_ALLOW)
ldap.set_option(ldap.OPT_DEBUG_LEVEL, 8191)

ldapConn = ldap.initialize("ldaps://" + AD_HOST + ":636", 
trace_level=TRACE_LEVEL)
ldapConn.set_option(ldap.OPT_PROTOCOL_VERSION, 3)
ldapConn.set_option(ldap.OPT_X_TLS_CIPHER_SUITE,'TLSv1:!NULL')
ldapConn.set_option(ldap.OPT_REFERRALS, 0)

ldapConn.set_option(ldap.OPT_NETWORK_TIMEOUT , TIMEOUT)
ldapConn.set_option(ldap.OPT_TIMEOUT , TIMEOUT)
ldapConn.simple_bind_s(USERNAME, PASSWORD)

我的问题是如何在 python 脚本中更改密码? 我发现 ldapConn.set_option(ldap.OPT_X_TLS_CIPHER_SUITE,'TLSv1:!NULL') 不适合我。现在我不知道在哪里设置这些密码值。或者我可以升级以支持更多密码的第三方依赖什么。

谢谢~~~

最佳答案

您刚刚碰到了 Python 2/3 墙。

您的脚本是 python3,您尝试在不向后兼容的 python 2.7 环境中运行。唯一的选择是在 Ubuntu 12 上安装 python3 并使用 python3.X 运行它。

示例显示here .

关于python - 如何在 ldaps 请求中更改我的 ssl 密码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48658329/

相关文章:

python - 使用 Discord.py Rewrite 编写 Discord 机器人

python - 使用 stride_tricks 创建重叠子数组

MySQL linux 服务器和 my.cnf 优化多行

python - 正则表达式:检索匹配的模式

python - 正则表达式 (vim) 用于 print ... to print(...) 用于 python2 到 python3

ssl - 如何在wildfly中通过ssl访问数据源

linux - 类 Unix 平台的 FTP GUI 客户端,支持 TLS/SSL/SFTP

c++ - 没有 SSL 验证的 HTTPs 对于本地应用程序是否安全?

PHP 警告 : Module 'mcrypt' already loaded

c++ - 如何让 CMake 在 Ubuntu 上识别 pthread?