Лучший способ сделать это - использовать pam .
У /etc/pam.d
вас будет несколько файлов, один из них будет называться sshd
. Если вы хотите воздействовать только на ssh, а не на другие имена входа (например, GUI или реальный TTY), вам нужен этот файл.
Если вы хотите повлиять на все логины, вам нужен «общий» файл. Название этого другого файла «общего» варьируется в зависимости от дистрибутива, но вы можете отслеживать его вниз, следуя include
и substack
заявление в sshd
файле , пока вы не дойдете до базового файла.
После того, как вы определили файл /etc/pam.d
, который хотите использовать, добавьте в session
раздел такую строку :
session optional pam_exec.so quiet /etc/pam_session.sh
Это приведет к вызову /etc/pam_session.sh
каждый раз, когда кто-то входит в систему и выходит из системы (изящно или без изящества).
Теперь вам просто нужно создать /etc/pam_session.sh
. Ниже приведен пример, который вы можете использовать для запуска чего-либо каждый раз, когда кто-то выходит из системы:
#!/bin/sh
if [ "$PAM_TYPE" = "close_session" ]; then
something
fi
(не забудьте chmod a+x
сценарий)