Базовые способы защиты Linux
Физическая безопасность
-
Следуя правилу - boot access = root access, обеспечь физическую безопасность сервера, установи пароль на grub и BIOS/UEFI (
grub2-mkpasswd-pbkdf2
) -
Используй шифрование (к примеру,
LUKS
) для защиты данных в случае нелегетимного доступа к носителям.
Сеть
-
Используй встроенные способы фильтрации трафика: iptables/nftables и различные надстройки к ним: ufw, firewalld. Используй в качестве шаблона нормально закрытую конфигурацию.
-
Помни, что пароли не безопасны, поэтому предпочитай ssh аутентификацию (
PubkeyAuthentication yes; PasswordAuthentication no
) по сертификатам. ОтключайPermitRootLogon
IAM
-
Используй sudo с корректным назначением прав. При назначени прав, не забывай про GTFOBins.
Хотя, вместо использования sudo, есть и приверженцы другого подхода, заключающегося в использовании отдельной записи для root - мотивируя тем, что использование sudo стирает грань между простым и привелегированным пользователем. -
Разработай и используй политику паролей. В общем случае она должна содержать требования к составу и длине пароля, определять порядок и периодичность проверки хэшей на возможные утечки, блокировку при переборе. На локальной станции для этого в помощь есть оснастка Local group policy
-
При создании сервисных аккаунтов, помни про принцип наименьших привилегий.
-
Отключай неиспользуемые аккаунты (
/sbin/nologin
в/etc/passwd
)
Софт и сервисы
-
Отключай не используемые сервисы - снижай поверхность атаки.
-
Блокируй неиспользуемые порты (ну это в том числе к вопросам про нормально замкнутый файрвол)
-
Избегай использования дырявого старья: TFTP, Telnet и т.п.
-
Обновляйся.
-
Используй доверенные репозитории.