Команда write
по существу записывает в файл устройства, такой как / dev / pts / 1
. Кажется, обратитесь к utmp
, чтобы выяснить соответствие между пользователями и ttys. Это можно обойти, просто перечислив содержимое / dev / pts
с помощью ls -lh / dev / pts
(хотя, скорее всего, это не нужно - см. Ниже).
mesg
, похоже, не делает ничего, кроме установки или удаления разрешения группы на запись из файла устройства tty:
anthony@laura:~$ who am i
anthony pts/6 Jun 11 17:06 (:0:S.5)
anthony@laura:~$ mesg
is n
anthony@laura:~$ chmod g+w /dev/pts/6
anthony@laura:~$ mesg
is y
Файлы в / dev / pts
принадлежат группе tty
. Команда write
устанавливает идентификаторы в эту группу для записи в них. Следовательно, чтобы пункт (2) работал,
Вы можете использовать chroot и заблокировать пользователей в настраиваемом корневом каталоге. Делая это, вы можете указать им любые версии mesg, wall, who и т. Д.
Вы также можете принудительно поместить их в оболочку оболочки и установить там свои элементы управления.