Правила, созданные Fail2ban, работают на уровне IP и не ограничиваются конкретными портами, если только вы не укажете это в ваших правилах. Давайте детально разберём вашу ситуацию.
### Что происходит?
1. **Правила Fail2ban**: Ваше правило `iptables-multiport` было правильно настроено, чтобы блокировать все подключения к портам, указанным в `port = imap,imaps,pop3,pop3s`. Это означает, что если IP-адрес подпадает под условие блокировки, все попытки подключиться к любому из указанных портов будут заблокированы.
2. **Журнал логов Fail2ban**: По вашим логам видно, что Fail2ban зафиксировал несколько неудачных попыток подключения от IP-адреса `193.105.37.198` и выполнил блокировку. Это значит, что Fail2ban работает корректно.
3. **Состояние iptables**: Вы видите, что правило действительно было добавлено, и оно использует `REJECT` по IP, который был заблокирован. Это правило будет блокировать все попытки подключения от данного IP, в том числе к порту 143, потому что это правило не привязывается к конкретному порту.
### Разъяснение правила
Правило в iptables:
```
num target prot opt source destination
1 REJECT 0 -- 193.105.37.198 0.0.0.0/0 reject-with icmp-port-unreachable
```
Этот выход означает, что любые пакеты (для всех протоколов, поскольку `prot opt` имеет значение `0`, что означает любой протокол) от источника `193.105.37.198` к любой цели (так как `destination` — это `0.0.0.0/0`) будут отвергнуты. Так что, если атакующий пытается подключиться к IMAP (порт 143), его подключение будет отклонено.
### Заключение
Таким образом, ваше правило действительно должно блокировать подключения к порту 143, и в этом нет недоразумения. Возможно, проблема заключается в том, что вы неявно проверяете, работает ли блокировка, или ваши тесты на подключение могут не срабатывать как ожидалось. Для проверки вы можете использовать такие утилиты, как `telnet` или `nmap`, чтобы попытаться подключиться к порту с заблокированного IP. Если вы все сделали правильно и увидели блокировку в правилах iptables, блокировка работает корректно.