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

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

В отличие от другой похожей статьи, где речь шла про блокировку только вредоносных ботов, здесь приведен вариант, когда любой IP, который не прописан в белом списке, попадает под блокировку, даже если введены верные логин и пароль.

Сразу оговорюсь, что настраивать такой фильтр имеет смысл, только если у вас статический (постоянный) IP, который не меняется (в противном случае заблокируете себе доступ к серверу). У большинства домашних интернет-провайдеров эта услуга либо не предоставляется, либо является платной и подключается отдельно.

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

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

  1. [Definition]
  2. failregex = ^.*connection received from (?:::ffff:)?<HOST>
  3.  
  4. ignoreregex =
  5.  
  6. datepattern = \[%%Y%%m%%d-%%H:%%M:%%S\]

Cоздаем jail

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

  1. [xrdp-try]
  2. enabled = true
  3. filter = xrdp-try
  4. logpath = /var/log/xrdp.log
  5. maxretry = 1
  6. port = 0:65535
  7. findtime = 1d
  8. bantime = 30m
  9.  
  10. bantime.increment = true
  11.  
  12. bantime.multiplier = 2
  13.  
  14. bantime.overalljails = true
  15.  
  16. bantime.maxtime = 30d

где logpath — путь к логу xrdp.

Редактируем
sudo nano /etc/fail2ban/jail.conf

  1. #этот параметр изначально закомментирован, его нужно отредактировать
  2. ignoreip = 127.0.0.1/8
  3. ::1
  4. 123.456.78.90

где 123.456.78.90 — ваш IP.

sudo service fail2ban restart

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