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)
这是什么兼容模式?
我目前正在努力限制我调用的用户的进程数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 登录工作正常。
或者有没有其他方法可以防止分叉炸弹攻击?
我刚刚将我的 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) 如何测试对 pam.d 配置文件的更改:
/etc/pam.d/吗?我即将对pam.d/common-*文件进行更改,以将 Ubuntu 框放入活动目录控制的网络中。
我只是在学习该怎么做,所以我正在准备虚拟机中的配置,我计划在下周将其部署到金属中。
它是 Ubuntu 10.04 Beta 2 服务器的全新安装,因此除了 SSH 守护程序之外,所有其他服务都是库存。
当用户登录系统并且没有主目录时,我们想使用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 来执行命令?
现在,如果我尝试添加不在大学 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软件包生成的默认值):
# 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) 我想要:
据我所知,我应该能够在/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 登录而不重新启动时,如何确保设置了这些值?
当尝试错误密码或尝试登录失败时,如何延迟来自 SSH 的重试响应。我希望延迟比平时多 2-3 秒。
我在 sshd_config 文件中找不到任何选项来实现相同的目标。
所以任何人都可以让我知道我应该怎么做。
六个月以来,我们一直在使用 PowerBroker Identity Services Open 成功验证来自 ubuntu 主机的活动目录用户。
最近,在用户一次执行了apt-get upgrade200 多个包之后,AD 身份验证在多个工作站上停止工作。身份验证尝试给出错误,“密码无效”、“用户帐户已过期”或“您的帐户是否被锁定?”
我无法将问题与特定的软件包升级相关联,但使用相同软件包版本从头开始构建的工作站不会遇到此问题。我试过重新安装 PBIS 并验证所有配置文件,但我遗漏了一些东西......我不知所措,希望得到任何人的建议。下次发生这种情况时,我宁愿不必重建另一个盒子!
我首先验证 AD 用户帐户已启用、未锁定且未过期。本地用户身份验证通过 lightdm 和 ssh 工作正常。
轻量级
密码错误
身份验证日志:
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)ssh
有效凭证
身份验证日志:
sshd[18237]: error: PAM: …Run Code Online (Sandbox Code Playgroud)我正在配置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 继续评估堆栈?