Системы Linux безопасны по своей конструкции и предоставляют надежные инструменты администрирования. Но независимо от того, насколько хорошо спроектирована система, ее безопасность зависит от пользователя.
Новичкам часто требуются годы, чтобы найти лучшую политику безопасности для своих машин. Вот почему мы делимся этими важными советами по усилению защиты Linux для таких новых пользователей, как вы. Дайте им попробовать.
1. Обеспечьте соблюдение политик надежных паролей
Пароли являются основным методом аутентификации для большинства систем. Независимо от того, являетесь ли вы домашним пользователем или профессионалом, принудительное использование надежных паролей является обязательным. Сначала отключите пустые пароли. Вы не поверите, сколько людей до сих пор ими пользуются.
awk -F: '($ 2 == "") {print}' / etc / shadow
Выполните указанную выше команду от имени пользователя root, чтобы просмотреть, какие учетные записи имеют пустые пароли. Если вы найдете кого-то с пустым паролем, сразу заблокируйте пользователя. Вы можете сделать это, используя следующее.
passwd -l ИМЯ ПОЛЬЗОВАТЕЛЯ
Вы также можете настроить устаревание пароля, чтобы пользователи не могли использовать старые пароли. Используйте команду chage, чтобы сделать это с вашего терминала.
chage -l ИМЯ ПОЛЬЗОВАТЕЛЯ
Эта команда отображает текущую дату истечения срока действия. Чтобы установить срок действия пароля через 30 дней, используйте команду ниже. Пользователи могут используйте менеджеры паролей Linux для защиты онлайн-аккаунтов.
Нужен безопасный менеджер паролей для Linux? Эти приложения просты в использовании и хранят ваши онлайн-пароли в безопасности.
chage -M 30 ИМЯ ПОЛЬЗОВАТЕЛЯ
2. Резервное копирование важных данных
Если вы серьезно относитесь к своим данным, настройте регулярное резервное копирование. Таким образом, даже если ваша система выйдет из строя, вы сможете быстро восстановить данные. Но выбор правильного метода резервного копирования имеет решающее значение для повышения уровня защиты Linux.
Если вы домашний пользователь, клонирование данных на жесткий диск может хватить. Однако предприятиям необходимы сложные системы резервного копирования, обеспечивающие быстрое восстановление.
3. Избегайте устаревших методов связи
Linux поддерживает множество методов удаленной связи. Но устаревшие службы Unix, такие как telnet, rlogin и ftp, могут создавать серьезные проблемы с безопасностью. Так что постарайтесь их избегать. Вы можете удалить их полностью, чтобы уменьшить связанные с ними проблемы с безопасностью.
apt-get --purge удалить xinetd nis tftpd tftpd-hpa telnetd \
> rsh-сервер rsh-redone-server
Эта команда удаляет некоторые широко используемые, но устаревшие службы с машин Ubuntu / Debian. Если вы используете систему на основе RPM, используйте вместо этого следующее.
yum стереть xinetd ypserv tftp-server telnet-server rsh-server
4. Безопасный OpenSSH
Протокол SSH - рекомендуемый метод удаленной связи для Linux. Обязательно защитите конфигурацию сервера OpenSSH (sshd). Вы можете узнать больше о настройке SSH-сервера здесь.
Отредактируйте /etc/ssh/sshd_config файл для установки политик безопасности для ssh. Ниже приведены некоторые общие политики безопасности, которые может использовать каждый.
PermitRootLogin no # отключает вход root
MaxAuthTries 3 # ограничивает попытки аутентификации
PasswordAuthentication no # отключает аутентификацию по паролю
PermitEmptyPasswords no # отключает пустые пароли
X11Forwarding no # отключает передачу GUI
DebianBanner no # disbales подробный баннер
AllowUsers *@XXX.X.XXX.0/24 # ограничить пользователей диапазоном IP-адресов
5. Ограничить использование CRON
CRON - это надежный планировщик заданий для Linux. Это позволяет администраторам планировать задачи в Linux с помощью crontab. Таким образом, крайне важно ограничить круг лиц, которые могут запускать задания CRON. Вы можете узнать все активные cronjobs для пользователя, используя следующую команду.
crontab -l -u ИМЯ ПОЛЬЗОВАТЕЛЯ
Проверьте вакансии каждого пользователя, чтобы узнать, эксплуатирует ли кто-нибудь CRON. Вы можете запретить всем пользователям использовать crontab, кроме вас. Выполните для этого следующую команду.
эхо $ (whoami) >> /etc/cron.d/cron.allow
# echo ВСЕ >> /etc/cron.d/cron.deny
6. Принудительно применять модули PAM
Linux PAM (подключаемые модули аутентификации) предлагает мощные функции аутентификации для приложений и служб. Вы можете использовать различные политики PAM для защиты входа в систему. Например, приведенные ниже команды ограничивают повторное использование пароля.
# CentOS / RHEL
echo 'пароль достаточный pam_unix.so use_authtok md5 shadow запомнить = 5' >> \
> /etc/pam.d/system-auth
# Ubuntu / Debian
echo 'пароль достаточный pam_unix.so use_authtok md5 shadow запомнить = 5' >> \
> /etc/pam.d/common-password
Они ограничивают использование паролей, которые использовались в течение последних пяти недель. Есть еще много политик PAM, которые обеспечивают дополнительные уровни безопасности.
7. Удалить неиспользуемые пакеты
Удаление неиспользуемых пакетов уменьшает поверхность атаки на вашем компьютере. Поэтому мы рекомендуем удалять редко используемые пакеты. Вы можете просмотреть все установленные на данный момент пакеты, используя следующие команды.
список yum установлен # CentOS / RHEL
список apt --installed # Ubuntu / Debian
Допустим, вы хотите удалить неиспользуемый пакет vlc. Вы можете сделать это, выполнив следующие команды от имени пользователя root.
yum удалить vlc # CentOS / RHEL
apt remove vlc # Ubuntu / Debian
8. Параметры безопасного ядра
Еще один эффективный способ усиления защиты Linux - это защита параметров ядра. Вы можете настроить эти параметры, используя sysctl или изменив файл конфигурации. Ниже приведены некоторые распространенные конфигурации.
kernel.randomize_va_space = 2 # рандомизировать базу адресов для mmap, кучи и стека
kernel.panic = 10 # перезагрузка через 10 секунд после паники ядра
net.ipv4.icmp_ignore_bogus_error_responses # защищает плохие сообщения об ошибках
net.ipv4.ip_forward = 0 # отключает пересылку IP
net.ipv4.icmp_ignore_bogus_error_responses = 1 # игнорирует ошибки ICP
Это лишь некоторые базовые конфигурации. Вы научитесь различным способам конфигурации ядра с опытом.
9. Настроить iptables
Ядра Linux предоставляют надежные методы фильтрации сетевых пакетов через API Netfilter. Вы можете использовать iptables для взаимодействия с этим API и настройки пользовательских фильтров для сетевых запросов. Ниже приведены некоторые основные правила iptables для пользователей, ориентированных на безопасность.
-A INPUT -j REJECT # отклонять все входящие запросы
-A FORWARD -j REJECT # отклонить пересылку трафика
-A ВВОД -i lo -j ПРИНЯТЬ
-A OUTPUT -o lo -j ACCEPT # разрешить трафик на localhost
# разрешить запросы ping
-A OUTPUT -p icmp -j ACCEPT # разрешить исходящие эхо-запросы
# разрешить установленные / связанные соединения
-A INPUT -m state --state УСТАНОВЛЕН, СВЯЗАН -j ПРИНЯТЬ
-A ВЫХОД -m состояние --state УСТАНОВЛЕН, СВЯЗАННЫЙ -j ПРИНЯТЬ
# разрешить поиск в DNS
-A ВЫХОД -p udp -m udp --dport 53 -j ПРИНЯТЬ
# разрешить запросы http / https
-A ВЫХОД -p tcp -m tcp --dport 80 -m state --state NEW -j ACCEPT
-A ВЫХОД -p tcp -m tcp --dport 443 -m state --state NEW -j ACCEPT
# разрешить доступ по SSH
-A ВВОД -p tcp -m tcp --dport 22 -j ПРИНЯТЬ
-A ВЫХОД -p tcp -m tcp --dport 22 -j ПРИНЯТЬ
10. Мониторинг журналов
Вы можете использовать журналы для лучшего понимания вашей Linux-машины. Ваша система хранит несколько файлов журналов для приложений и служб. Мы выделяем здесь самые важные из них.
- /var/log/auth.log регистрирует попытки авторизации
- /var/log/daemon.log регистрирует фоновые приложения
- / var / log / debug logs отладочные данные
- /var/log/kern.log записывает данные ядра
- / var / log / syslog регистрирует системные данные
- / var / log / faillog журналы неудачных попыток входа
Лучшие советы по усилению защиты Linux для начинающих
Обеспечить безопасность системы Linux не так сложно, как вы думаете. Вы можете усилить безопасность, следуя некоторым советам, упомянутым в этом руководстве. По мере накопления опыта вы освоите больше способов защиты Linux.
Используете Chromebook, но беспокоитесь о конфиденциальности? Измените эти 7 настроек в браузере Chrome на Chrome OS, чтобы оставаться в безопасности в Интернете.
- Linux
- Компьютерная безопасность
- Linux
- SSH

Рубайат - выпускник компьютерных наук с сильной страстью к открытым исходным текстам. Помимо того, что он ветеран Unix, он также занимается сетевой безопасностью, криптографией и функциональным программированием. Он страстный коллекционер подержанных книг и безгранично восхищается классическим роком.
Подписывайтесь на нашу новостную рассылку
Подпишитесь на нашу рассылку, чтобы получать технические советы, обзоры, бесплатные электронные книги и эксклюзивные предложения!
Еще один шаг…!
Пожалуйста, подтвердите свой адрес электронной почты в электронном письме, которое мы вам только что отправили.