我最近遇到了一个问题,就是我的AD集成在一些debian盒子上。 我使用SSSD和krb5来允许PAM根据Active Directory同步和validation用户。 这已经工作了一年多,直到ADpipe理员将AD用户的UPN从[email protected]更改为[email protected] 。 现在,同步和用户名识别仍然有效,但authentication突然失败,因为发送给krb5的名称似乎是“ [email protected] ”。 krb5不知道这个领域,所以无法authentication用户。 将krb5.conf文件领域更改为ABCCOMPANY不起作用,因为领域实际上没有改变。 我可以kinit [email protected]使用kinit [email protected] ,它可以很好地logging我。 我不能,但是做kinit [email protected]因为它使krb5抱怨以下消息: kinit: Cannot find KDC for realm "ABCCOMPANY.DK" while getting initial credentials 我觉得这是有道理的。 SSSD将UPN中的ABCCOMPANY.DK发送到krb5,但krb5不能识别该领域,因为它不存在。 所以,问题是:我如何configurationkrb5来识别领域不同于UPN? 而纯粹的好奇心是一个额外的问题:这种做法(将UPN设置为除域名之外的其他东西)是一种可以接受的做事方式吗? 有一个域组件并不匹配一个域,这似乎很奇怪。 (Mon Jan 23 13:12:59 2017) [sssd[nss]] [sss_cmd_get_version] (0x0200): Received client version [1]. (Mon Jan 23 13:12:59 2017) [sssd[nss]] [sss_cmd_get_version] (0x0200): Offered version [1]. […]
我想阻止一些蛮力强制我的SMTP服务器的主机。 我目前正在使用SSHD的DenyHosts,并想知道我是否也可以添加SMTP服务。 这可能是基于这个http://www.mail-archive.com/[email protected]/msg00833.html 目前在我的auth.log中,我得到: Jan 3 17:58:40 servername saslauthd[10729]: pam_unix(smtp:auth): check pass; user unknown Jan 3 17:58:40 servername saslauthd[10729]: pam_unix(smtp:auth): authentication failure; logname= uid=0 euid=0 tty= ruser= rhost= Jan 3 17:58:42 servername saslauthd[10729]: do_auth : auth failure: [user=zzz] [service=smtp] [realm=] [mech=pam] [reason=PAM auth error] 但是,从日志中我没有得到攻击者的主机。 (我正在使用Postfix) 也许有更多的“标准化”方式与DenyHosts做到这一点,或者是否有其他select?
我试图编写一个bash脚本,它将在被pam_exec调用时执行rsync。 我尝试了几种不同的方式,我不确定我做错了什么。 当我尝试通过添加login运行脚本 session optional pam_exec.so /usr/bin/local/sync.sh 到我的sshd文件,它给了我12退出码。 如果我login然后手动运行我的脚本,它允许我连接到远程服务器,它列出了我的文件,但它实际上并没有同步任何东西。 我已经尝试了下面的代码使用buth $USER和$PAM_USER 。 $PAM_USER根本不起作用。 #!/bin/sh rsync -azv -e ssh $USER@remote_server:/home/html/$USER/ /home/html/$USER
我花了很多很多的快乐时光来探索集成RHEL7和Active Directory所需的sssdconfiguration。 其中很大一部分包括浏览SSSD和AD集成的许多post,特别是在AD中进行本地UID查找。 虽然这些启发,似乎没有涵盖我的情况。 我目前的问题是,我可以使用Windows用户(使用Windows用户的密码“DOMAIN1 \ sales1”)通过SSHlogin,SSSD将正确validationWindows用户的状态。 如果Windows用户被禁用,或帐户已过期,则login失败 – 全部都应该如此。 如果我通过使用与windows用户具有相同id的linux用户(使用linux用户密码的“sales1”)通过SSHlogin,SSSD将在AD中查找并匹配windows用户,但不会validationAD帐户。 我已经将linux用户的UID应用到了windows用户的uidNumber属性,以帮助AD-linux用户匹配,但是当我使用linux用户凭证login时,似乎没有任何东西可以影响AD用户状态validation。 sssd.conf [sssd] domains = domain1.local config_file_version = 2 services = nss, pam debug_level = 7 [domain/domain1.local] ad_domain = domain1.local krb5_realm = DOMAIN1.LOCAL realmd_tags = manages-system joined-with-adcli id_provider = ad auth_provider = ad access_provider = ad chpass_provider = ad ## We do NOT want […]
我正在尝试设置PAM / LDAP,以便当login的SSH用户使用passwd更改密码时,它将在更新LDAP条目之前使用SHA1encryption密码。 我有这个 # /etc/ldap.conf … rootbinddn cn=Manager,dc=ourdomain,dc=com rootpw secret pam_crypt local 当用户使用passwd更改密码时,在LDAP中,条目看起来像这样 {crypt}41H84HEld3 所以它就像crypt 。 我不知道如何强制它是SHA / SHA1 。 我尝试添加 pam_password sha 到/etc/ldap.conf但是这个密码刚刚出现并以明文forms存储在LDAP中。
为了提高Ubuntu Linux机器上无头用户下运行的守护进程的FD限制,我们在/etc/security/limits.conf soft nofile 10000 hard nofile 10000 我们还在/etc/pam.d/login中添加了session required pam_limits.so。 所有已注销并重新login的用户都会反映这些更改。 无论新用户开始什么新的stream程,都会获得新的FD限制。 但是对于在无头用户下运行的守护进程来说,这些变化并没有得到体现。 在无头用户下运行的守护进程可以如何反映这些变化?
我在一家大公司工作,可以远程使用其中央只读LDAP服务器。 LDAP服务器不允许匿名绑定。 为了使用这个服务器在我的小型服务器上用pam模块进行用户身份validation,我需要一个帐户,这个帐户将LDAP上的数据公开给我。 帐户数据通常填充在configuration的binddn和bindpw字段中。 正如我理解pam模块通常使用binddn和bindpwlogin,然后执行search,然后绑定每个愿意login的用户。 但是服务器的pipe理员不喜欢把所有的数据暴露给我。 所以我的问题是: 如何在没有binddn账户的情况下configurationpam? 理想情况下,每个用户的直接绑定应执行,而无需事先loginbinddn帐户。
以前,我问过在RHEL6下使用pam_tally2 。 我想提出这个问题和答案来logging相同的函数推荐使用pam_faillock over pam_tally2 ; Red Hat 6中build议的临时帐户locking策略是什么?
我试图理解FreeBSD 10.0上PAMconfiguration的错误行为 本机configuration有两个不同的身份validation领域,一个是默认的Unix身份validation,另一个是使用System Security服务守护程序(sssd)。 在这一刻我在/etc/pam.d/sshd使用这个configuration,因为我只是想允许sshloginsssd。 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 […]
我已经build立了我的系统,允许LDAP或本地密码login。 我通过向PAM添加“密码足够的pam_ldap.so”并在之后调用“pam_unix2.so”来完成此操作。 不过,我想要求某个用户组仅针对LDAP进行身份validation,而不允许使用pam_unix2.so。 有没有办法做到这一点?