如何为 Windows 域EXAMPLE.COM 的三个域控制器(dc1.example.com dc2.example.com dc3.example.com)生成自签名(后来为真实证书的CSR)SSL 证书以用于LDAP
我认为,主题应该是EXAMPLE.COM,其中三个主题备用名称是每个DC 的DNS 名称。
如何最好使用 openssl 生成此证书,并且绝对不安装证书服务?
编辑:
另一个要求是仅使用内置于 RHEL 6、Windows 2008 R2 或可直接从 Microsoft 获取的软件的现有工具来完成此操作。
我们使用 Active Directory 设置了 LDAP 服务器。当用户以 root 身份登录到安装了 LDAP 客户端的 Linux 机器时,他们能够进入任何 Active Directory 帐户,而无需该用户密码。这是一个很大的安全风险,有谁知道这是为什么或如何防止这种情况?
不幸的是,阻止 root 访问不是一种选择,因为某些用户在某些情况下需要这样做。
我是 LDAP 的新手。我需要使用一些没有任何 sasl 的参数以明文形式指定用户名。
所以这个命令会给你一些搜索结果,但它总是空的,因为没有授权:
ldapsearch -h 1.1.1.1 -p 389 -D "OU=SysAcc,OU=Infra,dc=mydomain,dc=com" -b "OU=blg,dc=whatever,dc=whatever2,dc=com"
Run Code Online (Sandbox Code Playgroud)
我发现我可以添加-w mypasswd来指定密码,我在哪里可以指定用户名?我开始是ldapsearch因为我很难在我尝试设置的 Web 应用程序之一中配置 LDAP。只是想用ldapsearch工具检查我的参数是否正确,但我找不到如何指定用户名。
编辑:
从上面的答案中,我只想写一个最终的命令,它应该是怎样的:
ldapsearch -h 1.1.1.1 -p 389 -W -D "CN=sysMYUSER,OU=SysAcc,OU=Infra,dc=mydomain,dc=com" -b "OU=blg,dc=whatever,dc=whatever2,dc=com"
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用 Chef 添加/修改一些本地用户帐户。无论出于何种原因,LDAP 中都有重复的帐户。由于系统使用 sssd/pam/ldap,它会将用户视为存在,但无法修改它们,因为它们不在 /etc/passwd 中。
有没有办法完全绕过 ldap 帐户,这样它们就不会被识别?然后 Chef 将正确创建它们。
除了注意到这样的事情:
yourid@linuxtpf:~/certificates> ls -l
lrwxrwxrwx 1 yourid users 9 2009-04-07 18:06 50a694ac.0 -> cert2.pem #<-- was missing
lrwxrwxrwx 1 yourid users 9 2009-04-07 18:06 5170a0d9.0 -> cert3.pem #<-- was missing too...
-rw------- 1 yourid users 756 2009-04-07 18:02 cert2.pem
-rw------- 1 yourid users 747 2009-04-07 18:02 cert3.pem
Run Code Online (Sandbox Code Playgroud)
在我的服务器中丢失了,并且在添加它们之后修复了在 LDAP 连接过程中的 ldap_bind 阶段失败的 LDAPS 连接。
到底发生了什么,为什么我需要通过运行以下命令为 CAPATH 创建符号链接?
yourid@linuxtpf:~/certificates> c_rehash /home/yourid/certificates
我正在尝试允许在 CentOS 主机系统上通过 LDAP 进行身份验证。但是我总是从 pam_ldap收到无法联系 LDAP 服务器的错误。
LDAP 服务器是可 ping 的,并且身份验证可以与 ldap:// 完美配合,但不能与 ldaps:// 配合使用。在 debian 操作系统上,它也可以与 ldaps:// 完美配合,但在 CentOS 上则不行。
我也遇到了$ ldapsearch无法联系错误...但我修复了它,在 /etc/openldap/ldap.conf 中设置了TLS_REQCERT 允许。但是为 /etc/pam_ldap.conf 设置这个没有帮助。
我做的步骤:
更多信息:
同样令人困惑的是/var/log/secure 中的 IP 。它说 …
我使用它sssd是为了在我们的 Linux 环境中使用 LDAP 用户和组。
我不得不重命名我的一个 Linux 用户的 LDAP 组,我注意到在我完成编辑组后,当我运行时:
id username在 Linux 机器上它一直显示以前的名称(重命名之前)。
我试过重新启动服务器,但没有清除缓存并一直向我显示以前的组名。
我搜索了谷歌并在redhat的官方网站上找到了下一个命令:
sss_cache -E
Run Code Online (Sandbox Code Playgroud)
这解决了我的问题并清除了 sssd 缓存,并且在我下次运行时:
id user显示了正确的组名。
但我的问题是:
1. How come a full server reboot didn't clear the cache?
2. How can I make sure the cache gets deleted when the server is rebooted?
Run Code Online (Sandbox Code Playgroud)
提前致谢
添加用户
dn: uid=sampleuser,ou=people,dc=my-domain,dc=com
objectClass: top
objectClass: inetOrgPerson
cn: sample user
uid: sampleuser
Run Code Online (Sandbox Code Playgroud)
问题
[root@host ~]# ldapadd -x -W -D "cn=Manager,dc=my-domain,dc=com" -f user.ldif
Enter LDAP Password:
adding new entry "uid=sampleuser,ou=people,dc=my-domain,dc=com"
ldap_add: Invalid syntax (21)
additional info: objectClass: value #1 invalid per syntax
Run Code Online (Sandbox Code Playgroud)
尝试解决问题
更改inetOrgPerson为uidObject并再次创建用户:
[root@controller ~]# ldapadd -x -W -D "cn=Manager,dc=my-domain,dc=com" -f user.ldif
Enter LDAP Password:
adding new entry "uid=sampleuser,ou=people,dc=my-domain,dc=com"
ldap_add: Object class violation (65)
additional info: no structural object class provided
Run Code Online (Sandbox Code Playgroud)
尝试 2 解决问题
对象类 …
我正在计划重建 DC,并且在降级旧的 DC 之前,我正在尝试尽可能彻底。有没有办法通过源 IP 或主机名查看到 DC 的所有 LDAP 连接?