Могу ли я, используя HAproxy, направить трафик на внутренний сервер со всех остальных внутренних серверов в пуле? С точки зрения сети это было бы сопоставимо с зеркалированием всех портов коммутатора на один порт для проверки. Таким образом, я мог передать весь трафик в незашифрованном виде на адрес обратной связи и проверить его с помощью SNORT.
В настоящее время мы шифруем весь трафик на наших узлах HAproxy и отправляем этот трафик в зашифрованном виде на наши веб-серверы. У нас есть внешняя IDS, однако, поскольку у нее есть только наш сертификат для расшифровки трафика, мы не можем реализовать идеальную прямую секретность или шифры diffie-helman на haproxy.
Я читал руководства, которые позволяют делать это с помощью F5, но для нас это не вариант.
Спасибо за любую информацию, которую вы можете предоставить.
HAProxy не может этого сделать сам по себе, но если вы использовали набор довольно простых frontend/listen
declerations, вы можете использовать iptables
TEE
цель (см. Вот для использования), это должно быть довольно просто.
Для системы, в которой «общедоступный» IP-адрес сервера - 10.10.10.10, серверные части - 192.168.1.11 и 192.168.1.12, а IDS - 172.16.172.10, конфигурация HAProxy будет выглядеть примерно так:
listen IN
mode tcp
bind 10.10.10.10:443
<other HAProxy options/directives here>
server hap-intermediary 127.1.1.1:443
frontend INTERMEDIARY
mode http
bind 127.1.1.1:443 ssl crt /path/to/cert.pem
<other HAProxy options/directives here>
<backend selection logic, if needed>
default_backend SERVERS
backend SERVERS
<other HAProxy options/directives here>
server server1 192.168.1.11:443 check check-ssl ssl
server server2 192.168.1.12:443 check check-ssl ssl
Это просто пропускает весь трафик от IN
к INTERMEDIARY
в какой бы форме он ни поступал на сервер, а затем INTERMEDIARY
расшифровывает запросы и делает любой выбор.
Затем вам нужно будет настроить iptables
правила, которые выглядят так:
iptables -t mangle -A PREROUTING -d 127.1.1.1 -j TEE --gateway 172.16.172.10
iptables -t mangle -A POSTROUTING -s 127.1.1.1 -j TEE --gateway 172.16.172.10
Конечно, это предполагает, что все маршруты и сети настроены, но это должно работать.
Я полагаю, вы могли бы просто покончить со всем материалом HAProxy и настроить некоторые iptables
правила для соответствия вашим внутренним хостам и TEE
этот трафик прямо к вашей IDS.
# Server 1
iptables -t mangle -A PREROUTING -d 192.168.1.11 -j TEE --gateway 172.16.172.10
iptables -t mangle -A POSTROUTING -s 192.168.1.11 -j TEE --gateway 172.16.172.10
# Server 2
iptables -t mangle -A PREROUTING -d 192.168.1.12 -j TEE --gateway 172.16.172.10
iptables -t mangle -A POSTROUTING -s 192.168.1.12 -j TEE --gateway 172.16.172.10