Настройка ufw (firewall для unix)

Куля, навіть просвистівша поруч, викликає підвищену роботу головного мозку



    Встановлюємо файрвол:

  • sudo apt install ufw


  • Перевіряємо статус

  • sudo ufw status


  • Забороняємо всі ВХІДНІ з'єднання

  • sudo ufw default deny incoming


  • Дозволяємо всі ВИХІДНІ з'єднання

  • sudo ufw default allow outgoing


  • Обов'язково додаємо доступ до ссш, інакше якщо працює через нього, то з'єднання буде втрачено після запуску файрвола

  • sudo allow 22/tcp


  • Якщо потрібно прокинути UDP трафік (наприклад для syslog) то:

  • sudo allow 514/udp


  • Якщо необхідно відхилити трафік

  • sudo ufw deny 3306/tcp


  • Вмикаємо файрвол

  • sudo ufw enable


  • Перевіряємо статус і які правила застосовані

  • sudo ufw status verbose


  • Щоб дозволити доступ до ссш лише з певної мережі, або якщо забрати маску, то певного ІП

  • sudo ufw allow from 192.n.n.0/24 to any port 22


  • Для видалення правила, або дозволу

  • sudo ufw delete allow 514

Настройка fail2ban



    Встановлюємо тулзу:

  • sudo apt install fail2ban


  • Для того щоб при оновлені не скинулись налаштування копіюємо і редагуємо тільки локальну копію налаштувань, вона має вищий приорітет

  • sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local


  • Редагуємо налаштування

  • sudo vim /etc/fail2ban/jail.local
    1. bantime --> час на який заблокує атакуючий іп (величина в годинах, або можна використати скорочення "d": наприклад для 1дня - 1d
    2. findtime --> часове вікно протягом якого фіксуються спроби атаки (в секундах)
    3. maxretry --> максимальна кількість невдалих спроб входу до блокування
    4. ignoreip --> список іп адрес які ніколи не будуть заблоковані



    Знаходимо секцію [sshd]

    1. enabled=true port=ssh,[НОВИЙ_НОМЕР_ПОРТА_ЯКЩО_ЙОГО_ЗМІНЕНО]



    Перезапускаємо, та вмикаємо автозавантаження

  • sudo systemctl restart fail2ban
  • sudo systemctl enable fail2ban


  • Щоб перевірити статус програми

  • sudo fail2ban-client status


  • Щоб перевірити заблокованих для ssh

  • sudo fail2ban-client status sshd


  • Щоб розблокувати

  • sudo fail2ban-client unban 192.n.n.n