![使用 StartTLS 对 Samba Active Directory 进行 OpenFire 身份验证](https://linux22.com/image/685005/%E4%BD%BF%E7%94%A8%20StartTLS%20%E5%AF%B9%20Samba%20Active%20Directory%20%E8%BF%9B%E8%A1%8C%20OpenFire%20%E8%BA%AB%E4%BB%BD%E9%AA%8C%E8%AF%81.png)
我正在尝试对不同的服务(目前特别是 openfire)进行身份验证Samba 活动目录超过启动TLS(端口 389)。
在设置 openfire 时,我选中了此选项(使用 StartTLS),但是当我测试连接时,出现此错误:
[LDAP: error code 1 - 00002020: Operation unavailable without authentication]
我不得不说,当我尝试通过 LDAPS 连接(使用端口 636)时,一切都很顺利。无论如何,很明显,389 上没有加密的连接将无法与 AD 一起使用(当我尝试时,openfire 告诉我必须使用加密层)。
有人能帮助我成功连接吗启动TLS?
这是我的 smb.conf
[global]
netbios name = S1
realm = NOURELDIN.LOCAL
workgroup = NOURELDIN
dns forwarder = 8.8.8.8
server role = active directory domain controller
idmap_ldb:use rfc2307 = yes
ldap ssl = start tls
[netlogon]
path = /usr/local/samba/var/locks/sysvol/noureldin.local/scripts
read only = No
[sysvol]
path = /usr/local/samba/var/locks/sysvol
read only = No
附言:我尝试添加和删除 (ldap ssl = start tls) 行,但没有任何区别。
我感谢任何帮助。
答案1
您可能需要在 openfire 系统中导入 samba ADS CA 证书
编辑:我在 centos vm 中安装了 samba4,并将 openfire 配置为使用带有 startls 的 ldap。
从 samba wiki 中所示的来源安装 samba4 后(https://wiki.samba.org/index.php/Build_Samba_from_source,https://wiki.samba.org/index.php/Setup_a_Samba_Active_Directory_Domain_Controller),我将 Samba 域控制器中的目录更改为 /usr/local/samba/private/tls
此文件夹中有三个文件:
# pwd
/usr/local/samba/private/tls
[root@dc1 tls]# ls -l
total 12
-rw-r--r--. 1 root root 2025 Jun 20 21:29 ca.pem
-rw-r--r--. 1 root root 2029 Jun 20 21:29 cert.pem
-rw-------. 1 root root 3243 Jun 20 21:29 key.pem
复制 ca.pem 的内容。一种方法是:
# cat ca.pem
复制从 -----BEGIN CERTIFICATE----- 到 -----END CERTIFICATE----- 的所有内容
在 openfire 控制台中,转到 TLS/SSL 证书并单击管理服务器联合存储的信任存储的存储内容:
点击‘导入自’:
并为新的 CA 命名,如“我的超棒 samba4 域”,然后粘贴 ca.pem 的内容:
验证新的 CA 是否存在,它应该被添加到受信任的存储列表中:
在服务器设置中验证您正在使用 startls:
重新启动 openfire,以管理员用户身份登录 Web 控制台。要验证您是否正在使用 starttls,可以使用 tcpdump。
完毕。