Блокировка вредоносных ботов для XRDP подключений через fail2ban

Тип статьи:
Авторская

Создаем правило

suno nano /etc/fail2ban/filter.d/xrdp-auth.conf

  1. [Definition]
  2. failregex = ^.*connection received from (?:.*:)?<ADDR>.*\n(?:.*\n){0,3}.*header read error
  3. ^.*connection received from (?:.*:)?<ADDR>.*\n(?:.*\n){0,3}.*login failed
  4. ^.*connection received from (?:.*:)?<ADDR>.*\n(?:.*\n){0,3}.*Cannot accept TLS
  5.  
  6. ignoreregex =
  7. ^.*connection received from (?:::ffff:)?(?:127\.0\.0\.1|::1)
  8.  
  9. datepattern = ^\[%%Y%%m%%d-%%H:%%M:%%S\]
  10.  

Cоздаем jail

suno nano /etc/fail2ban/jail.d/xrdp-auth.conf

  1. [xrdp-auth]
  2. enabled = true
  3. filter = xrdp-auth
  4. logpath = /var/log/xrdp.log
  5. /var/log/xrdp-sesman.log
  6. backend = auto
  7.  
  8. # Читаем до 10 строк лога за раз для сопоставления IP и ошибки
  9. maxlines = 10
  10.  
  11. maxretry = 2
  12. findtime = 1d
  13. bantime = 30m
  14. bantime.increment = true
  15. bantime.multiplier = 2
  16.  
  17. # Блокируем ВСЕ порты для нарушителя
  18. port = 0:65535
  19.  
  20. bantime.overalljails = true
  21.  
  22. bantime.maxtime = 30d

sudo service fail2ban reload

Если вы хотите заблокировать доступ для всех IP, кроме тех, кому явно разрешено (принцип белого списка), см. другую статью.

46
Посещая этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.