Инструмент безопасности предотвращения вторжения
По словам разработчиков denyhosts Скрипт, скрипт предназначен для того, чтобы помочь помешать атакам сервера SSH на Linux Systems. Эти атаки иногда называют атаками на основе словаря или атаки грубой силы. Эта статья будет сосредоточена на том, как установить и настроить Denyhosts на Ubuntu 18.04 LTS.
Короткий аудит вашего журнала SSH (/var/log/auth.log на Ubuntu) даст вам представление о количестве хакеров, пытающихся получить доступ к вашему серверу. Правда, ни один из них не был успешным. Но будет лучше автоматически помешать этому хакеру постоянную попытку получить доступ к вашему серверу.
Установка denyhosts
Запустите следующую команду, чтобы установить Denyhosts на вашем сервере:
sudo apt update sudo apt install denyhosts
Тип y
и нажмите Enter. Когда спросили: «Вы хотите продолжить?». После этого на вашем сервере должны быть установлены Denyhosts.
Настройка Denyhosts
На Ubuntu 18.04 LTS файл конфигурации denyhosts — /etc/denyhosts.conf
Чтобы настроить Denyhosts на вашем сервере, запустите следующую команду:
sudo nano /etc/denyhosts.conf
Файл конфигурации должен выглядеть как изображение ниже: теперь знайте значение каждого изменения, которое мы будем делать в файле конфигурации denyhosts.
Deny_threshold_invalid
Значение по умолчанию для DENY_THRESHOLD_INVALID составляет 5. Это означает, что кто-то может попробовать SSH на вашем сервере, используя имени пользователя, которое является не существующей учетной записью пользователя. Однако человек может попробовать это только 5 раз. После этого IP -файл злоумышленника добавляет файл/etc/hosts.deny. Никто не может, используя IP, который был добавлен в файл/etc/hosts.deny, если только этот IP не был удален для конфигурации. DENY_THRESHOLD_INVALID: заблокировать каждый хост после количества неудачных попыток входа в систему превысило это значение. Это значение применимо к неверным попыткам входа в систему пользователя (например, несуществующие учетные записи пользователей)
Deny_threshold_valid
Deny_threshold_valid имеет значение по умолчанию 10. Но это относится только к существующим учетным записям пользователей на сервере. Однако, если попытка входа в систему с действительным пользователем не удается 10 раз, IP -адрес, пытающийся установить соединение с сервером, будет добавлена в файл/etc/hosts.deny. DENY_THRESHOLD_VALID: заблокировать каждый хост после количества неудачных попыток входа в систему превысило это значение. Это значение применяется к действительным попыткам входа в систему пользователя (например, Учетные записи пользователей, которые существуют в/etc/passwd), за исключением «корневого» пользователя
Deny_threshold_root
DENY_THRESHOLD_ROOT имеет значение по умолчанию 1. Это относится к неверному входу в систему корня. Это означает, что вы можете попытаться войти через SSH только один раз, когда он сбой, машина, пытающаяся установить соединение с IP -адресом сервера, будет добавлена в файл/etc/hosts.deny. DENY_THRESHOLD_ROOT: заблокировать каждый хост после количества неудачных попыток входа в систему превысило это значение. Это значение применимо только к попыткам входа в систему пользователя.
Age_reset_valid
AGE_RESET_VALID имеет значение по умолчанию 5 дней. Это означает, что неудачный логин для существующего пользователя будет сброшен до 0 через 5 дней. Age_reset_valid: Определяет период времени между неудачными попытками входа в систему, которые, когда они превышают, приведет к сбросу от неудачного счета, чтобы этот хост был сброшен до 0.
AGE_RESET_ROOT
AGE_RESET_ROOT имеет дефолт 25 дней. То есть неудачный логин корня может быть сброшен только через 0 через 25 дней. AGE_RESET_ROOT: Определяет период времени между неудачными попытками входа в систему, которые, когда они превышают, приведет к сбросу от неудачного счета, чтобы этот хост был сброшен до 0.
AGE_RESET_INVALID
AGE_RESET_INVALID имеет дефолт на 10 дней. Это означает, что неудачный логин для несуществующего пользователя будет сброшен до 0 через 10 дней.
Age_reset_invalid: Определяет период времени между неудачными попытками входа в систему, которые, когда они превышают, приведет к сбросу от неудачного счета, чтобы этот хост был сброшен до 0. Файл конфигурации имеет больше вариантов, чем вы можете изучить. Конфигурация также является самоочевидной, просто не торопитесь и прочитайте о том, что делает каждая настройка конфигурации перед настройкой. Хорошо, теперь у нас есть хорошие знания о том, как настроить denyhosts, используя
Более того, есть несколько других конфигураций, чтобы не блокировать наших клиентов и нас самих на сервере.
Белый список IP -адреса
Причиной беллисталистической системы нашего IP -адреса и, если возможно, пример нашей клиентской машины состоит в том, чтобы сообщить системе, что IPS, данные в белом списке, не представляют угрозы для системы.
Однако, чтобы добавить IP -адрес в белый список, отредактируйте файл/etc/hosts.allow со следующей командой:
sudo nano /etc/hosts.allow
Затем следуйте следующему синтаксису:
sshd: IP1, IP2, ..., IPn
Например:
sshd: 152.178.43.13, 162.128.78.16
Теперь сохраните и закройте файл.
Перезапустить службу Denyhosts
Используйте следующие команды, чтобы перезапустить службу Denyhosts:
sudo systemctl restart denyhosts.service
Кроме того, мы можем включить системные denyhosts при запуске, используя следующую команду:
sudo systemctl enable denyhosts.service
Проанализировать события журнала для Denyhosts
Теперь давайте перечислим текущие события Denyhosts, используя команду ниже:
sudo tail -f /var/log/denyhosts
Листинг заблокированных IPS
Чтобы перечислить все IP -адреса, которые пытались получить доступ к серверу через SSH. Запустите команду ниже:
sudo cat /etc/hosts.deny
Тем не менее, Denyhosts не поддерживает IPv6.
Включить централизованную поддержку синхронизации
Кроме того, давайте обеспечим поддержку централизованной синхронизации. Следовательно, блокируя хакеров из многих других серверов. Этот веб -сайт xmlrpc.denyhosts.net собирает статистику с других серверов, использующих синхронизацию denyhosts. Поддержка синхронизации отключена по умолчанию. Давайте включим это, добавив следующую строку кода в/etc/denyhosts.conf
SYNC_SERVER = http://xmlrpc.denyhosts.net:9911
После, сохраните и закройте файл, затем перезапустите Denyhosts с помощью следующей команды:
sudo systemctl restart denyhosts.service
В ситуации, когда вам нужно остановить или начать denyhosts, могут быть полезны следующие команды:
sudo systemctl start denyhosts.service sudo systemctl stop denyhosts.service
Наконец, как указывает статья, Denyhosts облегчает нам управление компьютерами, которые пытаются подключиться к нашему серверу. Упростить административные задачи. Если вы хотите узнать больше о том, как защитить свой сервер, проверьте статью Быстрые советы для Harden SSH на Ubuntu Анкет
Оригинал: «https://dev.to/ayekpleclemence/how-to-install-and-configure-denyhosts-on-ubuntu-18-04-lts-155n»