Как использовать / etc / fbtab в OpenBSD для защиты X11?

8

Справочная страница OpenBSD afterboot (8) предлагает: «Возможно, вы захотите еще больше повысить безопасность, отредактировав / etc / fbtab, как при установке X».

Как можно это сделать? Какие строки при добавлении /etc/fbtabпомогут защитить X Windows?

Николас
источник
1
man fbtab - расскажет подробности о временном назначении владельца устройств на основе логина ttys. На моем ноутбуке X11 получает ttyC5. Таким образом, я могу контролировать владение устройством на основе этого. Я не знаю, насколько это полезно, потому что у нас уже есть параметр matchdep.allowaperture = 1 в /etc/sysctl.conf, с помощью которого мы можем назначить больше привилегий Xorg.
Салил

Ответы:

1

Давайте предположим, что X11 - это / dev / ttyC5, как предлагает Салил.

Пример 1. Веб-сервер и среда рабочего стола на одном компьютере

Предположим также, что вы используете веб-сервер с конфиденциальными данными (владелец - это пользователь www), и у пользователя на вашем компьютере есть разрешение на работу (чтение, запись, выполнение) в этом каталоге.

Но все, что вы собираетесь делать на рабочем столе, например, рассылка, прослушивание музыки, обмен сообщениями или просмотр, не имеет ничего общего с этими файлами. Теперь пользовательские интерфейсы хотят сделать все проще, быстрее и в целом более удобным, поэтому при щелчке мышью в Nautilus, Konqueror или каком-либо другом файловом менеджере можно случайно удалить файл, а при щелчке мышью даже можно отправлять данные в виде вложений электронной почты через Интернет, вы можете случайно поделиться ими. файл по сети и т. д. - все эти опасности находятся в одном щелчке мыши в графической среде рабочего стола, тогда как в командной строке вы вводите имя команды с подходящими аргументами для того же эффекта.

Теперь вы можете использовать / etc / fbtab, чтобы loginсообщить, chmodчтобы сделать этот каталог доступным только для владельца, чтобы никто из пользователей вашего рабочего стола не мог случайно удалить что-либо, даже если им разрешено работать в этом каталоге при использовании командной строки и только владельца «www» (который в любом случае не должен иметь доступа к рабочему столу) может прочитать его:

/dev/ttyC5 0400 /home/user/apache13/www/

Пример 2: конфиденциальные данные только для локального проекта

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

Эта запись меняет его на rwx rwx rx для X11:

/dev/ttyC5 0775 /www/groupproject

Пример 3: USB и флоппи-дисковод в качестве резервных дисков

Вы хотите ограничить доступ к USB-хранилищу в / dev / wd0 и / dev / wd1, а также к дискетам в / dev / fd0, поскольку они используются только для резервного копирования.

/dev/ttyC5 0400 /dev/wd0:/dev/wd1:/dev/fd0
superuser0
источник