Глава 7. Безопасность

Ревизия VCS: 8212

Дата сборки документа: 2017.07.28 17:43:40

Содержание

7.1. Основы безопасности ОС
7.2. Безопасная настройка Платформы
7.3. Действия в случае получения несанкционированного доступа к серверу
7.3.1. Идентификация проблемы
7.3.2. Решение проблемы
7.3.3. Последующие действия

7.1. Основы безопасности ОС

Реализация безопасности системы подразумевает комплексную настройку ОС, включающую в себя установку обновлений безопасности, управление учётными записями, сервисами и портами, а также настройку межсетевого экрана.

Для получения обновлений безопасности ОС нужно с помощью команды nano добавить в файл /etc/apt/sources.list строку:

deb http://security.debian.org/ jessie/updates main contrib non-free

Затем выполните в терминале команды apt-get update и apt-get upgrade, чтобы скачать и установить имеющиеся обновления.

Учётные записи на сервере.

Учётная запись root, также называемая суперпользовательской — это учетная запись, для которой нет никаких преград в вашей системе. Учётная запись root должна использоваться только для администрирования системы и как можно меньшее время.

Любой создаваемый вами пароль должен состоять как минимум из 6 символов и содержать заглавные и строчные буквы, а также знаки препинания. Уделите побольше внимания при установке пароля root, поскольку эта самая мощная учётная запись. Избегайте слов из словаря или использования любой персональной информации, которую можно угадать. Обычно нет необходимости давать свой пароль root кому-либо, если только вы не администрируете машину вместе с другими системными администраторами.

Для пользователей должны быть созданы обычные учётные записи. Данные учётные записи должны использоваться в качестве основных рабочих учётных записей. Вы не должны использовать учётную запись root в повседневной работе или в качестве персональной учетной записи, так как в учётной записи root можно очень легко нанести необратимые повреждения.

При настройке сервера необходимо чётко понимать, что нужно для его нормального функционирования. Некоторые ненужные приложения и службы, которые устанавливаются по умолчанию при инсталляции системы, незаметно потребляют системные ресурсы и могут быть уязвимыми местами.

Список служб работающих в системе можно посмотреть с помощью команды ps ax:

Рисунок 7.1. Результат команды ps ax - список работающих служб

Результат команды ps ax - список работающих служб

Просмотр процессов, которые подключаются к портам, можно сделать с помощью команды netstat:

Рисунок 7.2. Просмотр процессов с помощью команды netstat

Просмотр процессов с помощью команды netstat

В полученных выводах вы можете найти процессы, которые не требуются серверу, но работают. Для того, чтобы завершить работающий процесс в Linux, используется команда # kill PID. Чтобы узнать PID процесса, нужно ввести в терминал команду ps ax | grep %имя_процесса%:

Рисунок 7.3. PID процесса

PID процесса

В данном примере PID процесса 1441. Для завершения этого процесса нужно использовать команду # kill -9 1441.

Для отключения автозагрузки сервисов, например, сервера Apache, можно использовать команду update-rc.d:

# update-rc.d -f apache2 remove

В Linux для фильтрации трафика используется межсетевой экран Netfilter, с 2000 года входящий в состав ядра. Управлять им позволяют утилиты ufw и iptables.

Для проверки текущего состояния ufw используется команда ufw status, для запуска ufw enable, для остановки ufw disable. Входящие и исходящие пакеты проверяются на предмет соответствия имеющимся правилам фильтрации, после чего выполняется действие, установленное для этого правила. Если подходящее правило не будет найдено, используется действие, установленное по умолчанию. Действия могут быть такими:

  • Allow — пропустить (т.е. разрешить);

  • Deny — заблокировать (запретить);

  • Reject — отклонить и отправить обратно специальный код, сообщающий, что пакет был отклонен.

После включения фаервола можно посмотреть, какие правила используются в данный момент с помощью команды ufw status verbose:

Рисунок 7.4. Проверка статус ufw

Проверка статус ufw

Если вы настраиваете сервер, к которому подключились по SSH, прежде всего необходимо разрешить подключение к порту 22 командой ufw allow 22. Возможно, вам придется открыть некоторые из следующих портов:

  • 80 для HTTP,

  • 443 для HTTPS,

  • 20 и 21 для FTP,

  • 25 для SMTP (отправка почты),

  • 465 для SMTPS (отправка почты с шифрованием),

  • 143 для IMAP (получение почты),

  • 993 для IMAPS (получение почты с шифрованием) и т. д.

Запрещающие правила создаются командой ufw deny %номер_порта%.

Если вы хотите отменить разрешающее правило, не нужно создавать запрещающее, просто удалите его. Например, если по умолчанию входящий трафик запрещен, но вы разрешили подключение к порту 443, а теперь хотите отозвать свое разрешение, выполните в консолиufw delete allow 443.

Просматривать список открытых портов можно командой nmap:

Рисунок 7.5. Список открытых портов

Список открытых портов