标签: sssd

kinit & pam_sss:在获取初始凭据时找不到请求领域的 KDC

我在 CentOS 6.3 对 2008R2 AD DC 进行身份验证的这个线程中描述一个非常相似的问题。

这是我的 krb5.conf,我知道 XXXXXXX.LOCAL 是真正的域名:

[logging]
 default = FILE:/var/log/krb5libs.log
 kdc = FILE:/var/log/krb5kdc.log
 admin_server = FILE:/var/log/kadmind.log

[libdefaults]
 default_realm = XXXXXXX.LOCAL
 dns_lookup_realm = false
 dns_lookup_kdc = false
 ticket_lifetime = 24h
 renew_lifetime = 7d
 forwardable = true
 verify_ap_req_nofail = false

[realms]
 XXXXXXX.LOCAL = {
 kdc = ad1.XXXXXXX.local
 kdc = ad2.XXXXXXX.local
 admin_server = ad1.XXXXXXX.local
 default_domain = XXXXXXX.LOCAL
}

[domain_realm]
 .XXXXXXX.local = XXXXXXX.LOCAL
 XXXXXXX.local = XXXXXXX.LOCAL
 .XXXXXXX.com = XXXXXXX.LOCAL
 XXXXXXX.com = XXXXXXX.LOCAL
Run Code Online (Sandbox Code Playgroud)

当我做一个:

kinit …

active-directory kerberos pam windows-server-2008-r2 sssd

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

SSSD 忽略 ldap_access_filter

我已经设置了 sssd 和 LDAP。用户进行身份验证并登录。我的问题是 sssd 似乎忽略了 ldap_access_filter 选项并允许所有用户登录。我检查了日志/调试,并且 pam_sss 每次都会授权用户,而不管过滤器如何(我尝试了几个不同的过滤器,结果都相同)。

这是用于配置系统的命令:

authconfig 
    --updateall --passalgo=md5 --enableldap --enableldapauth  \
    --ldapserver=ldaps://ldap.example.com  \
    --ldapbase=ou=people,dc=example,dc=com \
    --enableldaptls --enableldapstarttls --disablekrb5 \
    --ldaploadcacert=http://certserver/cacerts/cacert.pem \
    --enablesssd --enablesssdauth --enableshadow \ 
    --enablecachecreds --enablemkhomedir
Run Code Online (Sandbox Code Playgroud)

这是/etc/sssd/sssd.conf:

[domain/default]
debug_level = 9
ldap_id_use_start_tls = True
cache_credentials = True
ldap_search_base = ou=people,dc=example,dc=com
id_provider = ldap
auth_provider = ldap
ldap_access_filter = memberOf=cn=sysadmins,ou=people,dc=example,dc=com
chpass_provider = ldap
ldap_uri = ldaps://ldap.example.com
ldap_tls_cacertdir = /etc/openldap/cacerts
[sssd]
services = nss, pam
config_file_version = 2

domains = default
[nss]

[pam]

[sudo]

[autofs] …
Run Code Online (Sandbox Code Playgroud)

ldap sssd

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

FreeIPA:防止本地 root 访问用户帐户

所以在问了这个问题之后,我一直在测试 FreeIPA 作为基于这个问题的中央认证源:管理对多个 linux 系统的访问

我遇到的一个问题是,如果用户被授予本地 root 权限,他们又可以以 FreeIPA 目录中的任何用户身份登录。即使该用户无权通过 HBAC 规则访问该特定机器。

示例场景:

  • FreeIPA 客户端机器PC1
  • FreeIPA 中的两个用户:Bob 和 Alice。
  • 爱丽丝通过HBAC规则允许访问PC1。Bob 在 PC1 上有本地根。Bob 可以su成为 PC1 上的 Alice。

我能找到的唯一信息是在 /etc/pam.d/su 中注释掉这一行:

auth            sufficient      pam_rootok.so
Run Code Online (Sandbox Code Playgroud)

如果他尝试以下操作,它现在会向本地 root 询问 Alice 的密码:su alice

但是,如果 Bob 具有 root 访问权限,他可以轻松启用上述 PAM/su 行。FreeIPA 不应该阻止 Alice 的帐户通过直接登录尝试或本地 root su访问 PC1吗?如何防止本地根用户以任何 FreeIPA 用户身份登录?

pam sssd freeipa

6
推荐指数
1
解决办法
2727
查看次数

了解 FreeBSD 上使用 security/sssd 的 PAM 身份验证过程

我试图了解 FreeBSD 10.0 上的 PAM 配置出现了什么错误

该计算机配置了两种不同的身份验证领域,一种是默认的 Unix 身份验证,另一种是使用系统安全服务守护程序 (sssd)。

目前我正在使用此配置,/etc/pam.d/sshd因为我只想允许 sssd 从 ssh 登录。

auth            sufficient      pam_opie.so                  no_warn no_fake_prompts
auth            requisite       pam_opieaccess.so            no_warn allow_local
auth            sufficient      /usr/local/lib/pam_sss.so
#auth           sufficient      pam_krb5.so                  no_warn try_first_pass
#auth           sufficient      pam_ssh.so                   no_warn try_first_pass
auth            required        pam_unix.so                  no_warn use_first_pass

# account
account         required        pam_nologin.so
#account        required        pam_krb5.so
account         required        pam_login_access.so
account         required        /usr/local/lib/pam_sss.so    ignore_unknown_user
account         required        pam_unix.so

# session
#session        optional        pam_ssh.so                   want_agent
session         optional        /usr/local/lib/pam_sss.so
session         optional        /usr/local/lib/pam_mkhomedir.so      mode=0700
session         required        pam_permit.so

# …
Run Code Online (Sandbox Code Playgroud)

freebsd authentication pam sssd

6
推荐指数
1
解决办法
6236
查看次数

我如何让 centos 7 使用活动目录中的 uids 和 gids?

我正在准备从 CentOS 6 最终升级到 CentOS 7。现在,在版本 6 中,我们只使用映射到 AD 的 LDAP 进行身份验证。然后使用 Unix 的 Active Directory 扩展中的 UID 和 GID。

在我对 CentOS 7 的实验中,我浏览了解释如何加入域的文档(我认为它来自 Red Hat)。这个过程大多是直截了当的,而且大多效果很好。但是,它不仅仅使用 AD Unix 属性中的 UID 和 GID。它将这些 ID 映射到完全不同的 ID。在 AD 中,用户在 10000 范围内。CentOS7 为每个用户提供 625000000 范围内的 UID。

到目前为止,在我的小规模测试(3 个盒子)中,UID 似乎在它们之间保持一致,这很好。但是,当我开始在生产中推出 7 时,它将是一个逐渐升级的过程。我不会同时升级每个盒子。我担心用户在不同盒子上拥有不同 UID 的问题。有没有办法让 CentOS 7 只使用 AD Unix 属性中的 UID 和 GID?

这是我的 smb.conf:

[global]
    workgroup = COMPANY
    client signing = yes
    client use spnego = yes
    kerberos method = secrets and keytab …
Run Code Online (Sandbox Code Playgroud)

active-directory sssd centos7

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

将 Synology NAS 配置为 freeIPA 客户端

我正在尝试在我的公司中部署 freeIPA。网络很简单:

  • < 10 台 FC20(和 FC21 测试版)台式机
  • < 5 台 FC20 服务器(包括带有 freeIPA 的服务器)
  • 1 台 Synology NAS DS1813+ (DSM 5.0)

我首先在 VM(包括 Synology NAS)上模拟所有内容。Synology 还应导出 NFS 共享并尽可能与 freeIPA 集成。另外,我希望它为 freeIPA 用户托管 NFS 主目录(主目录当前是客户端的本地目录)。

地位:

  • freeIPA 服务器启动 (4.1.1)
  • Fedora 客户端已注册,我可以使用 LDAP 用户登录
  • Synology:问题

关于 Synology 客户端状态和我的具体问题:

  • ipa-client-installDSM没有,所以我尝试遵循通用和零散的(据我所知没有最新的手册)说明,例如:
  • 它可以看到并使用 freeIPA 服务器作为唯一的 DNS 服务器
  • 提到的第一步是“安装 SSSD 1.5.x 或更高版本,如果尚未安装。
  • 问题是,SSSD 似乎不适用于 DSM。我能在这里做什么?
  • SSSD 的缺席是一个阻碍吗?
  • 下面的评论之一指出,这并没有阻止,因为 SSSD 只是一个客户端凭据缓存。但是:我可以忽略 SSSD 配置并忘记它吗,或者它的缺失是否意味着在客户端配置?它真的是完全可选的吗?
  • NFS 共享:假设我设法正确注册了 Synology,我不太清楚要遵循哪些步骤才能将其用作 LDAP 用户的家庭共享。任何有经验的人都可以给我一个简短的清单吗?特别是关于要遵循的步骤的顺序?我知道如何在 …

nfs ldap synology sssd freeipa

6
推荐指数
1
解决办法
2332
查看次数

使用 SSSD 配置 Sudo

尝试使用Windows AD帐户登录Linux系统。使用 SSSD 配置成功。

使用 LDAP 作为身份和访问提供程序,使用 Kerberos 作为身份验证提供程序。

我在没有将 Linux 系统加入域的情况下完成了这一切。

现在我尝试将 LDAP 配置为 sudo 提供程序。但它并不成功。我无法提升广告用户的 sudo 权限。我什至尝试过使用 sudoers 文件,在那里我可以提升特定用户的权限,但不能提升广告组的权限。

这是 SSSD 配置 wrt sudo 配置

**sudo_provider = ldap

ldap_sudo_search_base = ou=groups,dc=ad,dc=example,dc=com
ldap_sudorule_object_class = sudoRole
ldap_sudorule_object_class = top
ldap_sudorule_command = ALL
ldap_sudorule_host = ALL
ldap_sudorule_user = %domain_group
ldap_sudorule_runasuser = ALL
ldap_sudorule_runas = ALL
ldap_sudorule_runasgroup = ALL
ldap_sudorule_option = !authenticate**
Run Code Online (Sandbox Code Playgroud)

我尝试在调试级别 7 启用日志记录,它提到无法加载本地规则。

问候,乌代。

linux openldap sudo sssd

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

RHEL-5/6 的 sssd 与 nslcd

我们有 50 台 RH-5 机器和 70 台 RH-6 机器。我正在考虑决定我们应该为 LDAP 使用什么:

  1. nscd/nslcd 适用于所有 RH-5/RH-6 服务器
  2. nscd/nslcd 用于 RH-5 服务器,sssd 用于 RH-6 服务器
  3. sssd 适用于所有 RH-5/RH-6 服务器

SSSD 可用于两个版本(RHEL5 - sssd 1.5 和 RHEL6 - sssd 1.9+)

最后一个选项意味着 RHEL5 机器将运行 sssd 1.5。

我更喜欢尽可能具有相同软件和配置的环境,除非人们说 sssd 对于 RH-6 来说确实更好,而 nscd/nslcd 对于 RH-5 来说确实更好。

最好的选择是什么?

redhat ldap pam nss sssd

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

OpenLDAP/SSSD 自动将用户添加到本地组

我有许多运行各种 Linux 版本的服务器,所有服务器都通过 SSSD 设置为 OpenLDAP 客户端。我添加了一个 LDAP 组(系统管理员)。我还在我的所有服务器上添加了一个 sysadmins 组。sysadmins 组的成员会随着时间的推移而变化。

如何让 LDAP 组中的所有用户在登录时添加到本地组?

openldap sssd

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

SSSD 不返回组中用户的完整列表

我们已经设置了一个有效的 SSSD+Samba+Krb5 捆绑包,用于在 Linux 计算机上授权域用户。授权工作正常,但getent 组示例不会返回组中用户的完整列表。而id命令显示用户所属的特定组

\n

id mshepelev命令示例(pam_nas_admins组存在):

\n
    ~$ id mshepelev\n    uid=578290105(mshepelev) gid=1145492938(linuxadm) \xd0\xb3\xd1\x80\xd1\x83\xd0\xbf\xd0\xbf\xd1\x8b=128(vboxusers),132(libvirtd),\n6990039486(exchange_terminal),45633573(domain admins),6753567(domain users),4563345(it dept base),1019817232(printer_it),\n5673883(linuxadm),4356383822(buh),25472572456(pam_nas_admins)....\n
Run Code Online (Sandbox Code Playgroud)\n

getent 组 pam_nas_admins示例(该组中没有 mshepelev):

\n
    ~$ getent group pam_nas_admins\npam_nas_admins:*:6969932058:nhramchihin,apyataev,\nvshuykov,isaidashev,admin,nrosnovskiy,itugunov,\nmalfereva,mdimitraki,izinoviev,gkulakov,mcherenkov,kfomchenko,mkotov,aromanovskiy\n
Run Code Online (Sandbox Code Playgroud)\n
\n

更新\n
同样的情况出现在另一台电脑上,但对于用户 isaidashev 来说反之亦然。Id命令返回完整列表,getent 组 pam_nas_admins返回除用户本身之外的所有人(输出有mshepelev用户但没有isaidashev用户)

\n
\n

以下是配置文件:\n /etc/krb5.conf

\n
cat /etc/krb5.conf\n[logging] \n    default = FILE:/var/log/krb5libs.log \n    kdc = FILE:/var/log/krb5kdc.log \n    admin_server = FILE:/var/log/kadmind.log \n[libdefaults]\n    default_realm = example.com\n    kdc_timesync = …
Run Code Online (Sandbox Code Playgroud)

ldap samba sssd

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