Почему мое /etc/motd не отображает приветственное сообщение при входе в систему?

Вопрос или проблема

У меня есть виртуальная машина Debian/Linux в VirtualBox.

# uname -a
Linux debian 4.19.0-14-amd64 #1 SMP Debian 4.19.171-2 (2021-01-30) x86_64 GNU/Linux

# vi /etc/motd

##########################
Привет, добро пожаловать на сервер!
##########################


~                                                                                                                                                            
~                                                                               
~                                                                               
~                                                                               
~                                                                               
"/etc/motd" 6 строк, 84 символа записано
:wq!

Когда я выхожу из терминала и вхожу как root, сообщение в /etc/motd не появляется.

root@debian:~# 

Как я могу сделать так, чтобы сообщение появилось?

Современный Debian (и многие другие дистрибутивы) используют pam_motd, который запускается из их PAM стека. Смотрите эту статью в вики Debian для получения дополнительных сведений.

Возможно, у вас настроенная окружение PAM, или у вашего пользователя root есть файл ~/.hushlogin.

Вы можете настроить баннер в ssh_config (или sshd_config – это зависит от ОС). Обычно он находится в /etc/issue, и всё, что вы поместите в этот файл issue, будет отображаться при входе через ssh.

Ответ или решение

Проблема отсутствия сообщения в файле /etc/motd при входе в вашу систему Debian/Linux может быть связана с несколькими факторами, которые стоит рассмотреть. Ниже приведены основные шаги для диагностики и решения данной проблемы.

1. Проверка конфигурации PAM (Pluggable Authentication Modules)

В современных дистрибутивах Debian для отображения сообщения из /etc/motd используется модуль PAM, который управляет сообщениями при входе. Убедитесь, что ваш файл конфигурации PAM настроен правильно. Для этого откройте файл /etc/pam.d/sshd (если вы подключаетесь по SSH) или /etc/pam.d/login (если вы входите непосредственно в консоль) и проверьте, присутствуют ли следующие строки:

session optional pam_motd.so motd=/run/motd.dynamic
session optional pam_motd.so

Эти строки обеспечивают вывод сообщения из файла /etc/motd при завершении сеанса входа.

2. Проверьте наличие файла ~/.hushlogin

Если для вашего пользователя (в данном случае root) существует файл ~/.hushlogin, то он будет предотвращать отображение сообщения MOTD. Проверьте это, выполнив в командной строке:

ls -la ~/.hushlogin

Если файл существует, вы можете удалить его:

rm ~/.hushlogin

3. Проверка наличия dynamic MOTD

В Debian используется динамический MOTD, который может перезаписывать вывод статического /etc/motd. Убедитесь, что в файле /run/motd.dynamic нет каких-либо настроек или ошибок, которые могли бы препятствовать отображению статического сообщения.

4. Перезагрузка системы и перезапуск SSH сервиса

После внесения изменений или проверок, рекомендуется перезапустить SSH сервер:

systemctl restart ssh

Или для локального входа просто выйдите из терминала и попробуйте войти заново.

5. Проверка конфигурации sshd_config для SSH

Если вы подключаетесь через SSH, просмотрите файл /etc/ssh/sshd_config и убедитесь, что параметры PrintMotd и PermitUserFlushing установлены соответственно:

PrintMotd yes
PermitUserFlushing yes

6. Тестирование ошибок

В случае, если вышеперечисленные шаги не помогли, попробуйте протестировать вход от имени другого пользователя, чтобы исключить возможность проблемы, связанной с конфигурацией конкретного пользователя. Это также поможет вам увидеть, появляется ли сообщение MOTD у других пользователей.

Заключение

После выполнения вышеуказанных шагов вы должны увидеть ваше приветственное сообщение при входе в систему. Если проблема все еще сохраняется, стоит обратиться к лог-файлам системы (например, /var/log/auth.log), где могут содержаться подсказки по дальнейшему устранению проблемы.

Оцените материал
Добавить комментарий

Капча загружается...