Questions tagged «pam»

可插拔身份验证模块处理系统上运行的应用程序或服务的身份验证任务。

3
为什么输入错误密码后会有很大的延迟?
我注意到关于密码的一件奇怪的事(根据我的说法)。例如,如果我在登录时输入了错误的密码,则系统会提示我几秒钟的延迟。当我尝试sudo使用错误的密码时,我还必须等待外壳说“抱歉,再试一次”。 我想知道为什么“识别”不正确的密码需要这么长时间?在我使用的多个发行版(甚至OSX)上都可以看到这一点,所以我认为这不是发行版特定的东西。

4
允许user1不用密码即可“ su-user2”
我需要允许用户martin切换到martin-test没有密码的用户 su - martin-test 我认为这可以在中配置/etc/pam.d/su。该文件中已经有一些行可以取消注释。但是,我不喜欢将用户添加martin到group 的想法wheel。martin除了切换到,我不想授予更多特权martin-test。我也不想使用sudo。 在保持用户特权martin最小化的同时,最好的方法是什么?


2
如何在第一次使用ssh登录时强制用户更改密码?
我试图强迫新创建的用户在第一次使用ssh登录时更改密码。为了安全起见,我想给他一个安全的密码,直到他第一次登录。到目前为止,我做了以下工作: useradd -s /bin/bash -m -d /home/foo foo passwd foo 这样做chage -d 0 foo只会给我Your account has expired; please contact your system administratorssh登录错误。
28 linux  bash  ssh  login  pam 

3
SSH用户登录后如何防止关机?
我正在管理网络环境,昨天发生了一个有趣的情况。当普通用户要求关闭主机时,如果其他用户在本地登录,则拒绝这样做。但是,当其他用户通过SSH登录时,情况并非如此。如果一个用户在本地登录,并且一个用户通过SSH登录,并且本地登录的用户尝试关闭,则即使没有警告,该操作也会成功,并且另一用户的SSH连接会突然终止。我的问题是,有没有办法像政策对本地用户一样防止这种情况发生?我已经在手册页中sshd_config查找了内容,但找不到任何相关的内容。 编辑(其他信息): 网络上有4种操作系统:Mandriva 2009,Mandriva 2010.2,Mandriva 2011和Ubuntu 11.04。我要指的特定情况是在Mandriva 2009主机上有SSH用户,在Mandriva 2011主机上有本地用户。 Mandriva 2009主机使用GNOME 2.28环境,2010.2主机使用GNOME 2.32,2011主机使用KDE Plasma,而Ubuntu 11.04主机使用Unity。 更新资料 正如我在这个问题中指出的那样,我调查了文件polkit下的动作,/usr/share/polkit-1/actions/并在文件中找到了org.freedesktop.consolekit.policy一个org.freedesktop.consolekit.system.stop-multiple-users引发消息的动作 System policy prevents stopping the system when other users are logged in 我在想(由于org.freedesktop.*命名约定),这是某种通过D-BUS发送到DM的信号。我认为,如果我能找出触发此polkit动作的信号,则应该能够修改其行为。有任何想法吗? 更新2 我今天尝试了一个小实验,它给了我非常奇怪的结果。我尝试通过SSH登录到一个框,并确保没有其他用户登录任何VT。如果我Shutdown从GDM的“操作”菜单中选择,则会收到期待已久的策略消息,通知我没有其他用户登录就无法进行身份验证。但是,如果我使用GDM本地登录并选择要关闭GNOME菜单中的框,SSH会话将像以前一样被破坏。这怎么可能?当我shutdown从GDM 发起请求时与从内发起请求时,行为是否有所不同gnome-session?那能告诉任何人什么可以帮助我解决问题的信息吗?
20 ubuntu  ssh  shutdown  pam  mandriva 

2
/ etc / securetty中条目的影响
默认情况下,在RHEL 5.5上,我有 [deuberger@saleen trunk]$ sudo cat /etc/securetty console vc/1 vc/2 vc/3 vc/4 vc/5 vc/6 vc/7 vc/8 vc/9 vc/10 vc/11 tty1 tty2 tty3 tty4 tty5 tty6 tty7 tty8 tty9 tty10 tty11 每种条目类型(控制台,vc / 和tty)之间的区别是什么。具体来说,添加和删除每种条目类型的最终结果是什么? 我的理解是,它们会影响您登录的方式和时间,但是还有其他影响吗?以及什么时候可以,什么时候不能登录(取决于那里有哪些条目)? 编辑1 我所知道的是tty 1-6对应于您是否可以使用CTRL-ALT-F1到CTRL-ALT-F6从前6个控制台登录。我一直以为是虚拟控制台,所以有点困惑。控制台也对应什么?谢谢。 编辑2 如果在单用户模式下有什么影响?
19 linux  security  rhel  login  pam 


4
如何停止特定用户在auth.log中的sudo PAM消息?
我正在使用Zabbix监视环境,并每60秒zabbix_agentd以用户身份执行zabbix一个自定义脚本;它用于sudo以方式运行此脚本root。 在/var/log/auth.log我看到的每60秒: Aug 11 17:40:32 my-server sudo: pam_unix(sudo:session): session opened for user root by (uid=0) Aug 11 17:40:32 my-server sudo: pam_unix(sudo:session): session closed for user root 我想阻止此消息淹没我的日志。我在/etc/pam.d/sudo文件之前添加了以下行session required pam_unix.so: session [success=1 default=ignore] pam_succeed_if.so service in sudo quiet uid = 0 消息消失了。 但是问题是,当有人使用sudoas 执行脚本时,我以此方式抑制了每条PAM消息root。 我只想停止对用户zabbix(而不是所有其他用户)的消息。sudo知道zabbix用户想要使用root特权执行脚本,并且有什么办法告诉PAM吗?使用时,如何告诉PAM不要为特定用户登录sudo? 注意:我尝试过滤syslog中的消息。尽管这有效,但是它具有与上述相同的问题,即它太乱了,因为日志消息没有指出哪个用户正在成为root用户。

4
远程登录时,组与本地组不同
我们将用户存储在LDAP中,还有一些在不同系统中具有意义的组(包括在内的组织角色wheel)。也有工作站本地的组,例如,audio或video不希望放入LDAP中的组。现在,如果我在本地登录,我会得到那些本地组,但是如果我通过SSH登录到同一台机器上,我将缺少它们。如果我su以后直接使用,它们当然会回来。我可能走错了路,但怀疑PAM。 来自的相关条目 nsswitch.conf passwd: compat ldap shadow: compat ldap group: compat ldap 至于pam,始终是auth行,但其他行都相同 /etc/pam.d/sshd auth include system-remote-login /etc/pam.d/system-remote-login(与system-local-login我可能要补充的内容相同) auth include system-login /etc/pam.d/system-login auth required pam_tally2.so onerr=succeed auth required pam_shells.so auth required pam_nologin.so auth include system-auth auth optional pam_gnome_keyring.so account required pam_access.so account required pam_nologin.so account include system-auth account required pam_tally2.so …

2
为什么sudo -i不为目标用户设置XDG_RUNTIME_DIR?
XDG_RUNTIME_DIR是systemctl --user工作所必需的。 我已经设置了ubuntu服务器16.04来运行systemd用户会话。现在,当尝试管理它们时,我发现当通过sudo -u $user -i甚至更改用户时su - $user,环境尚未XDG_RUNTIME_DIR设置,无法systemctl --user正常工作。但是,当我ssh直接进入该用户时,它的设置正确。 如果我正确理解了文档,则应libpam-systemd在创建用户会话时进行设置。用户切片已正确启动,因为XDG_RUNTIME_DIR应该/run/users/$uid存在指向point()的目录。我很犹豫只是将其硬编码进去,.bash_profile因为当pam应该照顾它时,这似乎很麻烦(尽管可行)。 我可以,当然,加XDG_RUNTIME_DIR至env_keep在sudoers,但这只是保持sudoing用户的环境,这是不是我想要的。我想要目标用户的环境。 我真正想知道的是,如何使用正确设置会话ssh,但不能使用suor 正确设置会话sudo -i?
14 ssh  systemd  sudo  pam 

2
PAM-必需和足够的控制标志
我正在学习PAM,对于控制标志的某种组合的含义我一无所知。从Red Hat文档中,我们可以得到: 这种PAM的必要失败最终将导致PAM-API返回失败,但是仅在调用了其余的堆叠模块(针对该服务和类型)之后 必需 等所需,然而,在这样的模块返回失败的情况下,控制被直接返回到应用程序。 这种模块的足够成功足以满足模块堆栈的认证要求(如果先前的必需模块失败,则忽略该模块的成功)。此模块的故障不认为是满足该类型成功的应用程序的致命危险。如果模块成功,则PAM框架会立即将成功返回给应用程序,而无需尝试任何其他模块。 因此,据我所知,如果一个模块requisite发生故障,则不会解析整个模块堆栈,并且控件将立即返回给应用程序。如果模块sufficient成功,则不会解析其余的模块堆栈,并且控件将立即返回到应用程序。如果模块required发生故障,则将解析整个堆栈。 现在,我无法理解某个模块required失败而另一个模块sufficient成功时的行为。

7
vsftpd无法通过pam身份验证
在Fedora 16上将经过验证的vsftpd配置移动到新服务器上时,我遇到了一个问题。一切似乎都按预期进行,但用户身份验证失败。我在任何日志中都找不到指示发生了什么的条目。 这是完整的配置文件: anonymous_enable=NO local_enable=YES write_enable=YES local_umask=022 dirmessage_enable=YES xferlog_enable=YES connect_from_port_20=YES xferlog_file=/var/log/vsftpd.log xferlog_std_format=YES idle_session_timeout=0 data_connection_timeout=0 nopriv_user=ftpsecure connect_from_port_20=YES listen=YES chroot_local_user=YES chroot_list_enable=NO ls_recurse_enable=YES listen_ipv6=NO pam_service_name=vsftpd userlist_enable=YES tcp_wrappers=YES FTP向我询问用户名和密码,我提供了它们,登录错误。我已经验证,该用户能够从ssh登录。东西搞砸了pam_service。 匿名(如果更改为允许)似乎运行良好。 SELinux已禁用。 Ftpsecure似乎配置良好...我完全不知所措! 以下是我没有成功检查的日志文件: /var/log/messages /var/log/xferlog #empty /var/log/vsftpd.log #empty /var/log/secure 在中找到了一些东西/var/log/audit/audit.log: type=USER_AUTH msg=audit(1335632253.332:18486): user pid=19528 uid=0 auid=4294967295 ses=4294967295 msg='op=PAM:authentication acct="kate" exe="/usr/sbin/vsftpd" hostname=ip68-5-219-23.oc.oc.cox.net addr=68.5.219.23 terminal=ftp res=failed' …

3
使用UsePAM的基于密码和SSH密钥的登录已过期是
有一台SLES 11机器。用户通过SSH和pubkey登录(混合使用,有些用户使用密码,有些用户使用ssh密钥) sshd_config具有: UsePAM yes PasswordAuthentication yes PubkeyAuthentication yes 问题:如果使用pubkey登录的用户的密码过期,则系统将提示该用户更改密码。 问题:如果用户具有有效的SSH密钥并且密码已过期,我们如何设置PAM或sshd配置以允许用户登录?- 无需弹出“更改密码”。 UPDATE#1:解决方案不能是:“ UsePAM no” SERVER:~ # cat /etc/pam.d/sshd #%PAM-1.0 auth requisite pam_nologin.so auth include common-auth account requisite pam_nologin.so account include common-account password include common-password session required pam_loginuid.so session include common-session SERVER:~ # UPDATE#2:解决方案不能是:将用户密码设置为永不过期 更新#3: SERVER:/etc/pam.d # cat common-account #%PAM-1.0 …
12 ssh  users  password  pam 

2
5次尝试登录失败后如何锁定用户?
5次尝试登录失败后如何锁定用户? 我收集了一些发行版/版本说明,但是无法测试。 RHEL4:通过添加: auth required /lib/security/$ISA/pam_tally.so no_magic_root account required /lib/security/$ISA/pam_tally.so deny=5 reset no_magic_root 至: /etc/pam.d/system-auth /etc/pam.d/login /etc/pam.d/sshd RHEL4:??? SLES9:通过添加: auth required pam_tally.so no_magic_root account required pam_tally.so deny=5 reset no_magic_root 至: /etc/pam.d/login /etc/pam.d/sshd SLES11或SLES10:通过添加: auth required pam_tally.so deny=5 onerr=fail per_user no_lock_time 至: /etc/pam.d/common-auth 通过添加: account required pam_tally.so 至: /etc/pam.d/common-account 问题:有人可以确认一下,这是5次尝试登录失败后锁定用户的有效方法吗?或如何做? ps: …
12 password  pam  lock 

0
在i3wm自动登录上解锁登录gnome-keyring
问题 这个问题似乎已经被询问了十亿次,但是我仍然完全无法自动解锁我的登录密钥环。 背景 我沿着这些行自动登录,chvt和startx 进入i3wm,然后启动修改后的i3lock。我确实希望我的gnome登录密钥环在登录时(或在解锁i3lock时)自动解锁,但是我无法成功实现我在网上找到的任何说明。 发现 该牌坊维基有关于这个我试过,但未能做一个整体的事情。我还查看了其他各种问题/答案,这些类似的指示都无济于事。 我注意到的一件奇怪的事情是我无法通过解锁登录密钥环echo $LOGINPASSWORD | gnome-keyring-daemon --unlock。journalctl报告 Jul 07 20:08:16 ERIS gnome-keyring-daemon[26585]: failed to unlock login keyring on startup 当我打开海马手动解锁时,它报告登录密码已更改,并要求我输入旧密码。journalctl报告 Jul 07 20:08:43 ERIS gnome-keyring-daemon[26585]: fixed login keyring password to match login password 在此之后,我将无法再次使用密码解锁密钥环(幸运的是,我事先做了备份)。 额外信息 这是一些相关的/etc/pam.d/文件,希望这里对LOL不敏感(为简洁起见删除了注释,顺序保持不变。请注意,我也尝试使用此.xinitrc位,但未执行任何操作)。pam_gnome_keyring.so除了/etc/pam.d/i3lock中的内容外,我唯一手动添加的内容是位;默认情况下或由于其他软件包而已存在任何其他内容。 /etc/pam.d/login auth optional pam_faildelay.so delay=3000000 auth [success=ok new_authtok_reqd=ok ignore=ignore …

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.