Могу я бежать chmod o=- -R /
?
Я не хочу, чтобы вновь созданный пользователь мог указывать / etc / passwd только из-за его разрешений по умолчанию. И я хочу понять, почему эти значения по умолчанию были выбраны для разрешений для всех (ну, большинства) системных файлов, а также для других файлов.
Почему бы не оставить системные файлы доступными для чтения?
Неизвестность - это не безопасность
Ваша система должна быть такой же безопасной, даже если люди знают, как она работает. Если вы полагаетесь на то, что детали хранятся в секрете, чтобы обеспечить безопасность вашей системы, взломать систему - лишь вопрос времени.
Как ты будешь работать?
Принято считать, что вам следует как можно реже использовать учетную запись root. Если вам нужно использовать учетную запись root для самых простых задач, вы в конечном итоге просто будете использовать ее все время.
Функциональность системы
Во многих случаях система не может функционировать, если некоторые важные файлы conf не могут быть прочитаны пользователями без полномочий root, как другие продемонстрировали с помощью /etc/passwd
пример.
могу я сделать chmod o = - -R /?
Нет, если вы действительно хотите иметь возможность войти в систему и использовать систему. Нет ничего идеального, но по большей части большинство дистрибутивов имеют относительно разумные разрешения по умолчанию в большинстве случаев. Некоторые из них, возможно, придется изменить в зависимости от ваших обстоятельств, но это следует обсуждать отдельно для каждого файла, если известны последствия изменения разрешений для файлов.
Потому что многим программам может потребоваться доступ к этим файлам. Например, всякий раз, когда вы вводите 'ls -l', система будет искать / etc / passwd для перевода между числовым uid и именем пользователя. Это не сработало бы, если бы у пользователя не было прав на чтение этого файла.
Что еще более важно, если вы возьмете права чтения для каждого файла, вы даже больше не сможете войти в систему, потому что вам не разрешено читать двоичный файл оболочки.
файл пароля доступен для чтения для ряда стандартных служебных программ, поэтому существует / etc / shadow файл, который вместо этого не читается обычными пользователями и фактически хранит зашифрованный пароль.
НОТА: Пароли хранятся в нечитаемом файле (/ etc / shadow), даже если он зашифрован, чтобы избегать атак методом перебора локальных пользователей.
Команда ls и многие другие используют файл / etc / passwd для преобразования идентификаторов пользователей в имена пользователей. Не меняй это.