Защита сервера Linux для Lineage II

Тема в разделе "Manuals / Мануалы", создана пользователем OVERLORD, 29 июн 2018.

  1. OVERLORD

    OVERLORD Активный участник

    Регистрация:
    28 июн 2018
    Сообщения:
    46
    Симпатии:
    27
    Skype:
    078367
    Давайте поработаем над этим учебным пособием с защитой Web, ограничивающей атаки, такие как slowloris и другие критические недостатки!
    Мы будем использовать в этом учебнике некоторые из лучших дистрибутивов Linux (CentOS 7 Minimal)

    Wiki: https://wiki.centos.org/

    FTP Download: http://isoredirect.centos.org/centos/7/isos/x86_64/CentOS-7-x86_64-Minimal-1708.iso

    Я полагаю, что у вас уже установлен HTTPD на VPS / Dedicated, чья команда для установки и "yum install httpd"

    Установка ModSecurity и mod_evasive
    Сначала вам нужно будет установить репозиторий EPEL yum на сервере. Выполните следующую команду для установки и включения репозитория EPEL:

    sudo rpm -ivh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm
    Теперь вы можете установить mod_security и mod_evasive, выполнив следующую команду:

    sudo yum --enablerepo = epel install mod_security mod_evasive
    После установки этих модулей вы можете проверить их, выполнив следующие команды:

    sudo httpd -M | grep evasive
    Если mod_evasive включен, вы увидите следующий вывод:

    evasive20_module (общий)
    Чтобы протестировать модуль mod_security, запустите:

    sudo httpd -M | безопасность grep
    Если mod_security включен, вы увидите следующий вывод:

    security2_module (общий)
    Настройка ModSecurity
    Теперь, когда установка завершена и проверена, вам необходимо установить набор основных правил (CRS), чтобы использовать mod_security. CRS предоставляет веб-сервер с набором правил о том, как вести себя при определенных условиях. Вы можете загрузить и установить последнюю версию OWASP CRS, выполнив следующие команды:

    sudo mkdir / etc / httpd / crs
    sudo cd / etc / httpd / crs
    sudo wget https://github.com/SpiderLabs/owasp-modsecurity-crs/tarball/master
    sudo tar -xvf master
    sudo mv SpiderLabs-owasp-modsecurity-crs- * owasp-modsecurity-crs
    Теперь перейдите в установленный каталог OWASP CRS:

    sudo cd / etc / httpd / crs / owasp-modsecurity-crs /
    В каталоге OWASP CRS вы найдете пример файла с правилами modsecurity_crs_10_setup.conf.example. Вам необходимо скопировать его содержимое в новый файл с именем modsecurity_crs_10_setup.conf.

    sudo cp modsecurity_crs_10_setup.conf.example modsecurity_crs_10_setup.conf
    Теперь вам нужно сказать Apache, чтобы использовать этот файл вместе с модулем. Вы можете сделать это, отредактировав главный файл конфигурации Apache:

    sudo nano /etc/httpd/conf/httpd.conf
    Добавьте следующие строки в конец файла:

    <IfModule security2_module>
    Включить /etc/httpd/crs/owasp-modsecurity-crs/modsecurity_crs_10_setup.conf
    Включить /etc/httpd/crs/owasp-modsecurity-crs/base_rules/*.conf
    </ IfModule>
    Сохраните и закройте файл и перезапустите Apache, чтобы отразить изменения.

    Перезагрузка sudo apachectl
    Наконец, рекомендуется создать собственный файл конфигурации в каталоге modsecurity.d. Вы можете сделать это, создав файл с именем mod_security.conf.

    sudo nano /etc/httpd/modsecurity.d/mod_security.conf
    Добавьте следующие строки:

    <IfModule mod_security2.c>
    SecRuleEngine On
    SecRequestBodyAccess On
    SecResponseBodyAccess On
    SecResponseBodyMimeType text / plain text / html text / xml application / octet-stream
    SecDataDir / tmp
    </ IfModule>
    Сохраните и закройте файл и перезапустите Apache, чтобы отразить изменения.

    Перезагрузка sudo apachectl
    Настроить mod_evasive
    Модуль mod_evasive считывает свою конфигурацию из /etc/httpd/conf.d/mod_evasive.conf, которую можно легко настроить. Вам не нужно создавать отдельный файл конфигурации, потому что во время обновления системы нет правил для обновления.

    Файл mod_evasive.conf по умолчанию имеет следующие директивы:

    <IfModule mod_evasive20.c>
    DOSHashTableSize 3097
    DOSPageCount 2
    DOSSiteCount 50
    DOSPageInterval 1
    DOSSiteInterval 1
    DOSBlockingPeriod 10
    </ IfModule>
    Вы можете изменить эти значения в соответствии с количеством и типом трафика, который должен обрабатывать ваш веб-сервер.

    DOSHashTableSize: эта директива определяет, как mod_evasive отслеживает, кто к чему обращается. Увеличение этого числа обеспечит более быстрый поиск сайтов, которые посетил клиент в прошлом.

    DOSPageCount: эта директива определяет количество идентичных запросов к определенному URI, которое посетитель может выполнить через интервал DOSPageInterval.

    DOSSiteCount: это похоже на DOSPageCount, но соответствует количеству запросов, которые посетитель может сделать на вашем сайте через интервал DOSSiteInterval.

    DOSBlockingPeriod: если посетитель превышает пределы, установленные DOSSPageCount или DOSSiteCount, их IP-адрес будет заблокирован во время DOSBlockingPeriod. В течение этого интервала они получат 403 (Запрещенную) ошибку.

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

    Вы можете сделать это, отредактировав файл mod_evasive.conf:

    sudo nano /etc/httpd/conf.d/mod_evasive.conf
    Раскомментируйте строку DOSEmailNotify, удалив # перед линией и изменив адрес электронной почты на свой собственный:

    DOSEmailNotify lunastudio@antiddos.com
    Сохраните и закройте файл и перезапустите Apache, чтобы отразить изменения.

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

    Тестирование ModSecurity
    Для тестирования mod_security вы можете использовать curl для отправки HTTP-запросов на сервер Apache. Одним из правил по умолчанию ModSecurity является отклонение запросов, в которых есть агент пользователя «Nessus». Это предназначено, чтобы лишить информацию злоумышленников, которые используют автоматические сканеры


    Теперь давайте установим и настроим пакет CSF FIREWALL

    cd /usr/src
    rm -fv csf.tgz
    wget https://download.configserver.com/csf.tgz
    tar -xzf csf.tgz
    cd csf
    sh install.sh

    Как только вы выполните установку, мы настроим порты и активируем все защиты!

    Получите доступ к файлу «/etc/csf/csf.conf» с вашим любимым редактором и измените значение строки «ТЕСТИРОВАНИЕ». Измените значение 1 на 0, а затем выполните следующую команду

    # Allow incoming TCP ports

    # Allow outgoing TCP ports

    # Allow incoming UDP ports

    TCP_IN = "20,21,22,25,26,53,80"

    service csf restart

    csf --start

    /etc/init.d/csf start



    csf -g (IP)> Проверяет, заблокирован ли IP-адрес
    csf -a (IP) «Причина - ваше имя»> Добавляет IP-адрес в список разрешений сервера. Соблюдайте осторожность и освобождайте только фиксированные IP-адреса.
    csf -d (IP) «Причина - ваше имя»> Заблокировать IP-адрес в брандмауэре и добавить комментарий в файл /etc/csf/csf.deny
    csf -tr (IP)> Удаляет временный блок из IP-адреса
    csf -dr (IP)> Удаляет постоянную блокировку с IP-адреса
    grep IP /var/log/lfd.log> Проверяет причину временного блока
     
    #1 OVERLORD, 29 июн 2018
    Последнее редактирование: 29 июн 2018
  2. ZUBAT

    ZUBAT Участник

    Регистрация:
    6 июл 2018
    Сообщения:
    12
    Симпатии:
    0
    Лучшая защита веб сервера - nginx. А от ддоса не справится программными настройками. Если забьют канал, то все гг
     

Партнеры