LINUX.ORG.RU
решено ФорумAdmin

iptables резать исходяший трафик с порта


0

1

Добрый вечер;) в локальной сети на debian в iptables установил следуюшее правило: iptables -t filter -A OUTPUT -p tcp --dport http -j DROP однако все равно трафик идет и http страница доступна, единственное чем я смог добиться запрета исходяших пакетов это : iptables -P OUTPUT DROP но он же режет все исходяшие пакеты не прописаные в правилах, что мне совсем не нужно.


1. Сначала определитесь с терминами. «Резать исходящий трафик с порта» - это словно какой-то гуманитарный поток сознания. Вам что надо - запретить возможность подключения с вашего компьютера на опредлённый порт удалённого сервера? Или запретить отправку пакетов с опредлённого порта вашего компьютера?

2. Показывайте полный вывод iptables-save. Мы понятия не имеем, какие у вас там правила кроме того, которое вы добавили.

Nastishka ★★★★★
()
Ответ на: комментарий от Nastishka

Прошу прошения. Я подразумевал запретить исходяшие пакеты с моего компьютера. А задано всего лиш одно правило -A OUTPUT -p tcp -mtcp --dport 80 -j DROP и еще тогда вопрос можно ли с помощью iptables заблокировать исходяшие с порта когда объем исходяшик привысил допустим 100мб. Заранне благодарен.

Team9
() автор топика
Ответ на: комментарий от Team9

А задано всего лиш одно правило -A OUTPUT -p tcp -mtcp --dport 80 -j DROP

ПОКАЗЫВЙТЕ ВЫВОД iptables-save. Полностью. Чудес не бывает. И еще проверьте, что в ссылке к «странице» у вас не https://, не стоит http://domain.com:8080/, а в настройках браузера не указан proxy. Посмотрите вывод tcpdump. Проверьте, что страница отдается не из кэша.

Nastishka ★★★★★
()
Ответ на: комментарий от Nastishka

Хорошо:) Есть компютер1 на котором я пытаюсь настроить iptables и стоит апач, и компьютер2 в локальной сети.

*filter :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [0:0] -A OUTPUT -p tcp -m tcp --dport 80 -j DROP COMMIT # Completed on Mon Jan 30 22:31:05 2012

далее захожу с компьютер1 в интернет - ничего не получаеться, вот статистика:

iptables -L -v -n Chain INPUT (policy ACCEPT 56 packets, 6591 bytes) pkts bytes target prot opt in out source destination

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes) pkts bytes target prot opt in out source destination

Chain OUTPUT (policy ACCEPT 34 packets, 3227 bytes) pkts bytes target prot opt in out source destination 102 5724 DROP tcp  — * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:80

ок, блокируеться, однако захожу с компьютер2 на компьютер1 на 80 порт, и все работает, захожу с разных браузеров и очищяю кэш. вот статистика:

iptables -L -v -n Chain INPUT (policy ACCEPT 151 packets, 20343 bytes) pkts bytes target prot opt in out source destination

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes) pkts bytes target prot opt in out source destination

Chain OUTPUT (policy ACCEPT 93 packets, 17060 bytes) pkts bytes target prot opt in out source destination 243 12664 DROP tcp  — * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:80

Team9
() автор топика
Ответ на: комментарий от Team9

ок, блокируеться, однако захожу с компьютер2 на компьютер1 на 80 порт, и все работает

чтобы ответить на свой вопрос прочитай свой вопрос: «в iptables установил следуюшее правило: iptables -t filter -A OUTPUT -p tcp --dport http -j DROP»

если не понял, на компе1 в момент когда с компа2 все открывается, сделай netstat -tn | grep 80.

если все еще не понял, вбивай в гугле «iptables прохождение пакетов» и читай.

если до сих пор не понял, иди в армию и тебе там ротный будет командовать: «Сено-солома, Сено-солома».

uspen ★★★★★
()
Ответ на: комментарий от Team9

однако захожу с компьютер2 на компьютер1 на 80 порт

А согласно этим правилам, оно и не должно блокироваться, потому что, когда вы подключаетесь с К2 на K1, к вам приходят пакеты K2:12345 -> K1:80 (dport 80) и отправлются K1:80 (sport 80) -> K2:12345.

вся ошибка в --dport на --sport

«Вся ошибка» в непонимании того, что блокировать входящие соединения надо на цепочке INPUT, а не OUTPUT:

iptables -A INPUT -j DROP -p tcp --dport 80
# Запретим подключение к этому компьютеру на порт 80 (удалённый браузер, локальный сервер)

iptables -A OUTPUT -j DROP -p tcp --dport 80
# Запретим подключение с этого компьютера к другим на порт 80 (локальный браузер, удаленный сервер)
Nastishka ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.