
Как мы все знаем, пользователь root является королем и обладает неограниченными привилегиями в системе Linux. Однако пользователи без полномочий root ограничены базовыми задачами. Кроме того, пользователи sudo дается только определенная степень привилегий root, которую пользователь root считает подходящей для выполнения определенных задач с повышенными привилегиями.
Проблемы возникают, когда обычные пользователи имеют неконтролируемый доступ к ресурсам или непреднамеренно получают root-права. Это серьезная угроза безопасности, которая может вызвать нарушения, нежелательные модификации и, в худшем случае, сбой системы. Другой потенциальный риск - это когда файлы имеют менее безопасные права доступа. Например, загрузочные файлы с разрешениями на запись для глобальных пользователей могут быть легко изменены или повреждены, что приведет к поломке системы.
[Вам также может понравиться: Полезные советы по защите данных и Linux ]
Хотя мы можем реализовать физическую, сетевую безопасность и безопасность данных, злоумышленник может обойти меры безопасности и воспользоваться такими лазейками. По этой причине к безопасности файловой системы следует относиться серьезно. Он обеспечивает дополнительный уровень защиты от атак или внутренних угроз со стороны злоумышленников, которым не нужно делать тяжелую работу по обходу мер безопасности для доступа к файлам.
В области системной безопасности мы сосредоточимся на следующих ключевых моментах:
Вы, наверное, слышали это все в Linux считается файлом. А если нет, то это процесс. Каждый файл в системе Linux принадлежит пользователю и группе пользователей. Он также имеет права доступа к файлам для 3 категорий пользователей: Пользователь (ты), Группа (г), и другие (о). Разрешения представлены в виде чтения, записи и выполнения ( rwx ) для каждой категории пользователей.
rwx rwx rwx. Другие группы пользователей.
Как было замечено ранее, в Раздел основ Linux, вы можете просмотреть права доступа к файлам, используя длинный формат команда ls как показано.
$ ls -l.
Напомним, что разрешения обычно представлены девятью символами. Первые три символа представляют права доступа фактического пользователя, владеющего файлом. Второй набор символов представляет разрешения группы-владельца файла. Наконец, последний набор для других или глобальных пользователей. Эти персонажи постоянно находятся в читать, написать, выполнять (rwx) порядок.
После разрешений у нас есть права собственности пользователей и групп, за которыми следуют размер файла или каталога, дата изменения и, наконец, имя файла.
Права доступа пользователей к файлам и каталогам могут быть изменены по своему усмотрению. Практическое правило - использовать принцип безопасности с наименьшими привилегиями. Проще говоря, убедитесь, что пользователи получают минимальные права доступа или разрешения, необходимые для выполнения работы.
Принцип минимальных привилегий ограничивает пользователей только определенными ролями и тем самым сводит к минимуму риск доступа злоумышленников к критическим данным и их изменения за счет использования учетной записи с низким уровнем доступа. Это также уменьшает поверхность атаки и ограничивает распространение вредоносных программ в случае, если злоумышленник получит контроль над вашей системой.
Следовательно, если пользователю нужно только просмотреть содержимое файла или каталога, ему не следует предоставлять разрешения на выполнение или запись. На самом базовом уровне предоставляйте только минимум разрешений и прав собственности, необходимых пользователю для выполнения задач. Мы рассмотрели, как изменить права доступа пользователей и права собственности на файлы / каталоги с помощью команд chmod и chown в основные команды Linux тема.
Чтобы системному администратору было проще управлять разрешениями, можно предоставить специальные разрешения или права доступа для целых каталогов. Одно из специальных разрешений, которое может применяться для ограничения удаления и изменения файла или каталога, - это липкий бит.
В сценарии, где общий каталог доступен для всех пользователей в системе или сети существует потенциальный риск того, что некоторые пользователи могут удалить или изменить файлы внутри каталога. Это нежелательно, если вы хотите сохранить целостность содержимого каталога. И вот тут-то и появляется липкий кусочек.
Прикрепленный бит - это специальное разрешение файла, установленное для файла или всего каталога. Он предоставляет только владельцу этого файла / каталога разрешение на удаление или внесение изменений в содержимое файла или каталога. Ни один другой пользователь не может удалить или изменить файл / каталог. Он имеет символическое значение т
и числовое значение 1000.
Чтобы включить липкий бит в каталоге, используйте команда chmod следующее:
$ chmod + t имя_каталога.
В приведенном ниже примере мы применили липкий бит к каталогу с именем контрольная работа. В случае каталога все содержимое унаследует разрешения липкого бита. Вы можете проверить разрешения липкого бита, используя ls -ld команда. Обязательно обратите внимание на т
символ в конце разрешения файла.
$ ls -ld тест.
Если другой пользователь пытается удалить каталог или изменить файл внутри каталога, он встречает В доступе отказано ошибка.
И в этом суть разрешения на битовый файл.
В SUID (Установить идентификатор пользователя) - это еще одно специальное разрешение файла, которое позволяет другому обычному пользователю запускать файл с разрешениями владельца файла. Обычно обозначается символическим значением s
в части разрешений пользователя, а не Икс
что представляет собой разрешения на выполнение. SUID имеет числовое значение 4000.
В SGID, (Установить идентификатор группы) позволяет обычному пользователю наследовать права группы владельца группы файлов. А не Икс
для разрешений на выполнение вы увидите s
в групповой части файловых разрешений. В SGID имеет числовое значение 2000.
Какими бы удобными они ни оказались, SUID и SGID разрешения связаны с угрозами безопасности, и их следует избегать любой ценой. Это потому, что они предоставляют особые привилегии обычным пользователям. Если злоумышленник, выдающий себя за обычного пользователя, обнаруживает исполняемый файл, принадлежащий пользователю root с SUID установленный бит, они могут использовать эту лазейку и эксплуатировать систему.
Чтобы найти все файлы с SUID бит, установленный в Linux, запустите найти команду как пользователь root.
$ find / -perm -4000 тип -f.
Для каталогов запустить:
$ find / -perm -4000 тип -d.
Чтобы найти все файлы с SGID бит установленный запуск:
$ find / -perm -2000 тип -f.
Для каталогов выполните:
$ find / -perm -2000 тип -d.
Чтобы удалить SUID bit в файле, запустите команду chmod, как показано ниже:
$ chmod u-s / путь / к / файлу.
Чтобы удалить бит SGID в файле, выполните команду:
$ chmod g-s имя_файла / путь / к / файлу.
Пользователи нередко устанавливают слабые пароли. Хороший номер устанавливает короткие, простые и легко угадываемые пароли, чтобы не забыть их при входе в систему. Хотя это удобно, но ненадежные пароли можно легко взломать с помощью сценариев атаки методом перебора.
В PAM модуль ( Подключаемый модуль аутентификации ) - это модуль, который позволяет системным администраторам применять политики паролей в системах Linux. Для этого вам понадобится pam_pwquality модуль, который предоставляется libpam_pwquality библиотека. В pam_pwquality модуль проверяет надежность пароля по набору правил и системному словарю и определяет варианты слабых паролей.
Чтобы установить pam_pwquality модуль на Ubuntu 18.04 и более поздние версии, запустите:
$ sudo apt install libpam_pwquality.
Для RHEL / CentOS 8, запустите команду:
$ sudo dnf установить libpwquality.
Файл конфигурации находится в следующем месте:
Прежде чем мы начнем изменять PAM файла конфигурации, давайте сначала рассмотрим сбор информации о средствах контроля устаревания паролей.
Их можно найти в /etc/login.defs файл.
Файл содержит следующие ключевые элементы управления паролем:
Значения по умолчанию указаны ниже.
В PASS_MAX_DAYS Атрибут ограничивает количество дней, в течение которых пользователь может использовать свой пароль. Когда это значение достигается или срок действия пароля истекает, пользователь вынужден изменить свой пароль, чтобы войти в систему. По умолчанию это значение установлено на 99999, что переводится как 273 годы. Это не имеет большого смысла с точки зрения безопасности, поскольку пользователь может продолжать использовать свой пароль в течение всей своей жизни.
Вы можете установить это значимое значение, например, 30 дней, как показано.
PASS_MAX_DAYS 30.
По прошествии 30 дней пользователь будет вынужден сменить пароль на другой.
В PASS_MIN_DAYS Атрибут определяет минимальную продолжительность, в течение которой пользователи могут использовать свой пароль перед его изменением. Что это значит? Если, например, это значение установлено на 15 дней, пользователь не сможет снова изменить свой пароль до истечения 15 дней.
PASS_MAX_DAYS 15.
В PASS_WARN_AGE Атрибут определяет количество дней, в течение которых пользователь будет получать предупреждение о приближающемся истечении срока действия своего пароля до истечения срока его действия. Например, вы можете установить это значение на 7 дней, как показано.
PASS_MAX_DAYS 7.
ПРИМЕЧАНИЕ: Эти элементы управления паролями не работают с уже существующими учетными записями. Они применяются только к новым учетным записям, созданным после определения правил.
Прежде чем редактировать /etc/pam.d/common-password файл, создайте резервную копию. В этом примере мы создали common-password.bak файл резервной копии.
$ sudo cp /etc/pam.d/common-password /etc/pam.d/common-password.bak.
Затем откройте файл.
$ sudo vim /etc/pam.d/common-password
Найдите строку, показанную ниже.
требуемый пароль pam_pwquality.so retry = 3.
В повторить попытку Опция устанавливает максимальное количество раз, которое вам необходимо ввести правильный пароль, прежде чем вы получите сообщение об ошибке. По умолчанию установлено значение 3. Это всего лишь один вариант, и мы собираемся включить несколько вариантов.
Добавьте в строку следующие атрибуты:
minlen = 10 difok = 3 lcredit = -1 ucredit = -1 dcredit = -1 ocredit = -1 reject_username
Давайте конкретизируем эти атрибуты.
Если вы попытаетесь создать нового пользователя, который не соответствует политике паролей, вы столкнетесь с такими ошибками, как показано.
На этом мы завершаем тему, посвященную системной безопасности и основам безопасности в целом. Во всей главе мы пролили свет на основные меры безопасности, которые вы можете реализовать для защитите вашу систему Linux от вредоносных пользователи, такие как хакеры или недовольные сотрудники.