Злоумышленники всегда ищут уязвимости серверов. В обязанности системных администраторов и сотрудников службы безопасности входит обеспечение безопасности данных на сервере.

Сведите к минимуму риски и увеличьте безопасность системы, которую вы обслуживаете, применяя наши советы и рекомендации по безопасности серверов.

Что такое безопасность сервера?

Безопасность сервера — это набор мер, которые защищают сервер от всех типов угроз, таких как DDoS-атаки, атаки методом перебора, а также неосторожные или злонамеренные пользователи. Меры могут включать установку и обслуживание брандмауэров, применение надежных паролей и протоколов аутентификации пользователей, установку антивирусного программного обеспечения и регулярное резервное копирование во избежание потери данных.

Почему важна безопасность сервера?

Серверы играют ключевую роль в обработке и хранении важных для бизнеса данных. Защита серверов от внешних угроз с помощью мер безопасности сервера необходима для поддержания:

  • Целостность. Безопасность сервера обеспечивает точность и полноту данных, хранящихся на сервере, за счет предотвращения искажения и случайного изменения.
  • Доступность. Меры безопасности помогают системным администраторам постоянно поддерживать доступ к серверу и его службам для авторизованных пользователей.
  • Конфиденциальность. Защита конфиденциальных данных, хранящихся на сервере, предотвращает использование данных неавторизованными пользователями в злонамеренных целях.
  • Репутация. Нарушение безопасности может привести к потере данных или нарушению работы службы. Эти инциденты могут нанести ущерб репутации компании и привести к финансовым потерям.
  • Соответствие требованиям. Крупные компании подчиняются отраслевым нормам, которые требуют, чтобы их серверы соответствовали определенным стандартам безопасности. Несоблюдение этих стандартов часто приводит к штрафам регулирующих органов.

21 совет по защите вашего сервера

Ниже приведен список из 21 совета по повышению безопасности ваших серверов. В нем есть разделы, посвященные подключению к Интернету и управлению пользователями — областям, в которых вы можете сделать больше всего для повышения общей надежности системы. Кроме того, в списке представлены другие передовые методы в области безопасности серверов.

Безопасное подключение к серверу

1. Установите и используйте безопасное соединение

При подключении к удаленному серверу важно установить безопасный канал для связи.

Протокол SSH (Secure Shell) — лучший способ установить защищенное соединение. В отличие от использовавшегося ранее Telnet, при доступе по SSH все данные, передаваемые при обмене, шифруются. Чтобы получить удаленный доступ по протоколу SSH, вы должны установить демон SSH и клиент SSH для выдачи команд и управления серверами.

По умолчанию SSH использует порт 22. Изменение номера порта по умолчанию — это простой способ снизить вероятность атаки хакеров на ваш сервер. Поэтому для SSH лучше всего использовать случайный номер порта от 1024 до 32 767.

2. Используйте аутентификацию по ключам SSH

Вместо пароля вы можете аутентифицировать сервер SSH, используя пару ключей SSH, что является лучшей альтернативой традиционным входам в систему. Ключи содержат значительно больше битов, чем пароль, и современные компьютеры не могут легко взломать их. Например, популярное 2048-битное шифрование RSA эквивалентно 617-значному паролю.

Пара ключей SSH состоит из открытого ключа и закрытого ключа.

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

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

3. Безопасный протокол передачи файлов

Использование защищенного протокола передачи файлов (FTPS) помогает передавать файлы на сервер и с сервера без опасности взлома или кражи данных злоумышленниками.

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

4. Сертификаты уровня защищенных сокетов

Защитите свои области веб-администрирования и формы с помощью Secure Socket Layer (SSL), который защищает информацию, передаваемую между двумя системами через Интернет. SSL может использоваться как при обмене данными между сервером и клиентом, так и между сервером и сервером.

Программа шифрует данные, поэтому конфиденциальная информация (например, имена, идентификаторы, номера кредитных карт и другая личная информация) не украдена при передаче. Веб-сайты с SSL-сертификатом имеют HTTPS в URL-адресе, что указывает на их безопасность.

Сертификат не только шифрует данные, но также используется для аутентификации пользователя. Таким образом, управляя сертификатами для ваших серверов, SSL помогает установить полномочия пользователя. Администраторы могут настроить серверы для связи с централизованным центром сертификации и любым другим сертификатом, который подписывает центр сертификации.

5. Используйте частные сети и VPN

Еще один способ обеспечить безопасную связь — использовать частные и виртуальные частные сети (VPN) и программное обеспечение, такое как OpenVPN. В отличие от открытых сетей, которые доступны для внешнего мира и поэтому подвержены атакам со стороны злонамеренных пользователей, частные и виртуальные частные сети ограничивают доступ для избранных пользователей.

Частные сети используют частный IP-адрес для установления изолированных каналов связи между серверами в пределах одного диапазона IP-адресов. Это позволяет нескольким серверам в одной сети обмениваться информацией и данными без доступа к публичному пространству.

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

Управление пользователями сервера

6. Отслеживайте попытки входа в систему

Использование программного обеспечения для предотвращения вторжений для отслеживания попыток входа в систему — это способ защитить ваш сервер от атак грубой силы. Эти автоматические атаки используют метод проб и ошибок, пытаясь получить доступ к системе всеми возможными комбинациями букв и цифр.

Программное обеспечение для предотвращения вторжений контролирует все файлы журналов и обнаруживает подозрительные попытки входа в систему. Когда количество попыток превышает установленную норму, программа предотвращения вторжений блокирует IP-адрес на определенный период или бессрочно.

7. Управление пользователями

На каждом сервере есть пользователь root, который может выполнять любую команду. Из-за своего уровня доступа root может быть опасен, если сервер попадет в чужие руки. Широко распространена практика полного отключения входа root для SSH.

Поскольку пользователь root обладает наибольшей властью, хакеры сосредотачивают свое внимание на попытках взлома пароля root. Когда вы полностью отключаете этого пользователя, вы ставите злоумышленников в невыгодное положение и защищаете сервер от потенциальных угроз.

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

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

Безопасность пароля сервера

8. Установите требования к паролю

Прежде всего, необходимо установить требования к паролю и правила, которым должны следовать все пользователи сервера. Соблюдайте следующие важные правила:

  • Не допускайте пустых паролей или паролей по умолчанию.
  • Обеспечьте минимальную длину и сложность пароля.
  • Наличие политики блокировки.
  • Не храните пароли с использованием обратимого шифрования.
  • Установите тайм-аут сеанса для бездействия и включите двухфакторную аутентификацию.

9. Установите политику истечения срока действия пароля

Установка даты истечения срока действия пароля — еще одна рутинная практика при установлении требований пользователя. В зависимости от требуемого уровня безопасности пароль может действовать от нескольких недель до нескольких месяцев.

10. Используйте парольные фразы для паролей сервера

Использование парольной фразы вместо пароля может помочь повысить безопасность сервера. Основное отличие состоит в том, что парольная фраза длиннее и содержит пробелы между словами. Поэтому часто это предложение, но не обязательно им быть.

Например, парольная фраза может быть такой: shakabledrierwrittenangular.

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

11. Пароль не работает

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

Желательно не использовать личную информацию, такую ​​как ваш день рождения, родной город, имена домашних животных и другие вещи, которые могут связать вас с паролем. Их очень легко угадать, особенно людям, которые вас знают.

Пароли, которые содержат только простые словарные слова, также легко взломать, особенно атаками по словарю (грубой силой). Кроме того, старайтесь избегать повторения последовательностей символов в одном и том же пароле.

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

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

Другие передовые методы защиты сервера

12. Регулярно обновляйте и обновляйте программное обеспечение

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

Автоматические обновления — это один из способов гарантировать, что вы не пропустите важные обновления. Однако разрешение системе вносить автоматические изменения может быть рискованным. Перед обновлением производственной среды рекомендуется проверить, как обновление работает в тестовой среде.

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

13. Удалите или отключите все ненужные службы

Повысьте безопасность сервера, уменьшив так называемый вектор атаки. Этот термин кибербезопасности относится к установке и поддержке только минимальных требований, необходимых для поддержания работы ваших служб. Включите только те сетевые порты, которые использует ОС сервера и установленные компоненты. Чем меньше у вас в системе, тем лучше.

Сервер ОС Windows должен иметь только необходимые компоненты операционной системы. Сервер операционной системы Linux должен иметь минимальную установку с установленными только основными пакетами.

Поскольку большинство дистрибутивов Linux прослушивают входящие соединения в Интернете, настройте брандмауэр так, чтобы он разрешал только определенные порты и запрещал все остальные ненужные соединения.

Перед установкой программного обеспечения в вашей системе проверьте наличие зависимостей, чтобы убедиться, что вы не добавляете ничего, что вам не нужно. Кроме того, проверьте, какие зависимости были автоматически запущены в системе и нужны ли они вам.

14. Скрыть информацию о сервере

Старайтесь предоставлять как можно меньше информации о базовой инфраструктуре. Чем меньше известно о ваших серверах, тем лучше.

Кроме того, рекомендуется скрывать номера версий любого программного обеспечения, установленного на сервере. Индикатор версии часто показывает точную дату выпуска, что помогает хакерам при поиске слабых мест.

15. Используйте системы обнаружения вторжений

Для обнаружения несанкционированных действий используйте систему обнаружения вторжений (IDS), такую ​​как Sophos, которая отслеживает процессы, запущенные на вашем сервере. Вы можете настроить его для проверки повседневных операций, запуска автоматического периодического сканирования или запуска IDS вручную.

16. Аудит файлов

Аудит файлов — еще один эффективный способ обнаружения нежелательных изменений в вашей системе.

Этот метод ведет учет всех характеристик системы, когда она находится в работоспособном состоянии, и сравнивает ее с ее текущим состоянием. Сравнивая две версии одной и той же системы из стороны в сторону, вы можете обнаружить все несоответствия и отследить их происхождение.

17. Аудит услуг

Аудит служб исследует, какие службы работают на сервере, их протоколы и порты, через которые они обмениваются данными. Знание этих особенностей помогает настроить надежную защиту поверхностей атаки в системе.

18. Настройте и поддерживайте брандмауэр

Защитите свой сервер, контролируя и ограничивая доступ к вашей системе.

Использование CSF (ConfigServer и Firewall) необходимо для усиления безопасности на сервере. Он разрешает только определенные жизненно важные соединения и блокирует доступ к другим службам.

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

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

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

19. Сделайте резервную копию вашего сервера

Хотя ранее упомянутые шаги предназначены для защиты данных вашего сервера, очень важно иметь резервную копию системы на случай, если что-то пойдет не так.

Храните зашифрованные резервные копии важных данных вне офиса или используйте облачное решение для резервного копирования и восстановления данных.

Независимо от того, выполняете ли вы автоматизированные задания резервного копирования или выполняете их вручную, обязательно выполняйте эту меру предосторожности. Кроме того, вы должны выполнить всесторонние тесты резервного копирования. Сюда входят «проверки работоспособности», в ходе которых администраторы или конечные пользователи проверяют правильность восстановления данных.

20. Создавайте многосерверные среды

Изоляция — один из лучших способов защиты сервера.

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

Наличие изолированных сред выполнения в центре обработки данных позволяет так называемое разделение обязанностей (SoD) и настройку конфигурации сервера в соответствии с функциями, которые выполняет сервер.

Разделение серверов баз данных и серверов веб-приложений является стандартной практикой обеспечения безопасности. Отдельные среды выполнения особенно выгодны для крупных предприятий, которые не могут позволить себе никаких нарушений безопасности.

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

21. Создайте виртуальную изолированную среду

Если вы не можете позволить себе полную изоляцию с помощью компонентов выделенного сервера или не нуждаетесь в ней, вы также можете выбрать изоляцию сред выполнения.

Это поможет вам справиться с проблемами безопасности, гарантируя, что другие данные не будут скомпрометированы. Вы можете выбирать между контейнерами или виртуализацией виртуальных машин, которые намного проще настроить.

Другим вариантом для виртуализированных сред в операционной системе UNIX является создание chroot-тюрьм. Chroot отделяет процесс от корневого каталога центральной операционной системы и позволяет ему получать доступ только к файлам в его дереве каталогов. Однако это не является полной изоляцией и должно практиковаться только с другими мерами безопасности.

Заключение

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

Многие из этих мер безопасности должны быть реализованы во время первоначальной настройки сервера, а другие должны быть частью постоянного или периодического обслуживания. Если мониторинг вашего сервера не автоматизирован, обязательно разработайте и выполняйте запланированные проверки безопасности.

Чтобы быть в курсе лучших практик в области кибербезопасности, я рекомендую вам воспользоваться сертификатами кибербезопасности и следить за лидерами отрасли в области безопасности во многих доступных подкастах.