Я хотел изменить MOTD, который отображается, когда вы входите в систему на компьютере через TTY, который, кажется, работает, но почему-то он не просто показывает MOTD в /etc/motd
и /etc/update-motd.d/
, но и другое сообщение.
Это отображается, когда я вхожу на свой сервер:
sam@laptop:~$ ssh <user>@<server>
Welcome to Ubuntu 12.04.2 LTS (GNU/Linux 2.6.32-042stab068.8 i686)
* Documentation: https://help.ubuntu.com/
No mail.
Last login: Thu Feb 21 19:20:55 2013 from <ip>
Welcome to Ubuntu 12.04.2 LTS (GNU/Linux 2.6.32-042stab068.8 i686)
* Documentation: https://help.ubuntu.com/
<user>@<server>:~$
Мой update-motd.d
содержит два файла, 00-header
и 10-help-text
.
00-header
содержит следующее:
[ -r /etc/lsb-release ] && . /etc/lsb-release
if [ -z "$DISTRIB_DESCRIPTION" ] && [ -x /usr/bin/lsb_release ]; then
# Fall back to using the very slow lsb_release utility
DISTRIB_DESCRIPTION=$(lsb_release -s -d)
fi
printf "Welcome to %s (%s %s %s)\n" "$DISTRIB_DESCRIPTION" "$(uname -o)" "$(uname -r)" "$(uname -m)"
И 10-help-text
содержит это:
[ -r /etc/lsb-release ] && . /etc/lsb-release
if [ -z "$DISTRIB_RELEASE" ] && [ -x /usr/bin/lsb_release ]; then
# Fall back to using the very slow lsb_release utility
DISTRIB_RELEASE=$(lsb_release -sr)
fi
URL="https://help.ubuntu.com/"
if uname -r | grep -qs "\-server"; then
URL="https://help.ubuntu.com/$DISTRIB_RELEASE/serverguide/C"
fi
printf "\n * Documentation: %s\n" "$URL"
Это компенсировало бы часть MOTD до No mail.
. Но откуда все остальное?
MOTD можно распечатать sshd
, или PAM. Возможно, это делают оба.
Проверьте свои /etc/ssh/sshd_config
для следующих:
PrintMotd yes
Если этой строки нет, возможно, по умолчанию yes
(хотя Debian / Ubuntu меняют значение по умолчанию на no
).
Проверьте свою конфигурацию PAM в /etc/pam.d/
для следующих:
session optional pam_motd.so
Попробуйте отключить их по одному, чтобы увидеть, что изменится.
Если вы используете Ubuntu, вы можете попробовать:
sudo nano /etc/ssh/sshd_config
и проверьте, чтобы увидеть PrintMotd
и UsePam
оба установлены в значение true, так было со мной.
Заметка: Следуя вышеизложенному, вы можете сделать sudo service ssh restart
и вы должны увидеть только один Motd при входе в систему.
После тестирования на Debian 8:
Именно эта опция в /etc/pam.d/login печатает еще один motd
session optional pam_exec.so type=open_session stdout /bin/uname -snrvm