Как отбросить исходящий трафик на основе совпадения строки по HTTPS
Я управляю небольшим сервером общего хостинга. Сегодня я получил жалобу от моего хостинг-провайдера о том, что мой сервер отправляет запросы на страницы wp-login.php других сайтов в других местах. Я реализовал правило брандмауэра
/sbin/iptables -I OUTPUT -p tcp --dport 80 -m string --string "wp-login.php" --algo kmp -j REJECT --reject-with tcp-reset
Я проверил и с моего сервера не могу отправить запрос http://testsite.com/wp-login.php
, Это здорово, и работает как положено.
Тем не менее, я все еще получил жалобу на эту проблему, поэтому я предполагаю, что плохой пользователь использует HTTPS для атаки на wp-login.php целевых веб-сайтов. Я реализовал следующее правило, но оно не работает
/sbin/iptables -I OUTPUT -p tcp --dport 443 -m string --string "wp-login.php" --algo kmp -j REJECT --reject-with tcp-reset
Я понимаю, потому что через HTTPS URL-адрес зашифрован, поэтому этот метод не работает.
Я хотел бы спросить, как мне обойти эту проблему, чтобы предотвратить / заблокировать / идентифицировать преступника?
Заранее спасибо!
1 ответ
Drop OUTPUT для веб-пользователей
iptables -A OUTPUT -m owner --gid-owner web-users -j DROP
Установите прозрачный локальный прокси. Блокировать трафик там.