firewalld - изменить адрес исходящих запросов http и https от локального процесса

У меня есть процесс, который прослушивает входящий порт 80 и 443 трафика, а затем отправляет его получателю экстрасети. Это прокси, но я не хочу использовать этот термин, потому что мне нужно отправлять ITS исходящие запросы через прокси компании. Тем не менее, приложение не разработано с параметром конфигурации для прокси, и оно не учитывает никаких настроек прокси системы.

Я экспериментировал с firewalld, но не смог изменить IP-адрес назначения только для порта 80 и 443 трафика OUTGOING. Я думаю, что это в конечном итоге перенаправило весь ВХОДЯЩИЙ трафик на 80 и 443.

Я могу опубликовать некоторые правила, которые я использовал, но я надеюсь, что это просто для ветеранов firewalld - я только коснулся этого пару раз.

Это на RHEL 7, кстати.

0 ответов

Я хотел бы предложить вам использовать NAT для этого:

1 - Включить IP-пересылку: echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf ; sudo sysctl -w net.ipv4.ip_forward=1

2 - Запустите IPtables: sudo systemctl start iptables

3 - Переадресация входящего трафика через порт 443 и 80 на ваш dest_ip: dest_port

sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination <dest_ip>:<dest_port>
sudo iptables -t nat -A PREROUTING -p tcp --dport 443 -j DNAT --to-destination <dest_ip>:<dest_port>
sudo iptables -t nat -A POSTROUTING -p tcp -d <dest_ip> --dport <dest_port> -j SNAT --to-source <source_ip>

4 - Убедитесь, что истины установлены правильно: sudo iptables -t nat -L -n

5 - Проверьте, а затем сделайте ваши правила постоянными:

sudo iptables-save | sudo tee /etc/sysconfig/iptables
Другие вопросы по тегам