Відповіді:
Для всіх користувачів чи конкретного користувача? Для одного користувача встановіть його у своєму .bashrc
файлі; для всіх користувачів, перегляньте pam_exec .
Якщо користувачі приходять звідти sshd
, вам потрібно додати наступний рядок до /etc/pam.d/sshd
; інші файли залежно від джерела:
session optional pam_exec.so seteuid /path/to/my/hook.sh
Для тестування модуль включений як optional
, так що ви все ще можете увійти в систему, якщо він не працює. Після того, як ви переконаєтесь, що вона працює, ви можете перейти optional
на required
. Тоді реєстрація не буде можливою, якщо виконання сценарію вашого гака не буде успішним.
Примітка. Як завжди, коли ви змінюєте конфігурацію входу, залиште оболонку резервного копіювання відкритою на задньому плані і протестуйте логін з нового терміналу.
session include pam_exec.so seteuid /path/to/script
файл /etc/pam.d/system-remote-login
. Це правильно?
system-remote-login
або sshd
залежно від того, як користувач заходить.
auth optional pam_exec.so /path/to/my/hook.sh
в /etc/pam.d/common-auth
мати РАМ повідомити вас про будь-які події аутентифікації , які відбуваються. Ця програма також може надсилати вам push-повідомлення: github.com/benjojo/PushAlotAuth
є ще один спосіб, який впливає лише на користувачів, які використовують ssh, а не локальні (що може бути краще в надзвичайних ситуаціях)
дивіться фрагменти зі сторінки ssh man нижче.
в цьому випадку користувачі зазвичай можуть змінювати самі файли (трохи як .bashrc)
~/.ssh/rc Commands in this file are executed by ssh when the user logs in, just before the user's shell (or command) is started. See the sshd(8) manual page for more information.
і це глобально і не може змінюватися звичайним користувачем
/etc/sshrc Commands in this file are executed by ssh when the user logs in, just before the user's shell (or command) is started. See the sshd(8) manual page for more information.
/etc/ssh/sshd_config
(див. man sshd_config
деталі)