Защита vps от вирусов
Компрометация доступов к серверу может обернуться многими неприятностями: появление сторонних скриптов, нагружающих ресурсы сервера, потеря или кража данных, расположенных на нём.
Первый признак сторонних подключений — появление подобных сообщений при авторизации по протоколу SSH:
Last failed login: Wed Dec 27 13:52:45 MSK 2017 from 51.15.193.10 on ssh:notty
There were 9134 failed login attempts since the last successful login.
Если видите такие сообщения при авторизации на сервере — были осуществлены неудачные попытки входа. Злоумышленники целенаправленно подбирают SSH пароли либо делают это автоматически, с помощью уже заражённых компьютеров.
Чтобы избежать компрометации данных, воспользуйтесь следующими рекомендациями:
Если выполните хотя бы один из пунктов, это уже поможет защитить сервер от вторжений.
1. Смените порт SSH
Для этого в файле /etc/ssh/sshd_config необходимо раскомментировать и изменить Port 22 на свободный, это может быть любое число до 65536.
После чего перезапустить службу командой service sshd restart .
2. Используйте только ключи SSH
Преимущество ключа перед паролем в том, что его почти невозможно подобрать.
Пара ключей создаётся командой ssh-keygen . Секретный ключ (файл без расширения) копируется на ПК, а публичный ( имяключа.pub ) — в файл .ssh/authorized_keys на сервере.
Чтобы отключить авторизацию по паролю, в том же конфиге SSH нужно изменить директиву PasswordAuthentication yes на PasswordAuthentication no и перезапустить службу — останется авторизация только по ключу SSH.
3. Установите Google Authenticator
В отличие от приватных ключей, телефон всегда под рукой.
На сервер приложение устанавливается командой apt-get (yum) install google-authenticator
После установки запускается командой google-authenticator
После установки приложения на экране терминала появится секретный ключ. Его нужно добавить в Google Authenticator на смартфон и скопировать аварийные ключи восстановления.
Особенность программы в том, что при подключении по ключу код авторизации запрашиваться не будет, только при входе по паролю, если он включён.
Помимо самого сервера, рекомендуется также защитить двухфакторной аутентификацией и панели управления: вход в ISPmanager, VMmanager . Это делается через пункт Настройки пользователя в правом верхнем углу экрана:
При входе будет так же запрошен временный код:
Если ключ не добавляется, проверьте время на телефоне и сервере — оно должно совпадать.
4. Настройте доступ с определённых IP
Если планируется подключаться к серверу только с определённых IP-адресов, то можно внести строки в файл /etc/hosts.deny
sshd: ALL
В файл /etc/hosts.allow
Sshd: 188.120.252.0/24
Таким образом будет запрещён доступ по SSH для всех подсетей, кроме указанной.
После этого нужно перезапустить службу командой service sshd restart .
В панели управления ISPmanager можно настроить фаервол через пункт Система → Брандмауэр . Для серверов с KVM-виртуализацией здесь можно заблокировать не только целые подсети, но и отдельные страны:
5. Установите Fail2ban
Чтобы не блокировать адреса злоумышленников вручную, можно установить Fail2ban . Программа предназначена для блокировки подозрительных и частых подключений.
Установка проста: yum install fail2ban Centos или apt-get install fail2ban для Debian/Ubuntu .
Все политики настраиваются в /etc/fail2ban/jail.conf
Например, политика для защиты SSH:
enabled = true
filter = sshd
action = iptables[name=SSH, port=ssh, protocol=tcp]
logpath = /var/log/secure
maxretry = 3
Если предоставляете доступы к серверу сторонним специалистам, имейте в виду человеческий фактор. После окончания работ доступы к серверу рекомендуется менять.
Если в результате манипуляций доступ к серверу был заблокирован, авторизоваться можно через VNC в панели VMmanager либо IPMI через DCImanager .
Если же сервер взломан на уровне администратора и стал частью ботнета, осуществляющего атаки на другие серверы, оптимальным способом избавиться от вредоноcного ПО будет перенос данных на другой сервер или переустановка ОС с сохранением данных.
С заражением сайтов на PHP и рассылкой спама с сервера поможет модуль VirusDie. Он удаляет вредоносные скрипты и вставки в файлах, через ISPmanager модуль можно настроить по удобному расписанию и смотреть отчёты об устраненных вирусах.
6. Настройте бэкапы на удалённое хранилище
Панель ISPmanager позволяет настраивать бэкапы не только на диск сервера, но и на облачные хранилища, например, Яндекс.Диск или Google Drive . Это позволит оперативно восстановить пользовательские данные, даже если они были полностью удалены с сервера.
Чтобы защитить веб-сервер от атак, можно воспользоваться большим количеством методов, включая выявление и устранение уязвимостей действующей операционной системы. Мы собрали наиболее популярные способы предотвращения взлома VPS и утечки важной информации.
Статья пригодится всем, кто работает в сфере создания и обслуживания сайтов, а также пользователям, интересующимся IT на профессиональном и любительском уровне, включая администраторов, программистов, владельцев серверов.
Общие принципы безопасности
Безопасность сервера — это комплекс операций, поэтому полагаться исключительно на конкретную меру не имеет смысла. Ниже представлены основные моменты, которые позволяют повысить безопасность как для Windows, так и для Linux.
Своевременное обновление, согласно системным требованиям, устраняет уязвимости, которые выявлены разработчиками, но еще неизвестны хакерам.
Перед установкой обновлений в рабочей среде их необходимо проверять на тестовом сервере. Это позволит отследить влияние скачанных пакетов на поведение некоторых программ, которое может быть нарушено.
В сети достаточно open-source продуктов, которые далеко не всегда отвечают нормам безопасности. Перед установкой необходимо обязательно убедиться в надежности разработчиков и ресурса.
Скачивать такое ПО можно только из официальных источников, поскольку любые сторонние сайты могут содержать вредоносные скрипты. Это касается даже ресурсов с первых страниц поисковой выдачи.
Деактивируйте неработающие серверы и демоны (фоновые программы). Это сильно повысит безопасность, поскольку взломать неработающую службу нельзя. Возможно настроить брандмауэр, чтобы доступ к различным службам, не использующимся постоянно, осуществлялся исключительно с безопасных IP, выбранных пользователем.
Нужно отключить те учетные записи, которые больше не должны иметь доступ к системе. Рекомендуется для каждого пользователя создавать уникальную учетную запись, чтобы защитить большее число служб от несанкционированного доступа.
Привилегии для файлов, которые доступны через интернет, должны быть минимальными. Права доступа к ним могут быть только у ограниченного круга пользователей. Это повысит безопасность ОС.
Для виртуальной машины должно быть включено резервное копирование. После того, как сервер взломан, восстановить копию в безопасной среде без интернет-подключения достаточно легко. При этом сохранятся все данные и можно будет устранить уязвимость самостоятельно.
FTP считается небезопасным протоколом, так как данные через него пересылаются обычным текстом, то есть хакер может увидеть логин и пароль подключающегося пользователя. Вместо него рекомендуется использовать SFTP или SCP, которые защищены SSH.
Безопасный виртуальный сервер начинается с выбора надёжного провайдера. VDS от Eternalhost — это дата-центр класса TIER-III, защита сервера от DDoS и круглосуточное техническое сопровождение клиентов.
Защита Windows Server
Рассмотрим самые популярные способы защиты виртуального сервера на основе Windows Server.
Онлайн-серверы Windows не имеют дополнительных шлюзов безопасности. За это отвечает только брандмауэр, обеспечивающий защиту подключений. С его помощью можно отключить неиспользуемые порты.
Самому обычному VPS потребуются только порты 80 и 443. А для неиспользуемых портов необходимо ограничить источники подключений, установив пользовательский список IP, для которых оно возможно. Для этого настраиваются правила входящих подключений.
Следующие порты должны быть доступны пользователям, чей IP надежен:
- 3389 — стандартный порт RDP;
- 1433-1434 — стандартные порты SQL;
- 53 — DNS;
- 80, 443 — веб-сервер;
- 990 — FTPS.
После смены имени получить несанкционированный доступ будет сложнее. Для этого:
Если сервер администрирует несколько человек, для каждого нужно создать отдельную учетную запись. Это позволит отслеживать чужие действия через системный журнал. Для систем Unix специалисты рекомендуют вообще не использовать учетную запись root.
По возможности все операции, которые не требуют прав администратора, должны выполняться с другой учетной записи. Это повышает безопасность, когда речь идет о случайном запуске зараженной вирусом программы.
Например, защита почтового сервера часто включает в себя мониторинг спама, которым нередко пользуются взломщики. В таком случае вредоносное ПО не сможет навредить системе, так как у учетной записи ограничены права.
Защита терминального сервера основывается на установке паролей для папок с общим доступом. Это обезопасит систему, так как даже через файлы, которые не представляют собой никакой ценности, можно получить к ней лазейку.
Следует ограничить права пользователей без полного доступа. Такая защита сервера намного проще, чем следить за безопасностью всех учетных записей.
Утилита Microsoft Security Configuration Wizard (SCW) создает файлы безопасности для дублирования на все серверы инфраструктуры. Они состоят из правил работы с сервисами, настройки параметров ОС и брандмауэра.
При использовании групповых политик (например, в Active Directory) понадобится периодически проводить проверки и повторную конфигурацию. Это один из самых эффективных инструментов, гарантирующих обеспечение безопасности ОС.
Локальная политика безопасности затрагивает локальные аккаунты, поэтому ее тоже необходимо использовать, чтобы обезопасить сервер.
Доступ к ним осуществляется через протокол RDP, который считается безопасным. Но есть возможность усилить защиту. Для этого существуют:
Если при подключении не используется VPN, защита RDP-сервера от перебора паролей обеспечивается SSL/TLS-соединением туннелированного типа. Чтобы настроить этот параметр, нужно задействовать запрос определенного уровня безопасности, указав SSL (TLS 1.0).
Безопасность Linux
Политика безопасности в Linux при работе сервера основывается на следующих способах защиты:
Для Linux существует несколько вариантов:
- UFW — простой брандмауэр, с которым может справиться и новичок;
- IPTables — используется для управления NetFilter, который входит в ядро Linux;
- NFTables — брандмауэр, использующий более простой синтаксис и объединяющий поддержку IPv4 и IPv6 в один инструмент.
Это основные инструменты, отвечающие за безопасность системы и, следовательно, подключенных к ней VPS. Настроив их параметры, можно сильно снизить риск взлома.
Изменение стандартного SSH дает возможность повысить уровень защиты. Чтобы выполнить такой перенос, необходимо:
1. В настройках SSH прописать:
2. Сохранить изменения и перезапустить:
3. Чтобы совершить вход, понадобится указать новый порт (в примере – 49681):
Замену нужно делать в пользу более сложного и многозначного порта. Лучше всего выбрать значение в диапазоне от 49152 до 65535.
Для повышения безопасности можно заблокировать все порты, кроме HTTP, HTTPS, SSH. Их вполне достаточно для полноценной работы сервера.
Для этого нужно:
1. Располагать файлом настройки iptables
2. Для того, чтобы система после каждого перезапуска использовала обновленные настройки, создать скрипт через исполняемый файл:
3. В него добавить:
Этот способ включает в себя применение утилиты, которая не входит в стандартную комплектацию системы. Для ее установки воспользуйтесь командой
Перед внесением любых изменений в настройки, необходимо создать резервную копию их файла, чтобы не потерять установки по умолчанию. Изначально утилита располагает несколькими фильтрами для сервера Apache. При ее установке рекомендуется создавать свои на основе требований к безопасности используемого веб-сервера.
Утилита может отслеживать журнал входов, благодаря чему можно пометить те IP-адреса, с которых осуществлялось большое количество неудачных авторизаций. Предположительно, в это время с таких IP пытаются подобрать нужную комбинацию для входа. FAIL2BAN автоматически создает правило брандмауэра, которое временно блокирует их.
Протокол SSH
Это стандартный и достаточно безопасный способ подключения к веб-серверу Linux. Протокол предусматривает сквозное шифрование, передачу незащищенного трафика по надежному соединению, применение x-forwarding и др. Изменив его конфигурацию, возможно защитить сервер от шифровальщиков за счет применения SSH-ключей.
Вход через пароль — это самый распространенный вариант, но он менее безопасен, так как нужную комбинацию относительно легко подобрать с помощью современных инструментов.
- Открытый ключ — для идентификации пользователя, может быть общедоступным.
- Закрытый ключ — подтверждает открытый ключ (авторизацию) и хранится в безопасном месте.
Патчи безопасности и системы контроля доступа
В различные ОС на основе Linux встроены патчи, помогающие обеспечить безопасность системы. Например, не допустить потенциально уязвимую конфигурацию системы или срабатывание опасных программ.
Обычно системы контроля доступа встроены в большинство популярных ОС на Linux. Но по умолчанию там установлена лишь базовая комплектация, которую по возможности нужно обновлять до полной версии и производить детальную настройку.
- SELinux. Установка полной версии на Ubuntu:
- AppArmor. Установка полной версии на Ubuntu:
- LXC/Arkose. Установка полной версии на Debian:
- Seccomp/BPF. Установка полной версии на Ubuntu:
Работа с паролями
Убедитесь, что вход для пользователей защищен надежным паролем. Сильным с точки зрения безопасности считается пароль, содержащий минимум 8 числовых и буквенных символов, часть из которых обязательно должна писаться в разном регистре. Настроить политику работы с паролями в Linux можно c помощью модуля pam_cracklib.so, встроенного в конфигурационный файл набора библиотек Pluggable Authentication Modules (PAM).
Аудит пользовательских паролей на соответствие данным параметрам безопасности можно проводить с помощью специальных сервисов для автоподбора (например, John the Ripper или Ophcrack). Выявленные легкие пароли рекомендуется заменить на более сложные.
Отключение входа для суперпользователя
Один из самых надежных способов обезопасить сервер Linux — совсем не использовать вход с root-правами. Полномочия суперпользователя, требуемые для запуска ряда программ, лучше получать с помощью команды sudo. Этот способ позволит сохранить анонимность пароля администратора, а также реализовать требования политики безопасности и наладить мониторинг действий.
Что делать при взломе VPS на Windows\Linux?
Если взломали сервер, это станет заметно сразу. Причиной может оказаться как банальная невнимательность пользователей, так и методичный подбор паролей злоумышленниками. В таком случае необходимо обратить внимание на возможные признаки взлома, устроить проверку безопасности сервера и определиться, что делать на основании источника проблемы.
- Нестабильная работа и блокировка VPS.
- Отсутствие доступа к root и другим правам пользователя.
- Заметный рост трафика на сервере.
- Странная сетевая активность (рассылка почты в отсутствие пользователя, передача файлов через SSH и т.д.).
- Рассылка спама с VPS.
Обнаружение любого из упомянутых признаков требует тщательной проверки сервера и системы. В некоторых случаях сбои в работе могут не иметь отношения ко взлому, например, являясь следствием технических или программных проблем, прерывающегося интернет-соединения.
- Определения времени входа в систему. Если он осуществлялся в отсутствие пользователя, необходимо уточнить, кто еще имел доступ в этот период.
- История команд. Не лишним будет знать, какие команды вводились в системе\сервере, какие операции к ним привязаны. Сопоставление даты их активации с временем входа поможет определить источник проблем.
- Проверка IP-адресов. Если в списке есть незнакомые адреса, которым точно никто не давал доступ, сервером пользуются несанкционированно.
- Подозрительные процессы. Такими могут быть многие фоновые операции, неожиданно появившиеся в списке и забирающие большое количество ресурсов. Обычно они заметны сразу.
- Проверка сайта на наличие вирусов и уязвимостей. Необходимо регулярно обновлять пакеты и скрипты сайты, следить за производительностью и логом файлов сервера. Выявить вирусы можно с помощью скрипта Al-bolit и любого другого.
- Последние измененные файлы. Проверка файлов, которые изменялись за последние 10 дней, проводится с помощью команды:
- Проверка почтовой очереди на наличие спама. При поиске необходимо искать строку команды X-PHP-Script, чтобы выявить скрипт, выполняющий рассылку.
- Проверка файлов во временных и загрузочных директориях. Если там будут найдены скрипты, хранение которых во временных папках не допускается, с большой вероятности именно они являются источником проблемы. Для проверки нужно воспользоваться командой:
- Проверка VPS на наличие шеллов — кода, с помощью которого хакер получает доступ к серверу. Все найденные шеллы необходимо удалить. Проверка:
- Проверка устаревшего ПО на сервере и подключенных CMS.
Многие специалисты рекомендует при выявлении взлома переустанавливать систему, но это требуется не всегда. Если точно известна причина и она уже была устранена, можно выполнить действия по данному ниже алгоритму.
- Ограничить права доступа к панели отдельным IP.
- Закрыть ненужные порты в Firewall.
- Обновить пароли и SSH-ключи.
- Провести комплексное обновление ПО.
- Очистить сервер от чужеродных скриптов — бэкдоры и шеллы.
Заключение
Следует помнить, что даже при работе с выделенным сервером с защитой, необходимо соблюдать меры предосторожности, включая регулярное обновление ПО и ограничение доступа для ряда IP-адресов. Применение комплексных мер позволяет избежать утечки важных данных, дает возможность защитить сервер от взлома методом подбора паролей.
Если меры предосторожности не помогли, не стоит расстраиваться. Восстановить работоспособность сервера вполне возможно, как и устранить выявленные уязвимости с помощью представленных способов. Не стоит забывать и о содержимом сервера. Вовремя сделанный резервный образ поможет быстро восстановить бережно настроенные сервисные службы и ценные базы данных.
Главное в случае с безопасностью — это постоянство. Сервер и систему стоит периодически проверять, что касается и надежности IP-адресов с высоким уровнем доступа.
Виртуальные сервера Eternalhost — сочетание высокой производительности и отличной защищенности от внешних угроз. Гарантия технической поддержки в режиме 24/7 и многоступенчатая фильтрация DDoS-атак.
Стали владельцем VPS-сервера? Поздравляем с полезным приобретением! Но пить шампанское и праздновать открытие нового веб-сайта или приложения еще рано. Ведь хакеры ежедневно присматривают себе новых жертв, да и любопытные школьники постоянно ищут свежие площадки для применения кидди-скриптов.
В этой статье мы рассмотрим несложные методы, позволяющие защитить Linux и Windows-системы, и оставить хакеров и всех любопытных без добычи.
Общие советы
В Linux для систем на основе CentOS можно использовать пакет yum-cron, который будет автоматически скачивать и устанавливать обновления, или пакет unattended-upgrades для систем на основе Ubuntu.
В системах на основе FreeBSD можно настроить ежедневную автоматическую проверку и загрузку патчей безопасности при помощи команды freebsd-update с параметром cron. Эта команда проверяет и скачивает обновления, но не устанавливает их автоматически. После скачивания пользователь получит электронное письмо с уведомлением и сможет установить обновления с помощью команды freebsd-update install.
Хорошей практикой является проверка обновлений на тестовом сервере до их установки в рабочей среде. Дело в том, что некоторые обновления могут изменить поведение нужных программ и служб таким образом, что потребуется изменять их конфигурацию.
Используйте ПО только из проверенных источников
Несмотря на распространенность open-source продуктов, перед установкой рекомендуем предварительно изучить найденные в них уязвимости, а скачивать такие программы советуем только с официальных сайтов. Неофициальные сайты, даже находящиеся в первой десятке поисковой выдачи Google, могут содержать вредоносные скрипты. Установка уязвимого или зараженного софта часто является причиной проблем с безопасностью инфраструктуры.
Знайте и ограничивайте свои сервисы
Деактивировав неиспользуемые сервисы и неиспользуемых демонов, можно достаточно сильно усилить безопасность виртуального сервера. Таким образом вы сократите количество возможных атак, поскольку атаковать неработающую службу или демона невозможно. Каждый включенный сервис нужно рассматривать как потенциальную угрозу. Если какая-то потенциально уязвимая служба, например, FTP, нужна на некоторое время, не забудьте после использования отключить ее. Кроме того, можно настроить брандмауэр таким образом, чтобы доступ к такой службе мог осуществляться только с безопасных адресов. Для этого можно использовать списки IP-адресов или доменных имен.
Ведите разумную политику безопасности пользователей
Существуют действия, которые лучше выполнить, чтобы защитить систему при администрировании пользователей. Например, создать уникальные учетные записи для каждого пользователя и сервиса и предоставить им минимальные привилегии. Это полезно, поскольку если одна из учетных записей была скомпрометирована, это не затронет другие службы и не позволит злоумышленнику развить атаку и получить доступ к другим службам.
Также необходимо отключить учетные записи тех пользователей, которые больше не должны иметь доступ к системе или те учетные записи, которые остались после удаления программного обеспечения.
Обратите внимание на установленные привилегии
Права доступа к файлам является источником риска для любой компьютерной системы. В целом, для файлов, которые будут доступны через Интернет, необходимо установить самые меньшие привилегии.
Резервное копирование
Не забудьте включить резервное копирование виртуальной машины. В случае успешной атаки злоумышленников восстановить резервную копию в безопасной среде (то есть без подключения к интернету) будет довольно легко. После же восстановления следует исключить возможность повторного взлома системы.
Используйте SFTP или SCP вместо FTP
FTP — это небезопасный протокол. С помощью этого протокола все данные отправляются в виде обычного текста, а это значит, что при прослушке соединения между сервером и локальной машиной можно увидеть и логин и пароль подключающегося пользователя. Лучше использовать безопасную альтернативу данного протокола — протокол SFTP. SFTP работает аналогично протоколу FTP, но при этом защищен протоколом SSH. А для подключения UNIX-машины к серверу Linux или FreeBSD еще лучше использовать протокол SCP. Этот протокол также использует SSH.
Обеспечение безопасности Windows Server 2008/2012
Рассмотрим наиболее используемые способы защиты виртуальных серверов на основе Windows Server.
Уделите должное внимание настройке Firewall
Для виртуальных серверов Microsoft Windows, доступных через Интернет и не имеющих дополнительных шлюзов безопасности, брандмауэр Windows является единственным инструментом защиты подключений к серверу.
Отключение неиспользуемых правил позволит сократить количество портов, прослушивающих внешний трафик, что снизит вероятность атаки на эти порты. Например, для работы стандартного веб-сервера достаточно открыть порты 80 и 443.
Для открытых портов лучше ограничить источники подключений с помощью списка IP-адресов, c которых будет происходить подключение, через правила брандмауэра Windows:
Ниже представлен список портов, доступ к которым лучше ограничить только кругом клиентов, внесенных в список белых IP:
- 3389 — стандартный порт RDP;
- 1433-1434 — стандартные порты SQL;
- 53 — DNS;
- 80, 443 — веб-сервер;
- 990 — FTPS.
Переименуйте стандартную учетную запись администратора
Стандартная учетная запись Администратор или Administrator — лакомый кусок для злоумышленников, поскольку эта запись по умолчанию включена и имеет неограниченные права в системе. К этому аккаунту чаще всего пытаются подобрать пароль, так как это проще, чем искать имена пользователей.
Рекомендуем сменить имя пользователя для стандартной учетной записи Администратор или Adminsitrator. Для этого выполните следующие шаги:
Создайте несколько административных аккаунтов
Если администрировать ваш сервер будут несколько человек, создайте для каждого из них отдельную учетную запись с административными правами. С помощью системных журналов это поможет выяснить кто и что делал с системой.
По возможности используйте для работы учетную запись с ограниченными правами
Для выполнения задач, для которых не нужны права администратора, лучше использовать отдельную учетную запись обычного пользователя. Если пользователь случайно или по незнанию запустит программу, содержащую троян или вирус, уровень уязвимости сервера останется на уровне полномочий этого пользователя, то есть с такой учетной записью вирус не сможет навредить системе.
Не предоставляйте общий доступ к директориям без ввода пароля. Разграничивайте права общего доступа
Не разрешайте подключение к общим папкам сервера с помощью анонимного доступа. Даже если файлы в общем доступе не имеют никакой ценности, они смогут стать лазейкой, через которую злоумышленники получат возможность дальнейшей атаки системы. Значительно проще установить ограниченные права пользователям, которым не требуется полный доступ, чем следить за тем, чтобы какой-либо аккаунт не был взломан и использован для атаки.
Используйте Мастер настройки безопасности
Мастер настройки безопасности (SCW — Security Configuration Wizard) позволяет создавать файлы политики безопасности, которые затем можно перенести на различные серверы вашей инфраструктуры. Эти политики включают в себя правила использования сервисов, конфигурацию общих параметров системы и правил брандмауэра.
Корректно настройте групповые политики безопасности
Если вы используете групповые политики Active Directory, необходимо время от времени проводить их ревизию и повторную конфигурацию. Этот инструмент является одним из основных способов обеспечения безопасности инфраструктуры Windows.
Используйте локальные политики безопасности
Помимо использования групповых политик безопасности Active Directory следует также использовать локальные политики, так как они затрагивают не только права пользователей, выполняющих вход через доменную учетную запись, но и локальные аккаунты.
Безопасность служб удаленных рабочих столов (RDP)
Протокол RDP используется для удаленного подключения к системам Windows и на сегодняшний день считается достаточно безопасным. Тем не менее безопасность этого протокола можно повысить еще больше, при помощи следующих методов.
2. Смена стандартного порта Remote Desktop Protocol
Смена порта RDP, используемого по умолчанию, является хорошей защитой от исследования well-known портов. Для этого следует при помощи редактора реестра (regedit) изменить параметр HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal ServerWinStationsRDP-Tcp Port Number:
Не забудьте создать разрешающее правило для этого порта в Брандмауэре Windows. После изменения порта необходимо перезагрузить сервер.
Защита RDP-сессии с помощью SSL/TLS
Если вы подключаетесь к RDP, не используете VPN-подключение и вам нужен безопасный канал связи, то можно настроить SSL/TLS-туннелированные соединение.
Опцию RDP через TLS можно включить через групповую политику безопасности сервера удаленных рабочих столов, где необходимо активировать опцию запроса определенного уровня безопасности для удаленных подключений. Рекомендуемое значение этой опции — SSL (TLS 1.0).
Обеспечение безопасности в Linux
Существует множество дискуссий о вопросах безопасности Linux и, конечно, огромное количество мнений относительно того, какой уровень безопасности сервера Linux является достаточным и как его обеспечить. Каждому администратору нужно решить самостоятельно, что именно необходимо сделать для защиты сервера.
Рассмотрим наиболее распространенные меры безопасности, которые необходимо принять в серверной среде Linux.
Блокирование доступа с помощью брандмауэра
Самая простая мера защиты — это активация и настройка брандмауэра. В мире Linux существует большое количество брандмауэров:
- UFW — достаточно простой брандмауэр, который отлично подходит для начинающих пользователей Linux;
- IPTables — широко известный брандмауэр. Используется для управления входящим в состав ядра Linux брандмауэра NetFilter;
- NFTables — новый брандмауэр, включенный в ядро Linux. NFTables использует более простой синтаксис, чем его предшественник IPTables, а также объединяет поддержку IPv4 и IPv6 в одном инструменте.
Безопасное удаленное подключение к системе с помощью SSH
Стандартный и достаточно безопасный способ подключения к виртуальному серверу Linux — это использование протокола SSH. Этот протокол позволяет выполнить сквозное шифрование, передать незашифрованный трафик по защищенному соединению, использовать X-forwarding (графический интерфейс пользователя по сетевому соединению) и многое другое.
Этот протокол очень безопасный, так как подвергался обширным исследованиям и проверкам. Тем не менее, выбор конфигураций может как повысить, так и понизить безопасность сервиса. Связано это с выбором входа в систему: при помощи пароля или SSH-ключей.
Вход с помощью пароля используется чаще всего, но он менее безопасен, так как позволяет злоумышленникам подбирать пароли до тех пор, пока не будет найдена правильная комбинация. При помощи современных инструментов его можно легко автоматизировать, а большая пропускная способность подключения к интернету позволяет сделать это в разумные сроки.
Метод входа с SSH-ключами подразумевает создание надежной пары ключей для аутентификации:
- Открытый ключ используется для идентификации пользователя и он может быть общедоступным.
- Закрытый ключ используется для подтверждения соответствующего открытого ключа (авторизация) и должен храниться в защищенном месте.
Пароль или SSH-ключи
Блокировка вредоносных IP-адресов с помощью fail2ban
Система fail2ban позволяет отслеживать журналы регистрации входа на сервер, что позволяет отметить адреса, с которых осуществлялось большое количество неудачных входов. Такие события позволяют предположить, что с этих адресов осуществляется попытка подобрать пароль. Обнаружив такие попытки, fail2ban создает правило брандмауэра, которое на время не разрешает подключение с этих адресов.
Внедрение IDS/IPS для обнаружения вторжений на сервер
Система обнаружения вторжений, также известная как IDS, заносит в каталог конфигурации сведения о файле в заведомо исправном состоянии. Затем она сравнивает записанные данные с целью обнаружить измененные файлы или конфигурации. Кроме того, такие системы анализируют сетевой трафик, ищут там сигнатуры атак и автоматически блокируют такие попытки.
Для защиты одного хоста можно использовать систему Samhain. Эта система выпускается под open-source лицензией и использует несколько методов анализа, позволяющих полностью охватить все события, происходящие в системе:
Разумеется, мы рассмотрели только небольшое количество возможностей защиты виртуального сервера от атак и не рассматривали вопросы защиты веб-приложений и веб-серверов. Но они заслуживают отдельной статьи.
Читайте также: