Даже если вы не примените мой ответ, я надеюсь, что кое-что вам поможет.
Я не буду приводить подробности реализации, так как это зависит от вашего API.
Предположим, что вы используете «bash», поэтому в домашнем каталоге для каждого пользователя вы можете создать «.bashrc» (, если он еще не существует )и поставить какую-нибудь программу, которая просто отправляет SMS пользователю и возвращает пароль который отправил. Если тайм-аут или пароль не совпадают, выйдите из системы. Необходимо перехватывать сигналы 2, 11, 15, чтобы предотвратить события STOP/KILL. Я пишу код псевдо -для уточнения:
~/.bashrc:
trap_signals
sent_password = send_sms_program <msisdn> <timeout>
print "Enter password: "
input_password = read_password_from_console
if (<timeout>) {
logout
} else {
if (input_password == key) {
exit
} else {
logout
}
}