Я не знаю, возможно ли это. Но могу ли я установить что-нибудь или возможно ли создать какой-либо скрипт, который будет выполнен после того, как я войду на свой сервер Ubuntu как root?! Скрипт с Ex, 3 контрольными вопросами
Бывший.
В:Когда твой день рождения?!
А :10.10.10 // if not die ban4Life
Это возможно?! Спасибо, и извините за мой"невежество"
решение1
Предварительная мысль: почему бы вам не придерживаться традиционной аутентификации на основе пароля или, что еще лучше,аутентификация с открытым ключомкак и все остальные? Ваше решение — это, по сути, второй, но более простой для угадывания пароль, хранящийся в виде обычного текста. Пользовательские схемы аутентификации редко повышают, а часто даже снижают безопасность.
Если вам не нравится PAM, вы можете настроить SSH на использование определенного сценария входа для root
. Это может выглядеть примерно так:
#!/bin/sh
set -eu
while read -rp 'What is your birthday?!' REPLY
do
case "$REPLY" in
'')
# empty input; ask again
;;
'10.10.10')
# Run original command if available or simply the user's log-in shell
exec ${SSH_ORIGINAL_COMMAND-$SHELL -l};;
*)
break;;
esac
done
echo "You're not welcome here. Go away!" >&2
exit 1
Сохраните скрипт, например, как /root/login-with-birthday.sh
, сделайте его исполняемым и убедитесь, что обычные пользователи не смогут прочитать файл, поскольку он содержит секрет ( chmod 0700
). Затем укажите sshd
использовать его в качестве команды входа, добавив правило в /etc/ssh/sshd_config
:
Match user root
ForceCommand /root/login-with-birthday.sh