标签: pam

什么是 nsswitch 兼容模式?

Red Hat 推荐我在 /etc/nsswitch.conf 中使用 compat 模式作为枚举 LDAP 用户的选项之一,但后来表示这不是一个经常使用的方法。

nsswitch.conf
passwd: files compat
passwd_compat: ldap

in passwd file, add +@netgroup.
Run Code Online (Sandbox Code Playgroud)

这是什么兼容模式?

redhat ldap pam nsswitch.conf pam-ldap

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

防止docker容器内的叉子炸弹

我目前正在努力限制我调用的用户的进程数sandbox

我在里面配置了进程限制,/etc/security/limits.conf如下所示:

sandbox            hard    nproc            100
Run Code Online (Sandbox Code Playgroud)

但是如果我想以sandbox用户身份连接到容器,ssh 会返回:

shell request failed on channel 0
Run Code Online (Sandbox Code Playgroud)

所以我登录root并检查了sandbox用户正在运行的进程数,但它少于 5。

那么是什么阻止了我通过 ssh 登录?
没有为sandbox用户设置限制 ssh 登录工作正常。

或者有没有其他方法可以防止分叉炸弹攻击?

ssh pam containers docker

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

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
查看次数

建议测试“pam.d/common-*”文件更改的方法

如何测试对 pam.d 配置文件的更改:

  • 我是否需要重新启动 PAM 服务来测试更改?
  • 我应该查看目录中列出的每项服务/etc/pam.d/吗?

我即将对pam.d/common-*文件进行更改,以将 Ubuntu 框放入活动目录控制的网络中。

我只是在学习该怎么做,所以我正在准备虚拟机中的配置,我计划在下周将其部署到金属中。

它是 Ubuntu 10.04 Beta 2 服务器的全新安装,因此除了 SSH 守护程序之外,所有其他服务都是库存。

linux ubuntu pam ubuntu-10.04

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

PAM:在pam_mkhomedir 之前执行命令?

当用户登录系统并且没有主目录时,我们想使用pam_mkhomedir创建用户的主目录。这是一种常见的做法。以下是 pam_mkhomedir 的简要说明:

如果会话开始时 pam_mkhomedir PAM 模块不存在,则 PAM 模块将创建用户主目录。这允许用户存在于中央数据库(例如 NIS、kerberos 或 LDAP)中,而无需使用分布式文件系统或预先创建大量目录。骨架目录(通常是/etc/skel/)用于复制默认文件,并为创建设置一个umask。

然而,这是一个运行 ZFS 的 FreeBSD 8.2 系统。我们需要先执行一个 ZFS 命令,因为我们希望每个用户有一个 ZFS 文件系统pam_mkhomedir可以做一个mkdir,但我们需要做类似的事情zfs create /zpool/home/$USER

有谁知道在用户的第一次登录会话期间是否可以使用 PAM 来执行命令?

freebsd zfs pam

8
推荐指数
1
解决办法
6506
查看次数

在 Kerberized Linux box 上添加本地用户/密码

现在,如果我尝试添加不在大学 Kerberos 领域中的非系统用户,无论如何都会提示我输入 Kerberos 密码。显然没有密码需要输入,所以我直接回车看看:

passwd: Authentication token manipulation error
passwd: password unchanged
Run Code Online (Sandbox Code Playgroud)

键入passwd newuser具有相同消息的相同问题。

我尝试使用pwconv,希望只需要一个影子条目,但它没有任何改变。

我希望能够添加一个不在域中的本地用户并为他们提供本地密码,而不必担心 Kerberos。

我在 Ubuntu 10.04 上。这是我的/etc/pam.d/common-*文件(Ubuntupam-auth-update软件包生成的默认值):

/etc/pam.d/common-account

# here are the per-package modules (the "Primary" block)
account [success=1 new_authtok_reqd=done default=ignore]        pam_unix.so
# here's the fallback if no module succeeds
account requisite                       pam_deny.so
# prime the stack with a positive return value if there isn't one already;
# this avoids us returning an error just because nothing …
Run Code Online (Sandbox Code Playgroud)

linux kerberos pam

8
推荐指数
1
解决办法
6441
查看次数

重新加载 /etc/security/limits.conf

我想要:

  • 为常驻内存设置一个 64GB 的软限制(因此,没有经验的用户会杀死他们的 run-amok 进程,但有经验的用户可以提高内存饥饿进程的限制)
  • 提高 nofile 的硬限制,但将软限制保持在 1024(所以如果某个程序需要更多的文件句柄,用户可以授予它们,但 run-amok 程序不会得到它们)。

据我所知,我应该能够在/etc/security/limits.conf(或/etc/security/limits.d/*)中做到这一点:

*        soft    rss             64000000
*        hard    nofile          50000
*        soft    nofile          1024
Run Code Online (Sandbox Code Playgroud)

但是,我找不到一种无需重新启动即可重新加载这些值的方法。我已经读到登录时会重新加载这些值;当我这样做时它有效,su - user但它不起作用ssh user@localhost

我在 /etc/pam.d 中有 pam_limits.so:

/etc/pam.d/login:session    required   pam_limits.so
/etc/pam.d/sshd:session    required     pam_limits.so
/etc/pam.d/su:session    required   pam_limits.so
Run Code Online (Sandbox Code Playgroud)

我在 sshd_config 中有 PAM:

/etc/ssh/sshd_config:UsePAM yes
Run Code Online (Sandbox Code Playgroud)

我知道我可以使用ulimitand设置值sysctl,但我想测试它/etc/security/limits.conf是否在做正确的事情而无需重新启动。

当人们使用 ssh 登录而不重新启动时,如何确保设置了这些值?

pam limits

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

如何在密码错误后延迟 sshd 登录

当尝试错误密码或尝试登录失败时,如何延迟来自 SSH 的重试响应。我希望延迟比平时多 2-3 秒。

我在 sshd_config 文件中找不到任何选项来实现相同的目标。

所以任何人都可以让我知道我应该怎么做。

networking security linux ssh pam

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

PBIS Open AD 身份验证在 ubuntu 上停止工作,出现错误:“用户帐户已过期”和“您的帐户是否已锁定?”

六个月以来,我们一直在使用 PowerBroker Identity Services Open 成功验证来自 ubuntu 主机的活动目录用户。

最近,在用户一次执行了apt-get upgrade200 多个包之后,AD 身份验证在多个工作站上停止工作。身份验证尝试给出错误,“密码无效”、“用户帐户已过期”或“您的帐户是否被锁定?”

我无法将问题与特定的软件包升级相关联,但使用相同软件包版本从头开始构建的工作站不会遇到此问题。我试过重新安装 PBIS 并验证所有配置文件,但我遗漏了一些东西......我不知所措,希望得到任何人的建议。下次发生这种情况时,我宁愿不必重建另一个盒子!

身份验证尝试

我首先验证 AD 用户帐户已启用、未锁定且未过期。本地用户身份验证通过 lightdm 和 ssh 工作正常。

  1. 轻量级

    • 有效凭证
      • 错误返回给用户“密码无效,请重试。”
      • auth.log:没有
      • 系统日志:无
    • 密码错误

      • 错误返回给用户“密码无效,请重试。”
      • 身份验证日志:

        lightdm: [lsass-pam] [module:pam_lsass]pam_sm_authenticate error [login:username][error code:40022]
        
        Run Code Online (Sandbox Code Playgroud)
      • 系统日志:

        lsass: [LwKrb5GetTgtImpl /builder/src-buildserver/Platform-8.0/src/linux/lwadvapi/threaded/krbtgt.c:276] KRB5 Error code: -1765328360 (Message: Preauthentication failed)
        lsass: [lsass] Failed to authenticate user (name = 'username') -> error = 40022, symbol = LW_ERROR_PASSWORD_MISMATCH, client pid = 17768
        
        Run Code Online (Sandbox Code Playgroud)
  2. ssh

ubuntu active-directory authentication pam likewise-open

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

是否可以忽略丢失的 PAM 模块?

我正在配置yubico-pam以使用来自 Yubikey 的挑战响应来启用无密码 sudo 访问。以下工作:

# /etc/pam.d/sudo
auth       sufficient     pam_yubico.so mode=challenge-response
auth       required       pam_opendirectory.so
account    required       pam_permit.so
password   required       pam_deny.so
session    required       pam_permit.so
Run Code Online (Sandbox Code Playgroud)

除非 pam_yubico.so 模块丢失、卸载或损坏,在这种情况下会被告知:

$ sudo su -
sudo: 无法初始化 PAM: 没有那个文件或目录

是否可以告诉 PAM 忽略丢失的模块,而不是简单地立即返回并阻止 PAM 继续评估堆栈?

mac-osx pam

7
推荐指数
1
解决办法
1500
查看次数