pam_unix 为我的域用户生成大量打开/关闭会话

pam_unix 为我的域用户生成大量打开/关闭会话

我使用 ubuntu 18.04 设置了一个新的 VPS,包括 virtualmin/usermin。在 auth.log 中,我看到很多

su[12936]: Successful su for domain by root
su[12936]: + ??? root:domain 
systemd-logind[148]: New session c315 of user domain .
su[12936]: pam_unix(su:session): session opened for user domain by (uid=0)
su[12936]: pam_unix(su:session): session closed for user domain 

在系统日志中,我看到很多

systemd[1]: Started Session c314 of user domain.
systemd[1]: Started Session c315 of user domain.

domain 是我在VPS中定义的虚拟服务器的用户。c314/c315每次增加1…以前每2-3分钟出现一次,现在是每5分钟出现一次。

在互联网上阅读有关此问题的信息时,所有的“解决方案”都是如何从日志中删除此日志,但没有任何内容首先解释所有这些打开/关闭会话是什么。

此外,运行时loginctl list-sessions这些会话会累积在“active=yes”和“state=closing”模式下,并且永远不会从列表中消失。目前有 95 个这样的会话。

我的 VPS 发生了什么事?谁打开/关闭会话这么多次?为什么?此外,为什么这些会话从未从会话列表中消失?

谢谢

更新

loginctl session-status c315
c315 - domain (1000)
           Since: Sat 2020-02-08 20:27:08 UTC; 23h ago
          Leader: 12936
             TTY: ???
          Remote: user root
         Service: su; type tty; class user
           State: closing
            Unit: session-c315.scope

Unit user-1000.slice (/user.slice/user-1000.slice):
└─session-2691929.scope
├─19035 sshd: domain [priv]
├─19051 sshd: domain@pts/0
├─19052 -bash
├─20124 sudo systemd-cgls -u user-1000.slice
├─20125 systemd-cgls -u user-1000.slice
└─20126 pager

答案1

pam_unix会话正常退出,如日志中所示。会话数量的增加是systemd-logind会话由于某种原因保持打开状态,即使它们不包含任何进程。

您可以尝试的一种解决方法是强制systemd-logindKillUserProcesses当会话领导者退出时,终止所有会话进程。您可以通过修改 中的和KillOnlyUsers设置来实现/etc/systemd/logind.conf

KillUserProcesses=yes
KillOnlyUsers=domain

并重新启动systemd-logind

systemctl restart systemd-logind

但是,这并不能回答这个问题:由于会话范围是空的,为什么会话不能自行关闭。

编辑:关于pam_unixsystemd-logind会议:

  • pam_unix会话由添加到或删除的小记录组成/var/run/utmp。您可以使用w或列出它们who
  • systemd-logind会话更加繁重,如pam_systemd 的手册页. 悬垂systemd-logind消耗更多资源。它们列有loginctl list-sessions

自从你确定了可能的罪魁祸首(在这个答案的评论中),你可以应用另一种解决方法:替换

@include common-session

/etc/pam.d/su

@include common-session-noninteractive

不包含pam_systemd修改PAM文件时,应采取通常的预防措施:保留shell 处于活动状态(例如sudo -i),直到您测试新的配置,以防您破坏某些东西。

相关内容