Я устанавливаю новый VPS с ubuntu 18.04, включая 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.
домен - это пользователь моего виртуального сервера, определенного в VPS. c314 / c315 увеличивалось каждый раз на 1 ... Раньше появлялось каждые 2-3 минуты, теперь каждые 5 минут.
Читая об этом в Интернете, все «решения» заключались в том, как удалить это ведение журнала из журнала, но ничего не объясняло, что это за сеансы открытия / закрытия в первую очередь.
Также при запуске loginctl list-sessions
эти сеансы накапливаются в режимах «активный = да» и «состояние = закрытие» и никогда не исчезают из списка. На данный момент таких сеансов 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
pam_unix сеансы завершаются нормально, как видно в журналах. Это увеличивающееся количество сеансов systemd-logind сеансы, которые по какой-то причине остаются открытыми, даже если они не содержат никаких процессов.
Обходной путь, который вы можете попробовать, - заставить systemd-logind чтобы убить все процессы сеанса, когда лидер сеанса выходит. Вы можете сделать это, изменив KillUserProcesses
и KillOnlyUsers
установка в /etc/systemd/logind.conf
:
KillUserProcesses=yes
KillOnlyUsers=domain
и перезапуск systemd-logind
:
systemctl restart systemd-logind
Однако это не отвечает на вопрос, почему сеансы не закрываются сами по себе, поскольку области сеанса пусты.
редактировать: О разнице между pam_unix и systemd-logind сеансы:
/var/run/utmp
. Вы можете перечислить их с w
или who
,loginctl list-sessions
Поскольку ты идентифицировал возможного виновника (в комментарии к этому ответу) вы можете применить другой обходной путь: заменить
@include common-session
в /etc/pam.d/su
с участием:
@include common-session-noninteractive
который не содержит pam_systemd. Когда вы изменяете PAM
файлы, применяются обычные меры предосторожности: держите корень оболочка активна (например, sudo -i
), пока вы не протестируете новую конфигурацию, на случай, если что-то сломается.