Пользователь аппарата - или определенный для группы MOTD в SSH

Я хотел бы отключить или изменить MOTD, показанный на входе в систему SSH на per-group/per-user основе. Этот вопрос на SuperUser имеет ответ, указывая, что я могу использовать Match блоки в sshd_config. Однако man sshd_config состояния:

Match
         ...
         Only a subset of keywords may be used on the lines following a
         Match keyword.  Available keywords are AcceptEnv,
         AllowAgentForwarding, AllowGroups, AllowTcpForwarding,
         AllowUsers, AuthenticationMethods, AuthorizedKeysCommand,
         AuthorizedKeysCommandUser, AuthorizedKeysFile,
         AuthorizedPrincipalsFile, Banner, ChrootDirectory, DenyGroups,
         DenyUsers, ForceCommand, GatewayPorts, GSSAPIAuthentication,
         HostbasedAuthentication, HostbasedUsesNameFromPacketOnly,
         KbdInteractiveAuthentication, KerberosAuthentication,
         MaxAuthTries, MaxSessions, PasswordAuthentication,
         PermitEmptyPasswords, PermitOpen, PermitRootLogin, PermitTTY,
         PermitTunnel, PubkeyAuthentication, RekeyLimit,
         RhostsRSAAuthentication, RSAAuthentication, X11DisplayOffset,
         X11Forwarding and X11UseLocalHost.

И я не вижу ничего связанного с MOTD в том списке. И действительно, пытаясь использовать то предложение причины sshd не удаваться запуститься из-за неправильной конфигурации.

Так, я могу сделать это? Если так, как? Из конфигурации SSH или путем изменения независимо от того, что генерирует/печатает MOTD?


Изменение файлов в /etc/update-motd.d не полезно, с тех пор, согласно man update-motd:

   Executable  scripts in /etc/update-motd.d/* are executed by pam_motd(8)
   as the root user at each login, and this information is concatenated in
   /var/run/motd. 

(Я проверил это со сценарием, который сделал echo $USER. Я получил a root в моем MOTD.)

Это оставляет конфигурацию PAM. Я предполагаю, что могло бы быть возможно отключить pam_motd на per-group/user основе, но я не уверен, как сделать это. Последняя опция состояла бы в том, чтобы отключить pam_motd в целом, и использование pam_exec, но я действительно надеюсь, что это не прибывает в это.

3
задан 20 March 2017 в 13:18

1 ответ

Вот реализация на на пользователя/группу motd вдохновлена motd или баннером входа в систему на пользователя

Сначала прокомментируйте:

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

в /etc/pam.d/login и набор PrintMotd no в /etc/ssh/sshd_config

Затем Вы могли определить Ваш на сценарий сообщения пользователя/группы и поместить его в папку, например:

sudo mkdir -p /etc/mymotd/groups
sudo mkdir -p /etc/mymotd/users

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

Вы могли создать /etc/profile.d/perUserGroupMotd.sh со следовать строками:

gidName=`id -gn`
if [ -e /etc/mymotd/groups/$gidName ]; then
   /etc/mymotd/groups/$gidName
else 
   if [ -e /etc/mymotd/users/$USER ]; then
      /etc/mymotd/users/$USER
   fi
fi

или можно использовать файл для позволения/запрещения сообщения и, чем выполнение /path/to/script -g $gidName или /path/to/script -u $USER, очевидно, существует много различных возможных реализаций.

О нас pam_motd, в конце я нашел эти два ошибкой:

По этим причинам я предполагаю, не возможно использовать pam_motd для Вашей цели.

HUSHLOGIN_FILE директива в /etc/login.defs если запрещают вся обычная болтовня во время последовательности входа в систему, таким образом, любой вывод подавлен даже последняя дата входа в систему.

Я предполагаю, что motd разработан для достижения всего пользователя в системе и из-за этого ssh и pam_motd простой включают или отключают его для всего пользователя.

3
ответ дан 1 December 2019 в 16:29

Другие вопросы по тегам:

Похожие вопросы: