标签: sssd

如何以最安全和正确的方式在 Centos 6 上配置 LDAP 以进行用户身份验证?

在过去的几天里,我一直在使用很多 F-words,同时浏览 Internet 以获取有关如何设置 LDAP 服务器的良好文档。到目前为止,我没有发现任何东西,但有很多不如好,但比坏好。所以我不得不按照通常的 Linux 方式来做,阅读、测试、尖叫、阅读、测试和尖叫。

我对 LDAP 服务器的目标是:

  • 在 Centos 6 最低安装上安装 LDAP,用于服务器和客户端。
  • 按照 OpenLDAP 开发人员预期的方式安装。
  • 在启用 LDAPS、iptables、SELinux 等的情况下安全地安装 LDAP。
  • 在客户端上使用 SSSD 进行到 LDAP 服务器的“身份验证”连接。

这是我通常自己回答的那种问题,但我会很感激有关如何更好地进行安装的建议。

openldap ldap centos centos6 sssd

35
推荐指数
2
解决办法
9万
查看次数

SSSD 拒绝 LDAP 登录 su: 不正确的密码

我已经使用用户帐户设置了 LDAP 服务器。我已经成功地配置了一个 Rails 应用程序来验证这个 LDAP 服务器。我现在正在尝试将 SSSD 配置为针对 LDAP 进行身份验证,但它不喜欢个人用户密码。

错误:

$ su - leopetr4
Password:
su: incorrect password
Run Code Online (Sandbox Code Playgroud)

SSSD 识别用户,但不识别密码:

$ id leopetr4
uid=9583(leopetr4) gid=9583(leopetr4) groups=9583(leopetr4)
Run Code Online (Sandbox Code Playgroud)

这是用户记录的样子:

# ldapsearch -x -W -D "cn=admin,dc=my_domain,dc=com"  -H ldaps://my_hostname.my_domain.com "(uid=leopetr4)"
Enter LDAP Password:
# extended LDIF
#
# LDAPv3
# base <dc=my_domain,dc=com> (default) with scope subtree
# filter: (uid=leopetr4)
# requesting: ALL
#

# leopetr4, People, my_domain.com
dn: uid=leopetr4,ou=People,dc=my_domain,dc=com
uid: leopetr4
cn: Leo Petr 40
sn: 40
objectClass: posixAccount
objectClass: top
objectClass: …
Run Code Online (Sandbox Code Playgroud)

openldap ldap authentication sssd rhel6

12
推荐指数
1
解决办法
1万
查看次数

NTP 服务自动发现

有什么方法可以用来为 NTP 提供自动发现?我最近换了一份新工作,该工作的母公司最近开始提供 Active Directory。我一直在实施 SSSD 和其他针对 AD 进行身份验证并设置 NTP 的内容。但是,它们有大量的 Active Directory 服务器(我必须直接指向服务器)并且它们有时会发生变化。

是否有任何方法(例如 LDAP 发现或多播(如 ActiveMQ)和其他应用程序)可以设置?除了试图让母公司维护更好的服务器列表以及它们用于哪些域之外,如果没有任何建议?

谢谢!

active-directory ntp ntpd autodiscovery sssd

12
推荐指数
1
解决办法
1494
查看次数

CentOS 6 + LDAP + NFS。文件所有权被困在“没人”上

几天来,我一直在尝试在 CentOS 6 上进行 LDAP 身份验证和 NFS 导出的主目录。我现在可以使用 LDAP 中的用户名和密码登录到客户端计算机。在客户端,/home 和/opt 挂载在NFS 上的fstab 中。但是, /opt 和 /home 中的每个文件都归nobody:nobody(uid: 99, gid: 99) 在客户端所有。

但是我的 uid 和 gid 似乎设置正确:

-bash-4.1$ id
uid=3000(myusername) gid=3000(employees) groups=3000(employees)
Run Code Online (Sandbox Code Playgroud)

我还能检查什么?以下是我客户端上的一些配置文件:

/etc/nsswitch.conf

passwd:     files sss
shadow:     files sss
group:      files sss

hosts:      files dns

bootparams: nisplus [NOTFOUND=return] files

ethers:     files
netmasks:   files
networks:   files
protocols:  files
rpc:        files
services:   files

netgroup:   files sss

publickey:  nisplus

automount:  files ldap
aliases:    files nisplus
Run Code Online (Sandbox Code Playgroud)

/etc/sssd/sssd.conf

[sssd]
config_file_version = 2 …
Run Code Online (Sandbox Code Playgroud)

openldap nfs centos sssd

11
推荐指数
2
解决办法
4万
查看次数

sssd 和 ldap 身份验证缓存

在我们运行 OpenSUSE 12.2 的机器上,我们已经安装了 OpenLDAP 和sssd守护进程。我们正在使用这两个服务进行用户身份验证。最近我们创建了一个脚本,它动态地为我们的虚拟主机创建新的网络用户,但现在我们正在处理一个问题。

sssd 似乎使用了某种缓存,并在getent passwd此期间返回已从 LDAP 中删除的用户。有时它不会立即返回最近创建的用户,因为它在脚本中是必要的(用于使用setfacl和设置权限chown)。

重新启动 LDAP,sssd或者nscd没有帮助,也没有使用sss_cache -U. 我们尝试降低配置中的缓存,sssd但似乎没有任何影响。

在将新用户添加到 LDAP 或完全禁用缓存后,我们需要以某种方式显式刷新缓存。

有没有人遇到过类似的问题?

ldap cache latency sssd

11
推荐指数
3
解决办法
4万
查看次数

IPA 动态 DNS 仅更新 AAAA 记录。我的 A 记录在哪里?

我正在设置一个 FreeIPA 域。在我的实验室里有三个虚拟机:在域控制器ipadc1和两个客户端puppetwordpress(创造性的,是的,我知道)。所有三个 VM 都运行新安装的 CentOS 6.4 (FreeIPA 3.0.0)。

我已经安装了 IPA 服务器,创建了一个我们将example.us在此处调用的域,并启用了 DNS 服务和自动 DNS 更新。

我已成功将两个 VM 加入域。但是动态 DNS 更新只是将 AAAA 记录放入 DNS。从来没有插入 A 记录。

DNS RR

我的动态更新 DNS 区域设置和 BIND 更新策略似乎也正确。

DNS 区域设置

两个客户端虚拟机实际上都有IPv4 地址;puppet具有静态 IPv4 地址并wordpress从 DHCP 获取其 IPv4 地址。这似乎没什么区别。

# ip a s dev eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 52:54:00:3c:d5:f5 brd ff:ff:ff:ff:ff:ff
    inet 172.25.50.227/24 brd 172.25.50.255 scope global …
Run Code Online (Sandbox Code Playgroud)

dynamic-dns centos6 sssd freeipa

11
推荐指数
1
解决办法
2002
查看次数

如何使用 security/sssd 将 Active Directory 与 FreeBSD 10.0 集成?

使用sssdAD 后端和 Kerberos TGT 工作,从在 FreeBSD 10.0 中的 Windows Server 2012 R2 上运行的 Active Directory 对用户进行身份验证需要哪些步骤?

freebsd active-directory kerberos sssd windows-server-2012-r2

10
推荐指数
1
解决办法
3万
查看次数

Active Directory 身份验证用户的主目录和外壳

我已经成功配置了 sssd 并且可以使用 AD 凭据通过 ssh 进入系统,但我缺少的是创建主目录并将 bash 设置为 shell。

我的假设是,如果我登录到一个还没有本地 linux 帐户但确实有一个有效的 AD 帐户的系统,则会在用户第一次登录时创建一个主目录,并按照中的定义设置适当的 shell /etc/sssd/sssd.conf

override_homedir = /home/%u
default_shell = /bin/bash
Run Code Online (Sandbox Code Playgroud)

我也跑了

authconfig --enablesssd --enablesssdauth --enablemkhomedir --update
Run Code Online (Sandbox Code Playgroud)

我遗漏了什么或者我对现有配置做出了错误的假设?

我想避免使用 Windows 已弃用的 Unix 身份管理功能。

linux centos authentication sssd

10
推荐指数
1
解决办法
3万
查看次数

SSSD 身份验证到 Windows 域,没有 @domain.com 无处不在

我们正在为我们的一些开发人员试用 Ubuntu 14.04 桌面环境,我已经将这些机器连接到使用 SSSD 的域中。这一直工作正常。但是系统将域用户识别为 user@DOMAIN.COM,因此 'ls -l' 输出非常混乱。事实证明,他们有一些硬编码用户名的测试脚本,因此@DOMAIN.COM 破坏了它们。

有没有办法让 SSSD 将域用户显示为“用户名”而不是“用户名@DOMAIN.COM”?如果没有,是否有允许我这样做的系统?

谢谢

ubuntu active-directory sssd ubuntu-14.04

9
推荐指数
1
解决办法
1万
查看次数

PAM 接受有效用户的任何密码

我刚刚将我的 Arch Linux 工作站链接到我为我们公司设置的 Samba AD。我测试了它,它奏效了,或者我是这么认为的。它接受了我的密码,创建了我的 homedir 和所有内容,然后让我登录。我忘记测试的是它接受的内容。事实证明,只要用户名有效(AD 或本地,无关紧要),它就会接受任何密码。有人可以指出我做错了什么吗?

我正在使用 SSSD 来管理 AD 连接。这是我的/etc/pam.d/system-auth

#%PAM-1.0

auth        sufficient    pam_unix.so nullok try_first_pass
auth        requisite     pam_succeed_if.so uid >= 500 quiet
auth        sufficient    pam_sss.so use_first_pass
auth        required      pam_env.so

account     required      pam_unix.so
account     sufficient    pam_localuser.so
account     sufficient    pam_succeed_if.so uid < 500 quiet
account     [default=bad success=ok user_unknown=ignore] pam_sss.so
account     required      pam_permit.so

password    sufficient    pam_unix.so sha512 shadow nullok try_first_pass use_authtok
password    sufficient    pam_sss.so use_authtok
password    required      pam_deny.so

session     optional      pam_keyinit.so revoke
session     required …
Run Code Online (Sandbox Code Playgroud)

active-directory pam sssd

9
推荐指数
1
解决办法
3277
查看次数