У нас есть соединения с фильтрацией прокси, но некоторые сайты используют RTMP, который работает на порту 1935. Это не может проходить через прокси, поскольку прокси - это только порт 80.
Насколько я знаю, если RTMP не удастся, он повторит попытку через порт 80.
Итак, как я могу заблокировать 1935 год в iptables
заставить RTMP проходить через обычный HTTP-порт?
У меня есть следующее, но оно не работает.
Любые потоки RTMP по-прежнему не работают.
[root@li711-43 ~]# iptables -A INPUT -p tcp --destination-port 1935 -j DROP
[root@li711-43 ~]# iptables -A OUTPUT -p tcp --dport 1935 -j DROP
Итак, как я могу заблокировать 1935 год в
iptables
заставить RTMP проходить через обычный HTTP-порт?
Использовать ПЕРЕДАЧА цепочка:
iptables -t nat -I PREROUTING -p tcp --dport 1935 -j REDIRECT --to-ports 80
Но при этом вы также говорите следующее:
У нас есть соединения с фильтрацией прокси, но некоторые сайты используют RTMP, который работает на порту 1935. Это не может проходить через прокси, поскольку прокси - это только порт 80.
Так что, порт 1935 полностью заблокирован? Вам нужно будет как минимум пробить дыру в цепочке FORWARD, чтобы позволить 1935 пройти, а затем отправить его на порт 80 через приведенное выше правило PREROUTING:
iptables -A INPUT -p tcp -m tcp --dport 1935 -j ACCEPT
Или если iptables
собирается перенаправить этот трафик на другую машину, вам нужно установить этот IP-адрес; замена 123.45.67.89
с фактическим IP-адресом конечной машины:
iptables -A FORWARD -i eth0 -p tcp --dport 1935 -d 123.45.67.89 -j ACCEPT