После перестройки системы на новое ядро и переход с ipchains на iptables, с помощью нехитрых комбинаций, настроил проксирование трафика по 80 порту через сквид.
пара следующих правил из таблицы nat
-A PREROUTING -i eth0 -p tcp -m tcp -d ! 10.0.0.0/255.0.0.0 --dport 80 -j REDIRECT --to-ports 3128
-A POSTROUTING -s 10.4.253.0/255.255.255.0 -o eth1 -j MASQUERADE
которые пробрасывают весь трафик идущий 80 порт (кроме того что обращен в адресное пространство корпоративной сети) на разбор сквида.А теперь мне надо сделать исключение из этого правила скажем для моей машины с адресом 10.4.253.100, дабы я мог ходить в интернет не через сквид, а напрямую.
Помогите сформировать правило...
Ну наверное изменить первую строчку-A PREROUTING -i eth0 -p tcp -m tcp -s ! 10.4.253.100/255.255.255.255 -d ! 10.0.0.0/255.0.0.0 --dport 80 -j REDIRECT --to-ports 3128
>-A PREROUTING -i eth0 -p tcp -m tcp -s ! 10.4.253.100/255.255.255.255 -d
>! 10.0.0.0/255.0.0.0 --dport 80 -j REDIRECT --to-ports 3128Правило подходит для выставления только одной машины. Видимо некорректно задал вопрос...
Хорошо, поставим вопрос по другому :)Выставить в обход сквида машины 10.4.253.100, 10.4.253.20, 10.4.253.10 и скажем пул модемных соединений 192.168.253.0/255.255.255.0
построутинг для модемов прописан...
>>-A PREROUTING -i eth0 -p tcp -m tcp -s ! 10.4.253.100/255.255.255.255 -d
>>! 10.0.0.0/255.0.0.0 --dport 80 -j REDIRECT --to-ports 3128
>
>Правило подходит для выставления только одной машины. Видимо некорректно задал вопрос...
>Хорошо, поставим вопрос по другому :)
>
>Выставить в обход сквида машины 10.4.253.100, 10.4.253.20, 10.4.253.10 и скажем пул модемных
>соединений 192.168.253.0/255.255.255.0
>
>построутинг для модемов прописан...В этой цепочке (перед редиректом) для нужных адресов делай ACCEPT... И усе :-)
>В этой цепочке (перед редиректом) для нужных адресов делай ACCEPT... И усе
>:-)ааатлична :)
после дорисовки строчек, аля
-A PREROUTING -s 10.4.253.100/255.255.255.255 -i eth0 -p tcp -m tcp -d 0.0.0.0/0.0.0.0 -j ACCEPT
перед редиректом, для каждой привилегированной машины все заработало, спасибо :)
Кстати попутно вопрос - а можно ли как то в эту строчку добавить проверочку на макадрес? а то у меня некоторые герои любят в отсутствие привилегированных компов находить их и подставлять айпишники :)по голове получают, но периодически продолжают мурыжить... хочется отфильтровать :)
Ну блин, man iptables прочитай.mac
--mac-source [!] address
Match source MAC address. It must be of the form XX:XX:XX:XX:XX:XX. Note that this only makes sense for packets coming from an Ethernet device and entering the PREROUTING, FORWARD or INPUT chains.