Какие разрешения изменились бы, если бы я сменил umask на 027 с 022?
Я только начал использовать Lynis
(lynis - это программное обеспечение, пожалуйста, не думайте, что у меня неправильно написано linux). После запуска мне предложили установить umask в /etc/login.defs и /etc/init.d/rc равным 027, чем значение по умолчанию 022.
Я хочу знать, какие изменения будут внесены в права доступа к файлам. Кроме того, почему значение хранится в двух файлах? Они работают по-другому?
Для получения дополнительной информации, если это необходимо, я использую Ubuntu 12.10, и я единственный пользователь системы.
2 ответа
Параметр 027 umask означает, что группе-владельцу также будет разрешено читать вновь созданные файлы. Это продвигает модель предоставления разрешений немного дальше от работы с битами разрешений и основывает ее на владении группой.
Это создаст каталоги с разрешением 750.
Пожалуйста, проверьте эту замечательную статью 027 umask - компромисс между безопасностью и простотой.
Маска режима
Цитировать ArchWiki:
Утилита umask используется для управления маской режима создания файла, которая определяет начальное значение битов разрешения файла для вновь создаваемых файлов.
биты режима
Три восьмеричных числа соответствуют разрешениям для пользователя, группы и других. При изменении третьего номера от 2 до 7, другое разрешение изменяется.
Чтобы понять эти числа, запишите их в двоичном виде, и каждый бит соответствует одному из чтения, записи и выполнения. Короче говоря, 2 соответствует записи; 7 соответствует чтению, записи и выполнению. Каталоги различны, чтение означает получение списка элементов (файлов и каталогов) внутри каталога, а выполнение означает доступ к этим элементам при условии, что их имена известны.
как это маскируется
Точнее, маски режима определяют, какие разрешения маскируются или удаляются из вновь создаваемых файлов по умолчанию. Таким образом, значение маски 2 означает, что файлы не будут доступны для записи; 7 означает удалить все разрешения. Обратите внимание, что даже если некоторые разрешения не удаляются маской режима, они могут быть недоступны из-за других ограничений. Например, Linux не позволяет создавать файлы с разрешениями на выполнение, поэтому они никогда не будут исполняемыми по умолчанию.
Разумная стоимость
Итак, чтобы ответить на первый вопрос: 022 означает, что разрешение на запись маскируется для других, поэтому по умолчанию файлы могут быть прочитаны, но не записаны или изменены другими. Хотя разрешение на выполнение не маскируется, другие не смогут выполнять файлы из-за ограничений, упомянутых выше; однако они могут иметь доступ к элементам с каталогами. Измените его на 027, и чтение и выполнение также маскируются. Таким образом, вновь созданные файлы и каталоги остаются закрытыми для других; элементы во вновь созданных каталогах всегда будут недоступны для других.
Во многих случаях есть только один пользователь. Однако обычно для запуска служб используется несколько системных пользователей, таких как nobody
, В некоторых редких случаях, например, когда программа, запущенная как никто, не подвергается риску, ограниченные разрешения могут помешать ей читать конфиденциальные данные.
Однако в многопользовательской среде совместное использование файла становится более сложным: в дополнение к настройке разрешений для файла, по крайней мере, разрешение на выполнение должно быть установлено во всех родительских каталогах.
Установка значения
Что касается второго вопроса, маску режима нужно устанавливать только один раз. Если он установлен несколько раз, последний имеет значение. Большинство дистрибутивов устанавливают маску режима по умолчанию в /etc/profile
, поэтому я бы предложил отредактировать этот файл.