URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID10
Нить номер: 1670
[ Назад ]

Исходное сообщение
"вопрос по IPTABLES"

Отправлено Mikes , 16-Окт-04 15:41 
Добрый день, у меня вопрос, не могли бы вы мне помочь?
у меня траф на линуксе считается отдельно Международный, Украинский и Локалка... локалка это типа всё что было закачано и скачано с сервачины...
Так вот вопрос в том что когда люди прописывают в тупую проксю с портом 3128 то им считается весь траф как локальный, хотя на самом деле они ходят наружу в интернет... у меня в фаерволле прописано перенаправление с 80-го порта на 3128-й порт всех пакетов, тойсть если они не прописывают проксю, то спокойно ходят в интернет, и траф считается нормально, как можно запретить доступ к 3128 порту напрямую? тойсть мне надо сделать так что бы люди не могли заходить на мой линукс если прописывают 3128-й порт... а могли бы заходить в инет только через редирек... тойсть когда прокся не прописана...
у меня стоит правило
-A PREROUTING -d ! 192.168.13.0/255.255.255.192 -i eth1 -p tcp --dport 80  -j REDIRECT --to-port 3128
Это типа редирект...
ещё старался сделать что то наподобии
-I INPUT -i eth1 -p tcp --dport 3128 -j DROP
что бы все входящие пакеты по 3128 откидывались...
но когда я вводил это правило (второе) то интернет вообще не пахал, подскажите плиииз
Заранее очень благодарен, и оченьизвиняюсь за свою безграмотность...

Содержание

Сообщения в этом обсуждении
"вопрос по IPTABLES"
Отправлено edwin , 17-Окт-04 08:32 
>-A PREROUTING -d ! 192.168.13.0/255.255.255.192 -i eth1 -p tcp --dport 80  
>-j REDIRECT --to-port 3128
>Это типа редирект...
>ещё старался сделать что то наподобии
>-I INPUT -i eth1 -p tcp --dport 3128 -j DROP
>что бы все входящие пакеты по 3128 откидывались...
>но когда я вводил это правило (второе) то интернет вообще не пахал,
>подскажите плиииз
Конечно.
у тебя 80-й порт редиректится на 3128.
А ты зарубваеш 3128.
Это не дело.
Сделай проще:
Пусти все через squid, и им-же считай траффик.
Надежней будет.

"вопрос по IPTABLES"
Отправлено Mikes , 17-Окт-04 12:06 
>>-A PREROUTING -d ! 192.168.13.0/255.255.255.192 -i eth1 -p tcp --dport 80  
>>-j REDIRECT --to-port 3128
>>Это типа редирект...
>>ещё старался сделать что то наподобии
>>-I INPUT -i eth1 -p tcp --dport 3128 -j DROP
>>что бы все входящие пакеты по 3128 откидывались...
>>но когда я вводил это правило (второе) то интернет вообще не пахал,
>>подскажите плиииз
>Конечно.
>у тебя 80-й порт редиректится на 3128.
>А ты зарубваеш 3128.
>Это не дело.
>Сделай проще:
>Пусти все через squid, и им-же считай траффик.
>Надежней будет.


у меня просто уже всё настроено для моей считалки, и всё переделывать как то не охота.... по идее я так понял что INPUT должен делать правило для тех пакетов которые предназначены именно для Линукса, тойсть все пакеты которые направлены непосредственно на него... а при редиректе это уже не то, тойсть это уже по идее пакет который идёт дальше... или  я чего-то не понимаю? подскажите, можно ли всё таки сделать такое правило?


"вопрос по IPTABLES"
Отправлено Асен Тотин , 17-Окт-04 19:40 
Привет,
может, попробовать так:

1. Ставим на INPUT правило для DROP пакетов, идущих прямо на 3128. При этом пакеты на порт 80 пройдут через это правило.

2. Ставим редирект с 80-ого порта на 3128...

Если это не сработает, можно подумать насчет замены REDIRECT-а DNAT-ом; вожможно, тогда понадобитсяа еще одна машина, зато проблему вы на 100%  решите.

WWell,



"вопрос по IPTABLES"
Отправлено Mikes , 17-Окт-04 20:03 
>Привет,
>может, попробовать так:
>
>1. Ставим на INPUT правило для DROP пакетов, идущих прямо на 3128.
>При этом пакеты на порт 80 пройдут через это правило.
>
>2. Ставим редирект с 80-ого порта на 3128...
>
>Если это не сработает, можно подумать насчет замены REDIRECT-а DNAT-ом; вожможно, тогда
>понадобитсяа еще одна машина, зато проблему вы на 100%  решите.
>
>
>WWell,


Добрый день уважаемый, я что то не пойму... толи я слишком глуп, толи вы не читали моего сообщения, я писал:
>>-A PREROUTING -d ! 192.168.13.0/255.255.255.192 -i eth1 -p tcp --dport 80  -j REDIRECT --to-port 3128
>>Это типа редирект...
>>ещё старался сделать что то наподобии
>>-I INPUT -i eth1 -p tcp --dport 3128 -j DROP
>>что бы все входящие пакеты по 3128 откидывались...
это я типа такое пытался сделать? или может вы что то не то имеете ввиду? или может я как-то правило не так написал, подскажите...


"вопрос по IPTABLES"
Отправлено fantom , 18-Окт-04 11:25 
попробуй
-I INPUT -i eth1 -p tcp  -d 192.168.xxx.xxx --dport 3128 -j DROP
где 192.168.xxx.xxx - адрес в локалке твоего сервака.
Таким образом будет запрет на обращение ИМЕННО К ПРОКСЕ а не на порт вообще...

"вопрос по IPTABLES"
Отправлено Mikes , 18-Окт-04 13:19 
>попробуй
>-I INPUT -i eth1 -p tcp  -d 192.168.xxx.xxx --dport 3128 -j
>DROP
>где 192.168.xxx.xxx - адрес в локалке твоего сервака.
>Таким образом будет запрет на обращение ИМЕННО К ПРОКСЕ а не на
>порт вообще...


Дело в том уважаемый что этого я сделать не могу, так как моя прокся раздаёт всем интернет.... =) если я это пропишу то вся моя сетка будет без интернета =) я понимаю что эгоизм это хорошо, но всё же... =)


"вопрос по IPTABLES"
Отправлено fantom , 20-Окт-04 14:11 
>>попробуй
>>-I INPUT -i eth1 -p tcp  -d 192.168.xxx.xxx --dport 3128 -j
>>DROP
>>где 192.168.xxx.xxx - адрес в локалке твоего сервака.
>>Таким образом будет запрет на обращение ИМЕННО К ПРОКСЕ а не на
>>порт вообще...
>
>
>Дело в том уважаемый что этого я сделать не могу, так как
>моя прокся раздаёт всем интернет.... =) если я это пропишу то
>вся моя сетка будет без интернета =) я понимаю что эгоизм
>это хорошо, но всё же... =)

Могу - немогу... ПРОБОВАЛ ИЛИ НЕПРОБОВАЛ????


"вопрос по IPTABLES"
Отправлено Mikes , 21-Окт-04 12:41 
>>>попробуй
>>>-I INPUT -i eth1 -p tcp  -d 192.168.xxx.xxx --dport 3128 -j
>>>DROP
>>>где 192.168.xxx.xxx - адрес в локалке твоего сервака.
>>>Таким образом будет запрет на обращение ИМЕННО К ПРОКСЕ а не на
>>>порт вообще...
>>
>>
>>Дело в том уважаемый что этого я сделать не могу, так как
>>моя прокся раздаёт всем интернет.... =) если я это пропишу то
>>вся моя сетка будет без интернета =) я понимаю что эгоизм
>>это хорошо, но всё же... =)
>
>Могу - немогу... ПРОБОВАЛ ИЛИ НЕПРОБОВАЛ????

пробовал, интернет вообще тогда не работает...


"вопрос по IPTABLES"
Отправлено Сергей , 18-Окт-04 11:36 
>ещё старался сделать что то наподобии
>-I INPUT -i eth1 -p tcp --dport 3128 -j DROP
>что бы все входящие пакеты по 3128 откидывались...
>но когда я вводил это правило (второе) то интернет вообще не пахал,
>подскажите плиииз

И правильно не работает!
PREPOUTING идет раньше чем INPUT и FORWARD. Так что с запросами к 3128 порту тебе нужно разбираться там. Фильтровать в PREPOUTING нельзя, но можно сделать:
1.) -A PREROUTING -d ! 192.168.13.0/255.255.255.192 -i eth1 -p tcp --dport 3128  -j REDIRECT --to-port 79
2.) -I INPUT -i eth1 -p tcp --dport 79 -j DROP

ВАЖНО: правило 1. нужно поставить перед твоим прероутингом! Ну и конечно см . http://gazette.linux.ru.net/rus/articles/iptables-tutorial.html


"вопрос по IPTABLES"
Отправлено Mikes , 18-Окт-04 13:14 
>>ещё старался сделать что то наподобии
>>-I INPUT -i eth1 -p tcp --dport 3128 -j DROP
>>что бы все входящие пакеты по 3128 откидывались...
>>но когда я вводил это правило (второе) то интернет вообще не пахал,
>>подскажите плиииз
>
>И правильно не работает!
>PREPOUTING идет раньше чем INPUT и FORWARD. Так что с запросами к
>3128 порту тебе нужно разбираться там. Фильтровать в PREPOUTING нельзя, но
>можно сделать:
>1.) -A PREROUTING -d ! 192.168.13.0/255.255.255.192 -i eth1 -p tcp --dport 3128
> -j REDIRECT --to-port 79
>2.) -I INPUT -i eth1 -p tcp --dport 79 -j DROP
>
>ВАЖНО: правило 1. нужно поставить перед твоим прероутингом! Ну и конечно см
>. http://gazette.linux.ru.net/rus/articles/iptables-tutorial.html


Вроде бы сделал так как вы сказали, но это правило так и не сработало, всё равно пропускает через 3128-й порт, даже не знаю чего так...


"в высшей математике самое сложное - арифметика ;)"
Отправлено Сергей , 18-Окт-04 15:27 
... в том смысле, что горбатого могила исправит :(

Ну конечно же мое правило 1. должно выглядеть так:

1.) -A PREROUTING -d gate.foo.net -i eth1 -p tcp --dport 3128 -j REDIRECT --to-port 79

где gate.foo.net - IP твоего шлюза. Ибо когда в броузере указать proxy, то пакеты шлются в адрес proxy, а не www сайта.
Остальные рекомендации в силе + man tcpdump.


"в высшей математике самое сложное - арифметика ;)"
Отправлено Mikes , 18-Окт-04 22:41 
>... в том смысле, что горбатого могила исправит :(
>
>Ну конечно же мое правило 1. должно выглядеть так:
>
>1.) -A PREROUTING -d gate.foo.net -i eth1 -p tcp --dport 3128 -j
>REDIRECT --to-port 79
>
>где gate.foo.net - IP твоего шлюза. Ибо когда в броузере указать proxy,
>то пакеты шлются в адрес proxy, а не www сайта.
>Остальные рекомендации в силе + man tcpdump.


и всё равно ничерта толком не выходит... =(
ладно буду Маны читать... =)