Вопрос

Я столкнулся с проблемой, когда я получаю две распечатки моего файла /etc / motd в Gentoo Linux.sshd выполняет одну из распечаток, и я могу переключить это, настроив /etc/ssh/sshd_config, но я не могу узнать, кто печатает вторую копию.Я не могу отключить sshd от распечатки motd из-за требований аудита.Я запускаю оболочку bash, чего бы это ни стоило

Есть какие-нибудь идеи, кто напечатает второй экземпляр?Я не думаю, что это bash, так как когда я меняю /etc/passwd на использование /bin/ksh для своей оболочки, я по-прежнему получаю отображаемый motd.

Это не проблема с /etc /, поскольку он содержит строку "Это (\ s \ m ) (\l)", которая печатается только тогда, когда вы сидите перед компьютером.

Это было полезно?

Решение

Похоже, ответ был в файлах /etc/pam.d/login и /etc/pam.d/system-login. Мне пришлось закомментировать строки pam_motd.so.

Другие советы

Вы входите через SSH-соединение ?? .. Если это так, возможно, вы должны включить и не указывать ключ " PrintMotd No " в вашем файле sshd_config и перезапустите службу ...

У меня тоже была эта проблема, и меня беспокоило не двойное выражение, а двойной "Последний вход в систему". строки со ссылкой на событие входа в систему прямо над ним.

Я подумал, что это может указывать на какую-то нечестную игру, как если бы мой логин перенаправлялся или передавался через шпионское ПО или что-то в этом роде.

Вот как выглядят нижние 5 строк моего /etc/pam.d/system-login:

session         required        pam_env.so
#session        optional        pam_lastlog.so
session         include         system-auth
#session        optional        pam_motd.so motd=/etc/motd
session         optional        pam_mail.so

Обратите внимание на закомментированные строки. Теперь все работает как положено. Спасибо, Даниэль.

Также проверьте / etc / issue, некоторые системы печатают оба, и они могут просто содержать один и тот же текст. Обратите внимание, что я не использую gentoo, так что это может быть не так.

Помимо комментирования строк pam_motd.so, не забудьте также закомментировать следующие строки в /etc/pam.d/login и /etc/pam.d/system-login:

необязательный сеанс pam_lastlog.so

Таким образом, " последний вход в систему " строка печатается один раз, а не дважды.

Я думаю, что было бы разумнее убедиться, что единственным компонентом, который печатает MOTD, является PAM. Таким образом, вы можете отключить его везде и по-прежнему соответствовать требованиям аудита.

Просто мои 0,02 доллара.

Когда у меня возникла эта проблема, я узнал, что это была комбинация настроек, активных на момент предоставления мне системы.Первая копия сообщения была напечатана до того, как произошла аутентификация по SSH, и была вызвана Banner опция, устанавливаемая в sshd_config:

Banner /etc/motd

Неправильное использование MOTD больше, чем неправильное использование Banner.

Вторая копия сообщения была напечатана, потому что в конфигурации по умолчанию SSH печатает MOTD при входе в систему.Я отключаю это, устанавливая PrintMotd:

PrintMotd no

У меня была та же проблема с Ubuntu 15.04 и SSHD, настроенным для использования аутентификации PAM. Мой сервер отправлял два MOTD. Мне удалось заставить его работать хорошо, позволяя SSHD обновлять MOTD при каждом входе в систему. Это делается путем редактирования /etc/pam.d/sshd и удаления / комментирования строки с надписью noupdate .

# Print the message of the day upon successful login.
# This includes a dynamically generated part from /run/motd.dynamic
# and a static (admin-editable) part from /etc/motd.
session    optional     pam_motd.so  motd=/run/motd.dynamic
#session    optional     pam_motd.so  noupdate

Недостатком является то, что если процесс обновления этого сообщения занимает некоторое время (или процессорное время), вход в систему может привести к потере некоторого ресурса, а для этого потребуется некоторое время или даже тайм-аут.

Однако базовое MOTD по умолчанию, настроенное из коробки в Ubuntu 15.04, не должно вызывать проблем.

Вероятно, это делается из самой оболочки. Проверьте глобальный профиль и bashrc, чтобы увидеть, может ли это быть так.

Чтобы позволить только модулю pam_motd.so печатать motd, установите переменную MOTD в /etc/login.defs в пустую строку.

MOTD_FILE " "

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top