Отображение валюты на сайте:

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

    Защита с помощью DenyHosts

    Установка:

    # cd /usr/ports/security/denyhosts
    # make install clean
    

    Отредактируйте файл /etc/hosts.allow:

    sshd : /etc/hosts.denied : deny (запрет доступа по ssh с хостов из файла /etc/hosts.denied)  
    
    sshd : ALL : allow (разрешение доступа)  
    

    В конфигурационном файле denyhosts - /usr/local/etc/denyhosts.conf укажите опцию:

    HOSTS_DENY = /etc/hosts.denied  
    

    Расскоментируйте строку, иначе denyhosts не запустится:

    BLOCK_SERVICE = ALL  
    

    Добавьте в автозагрузку:

    # echo 'denyhosts_enable="YES"' >> /etc/rc.conf
    

    Чтобы denyhosts не ругался во время запуска об отсутствующем файле, создадим его:

    # touch /etc/hosts.denied
    

    И сразу запустим denyhosts :

    # /usr/local/etc/rc.d/denyhosts start
    

    Настройка завершена.

    Защита с помощью inetd

    Установка:

    Centos

    # yum install inetd
    

    Debian/Ubuntu

    # apt-get install xinetd
    

    Параметры inetd:

    • -c maximum

    Определение максимального числа одновременных запусков каждой службы; по умолчание не ограничено.
    Может быть переопределено индивидуально для каждой службы при помощи параметра max-child.

    • -C rate

    Определение по умолчанию максимального количества раз, которое служба может быть вызвана с одного
    IP-адреса в минуту; по умолчанию не ограничено. Может быть переопределено для каждой службы
    параметром max-connections-per-ip-per-minute.

    • -R rate

    Определяет максимальное количество раз, которое служба может быть вызвана в минуту; по умолчанию
    256. Частота, равная 0, не ограничивает число вызовов.

    • -s maximum

    Задает максимальное количество процессов, одновременно обслуживающих один сервис для одного IP
    адреса; по умолчанию не ограничено. Может переопределяться для каждой службы параметром max-child-per-ip.

    Строки в файле /etc/inetd.conf имеют такой формат:

    service-name  
    socket-type  
    protocol  
    {wait|nowait}[/max-child[/max-connections-per-ip-per-minute[/max-child-per-ip]]]
    user[:group][/login-class]  
    server-program  
    server-program-arguments  
    

    Реализация

    Модифицируем параметры для сервисов FTP и SSH следующим образом:

    Centos/Debian/Ubuntu

    # /etc/xinetd.conf
    

    Содержимое:

    ftp     stream  tcp     nowait/5/1/2    root    /usr/local/sbin/in.proftpd      proftpd  
    ssh     stream  tcp     nowait/5/1/2    root    /usr/sbin/sshd          sshd -i -4  
    

    Перезапускаем inetd:

    Debian/Ubuntu

    # /etc/init.d/xinetd restart
    

    Centos 7

    # systemctl restart xinetd
    

    В данном случае к службам одновременно могут обратиться 5 клиентов, с одного IP-адреса возможно одновременно 2 подключения, причем c одного IP-адреса нельзя будет подключиться чаще 1 раза в минуту.

    Дополнительная защита для ssh

    В файл /etc/sshd_config добавляем следующую опцию:

    MaxAuthTries 1  
    

    Это означает, что пользователь имеет право на MaxAuthTries + 1 = 2 попытки авторизации.
    Чтобы разрешить только одну попытку авторизации, необходимо выставить значение MaxAuthTries в 0:

    MaxAuthTries 0  
    

    Дополнительная защита для proftpd

    В файл /usr/local/etc/proftpd.conf добавляем:

    MaxLoginAttempts 1  
    

    Теперь при соединении возможна только 1 попытка авторизации

    Защищаем почту (dovecot) с помощью inetd

    Для этого останавливаем dovecot:

    # /usr/local/etc/rc.d/dovecot stop
    

    После чего в файле /etc/rc.conf закомментируйте запись про dovecot:

    #dovecot_enable="YES"
    

    И добавляем в /etc/inetd.conf следующие записи:

    imap           stream  tcp     nowait/5/1/2  root    /usr/libexec/tcpd /usr/local/libexec/dovecot/imap-login  
    imaps          stream  tcp     nowait/5/1/2  root    /usr/libexec/tcpd /usr/local/libexec/dovecot/imap-login --ssl  
    pop3           stream  tcp     nowait/5/1/2  root    /usr/libexec/tcpd /usr/local/libexec/dovecot/pop3-login  
    pop3s          stream  tcp     nowait/5/1/2  root    /usr/libexec/tcpd /usr/local/libexec/dovecot/pop3-login --ssl  
    

    Перезапустите inetd:

    Debian/Ubuntu

    # /etc/init.d/xinetd restart
    

    Centos 7

    # systemctl restart xinetd