1

Я только что прочитал о настройке пользовательских привилегий для разных типов пользователей. Я хотел бы создать сценарий, в котором пользователь может войти в систему через ssh, но может создавать (записывать) файлы только в /tmp. Доступ на запись не должен быть разрешен где-либо еще. Кроме того, он не должен иметь возможность просматривать файлы других пользователей в /tmp, не говоря уже об их удалении.

Я полагаю, что смогу выполнить вторую половину задачи, удалив разрешение на чтение и выполнение /tmp и установив залипший бит.

Тем не менее, как я могу удалить пользователей с правами на запись из остальной части системы?

1 ответ1

2

Я хотел бы создать сценарий, в котором пользователь может войти в систему через ssh, но может создавать (записывать) файлы только в /tmp. Доступ на запись не должен быть разрешен где-либо еще.

В стандартной установке Linux пользователи могут писать только в /tmp и свои домашние каталоги. Таким образом, вы можете достичь этого, сделав пользователя $HOME доступным только для чтения и принадлежащего пользователю root.

Кроме того, он не должен иметь возможность просматривать файлы других пользователей в /tmp, не говоря уже об их удалении.

Дайте всем пользователям ограничительный umask (например, 077) через pam_umask и установите бит закрепления на /tmp .

Кроме того, поиграйте с pam_namespace - вы можете дать каждому пользователю свой /tmp .

Я полагаю, что смогу выполнить вторую половину задачи, удалив разрешение на чтение и выполнение /tmp и установив залипший бит.

Неправильно. Без разрешения на выполнение для /tmp пользователь не сможет получить доступ или создать что-либо в этом каталоге. Без заусенца любому, кто может писать в /tmp будет разрешено удалять чьи-либо файлы.

Тем не менее, как я могу удалить пользователей с правами на запись из остальной части системы?

Они не имеют доступа для записи по умолчанию. Смотрите верх этого ответа.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .