Добрый день!
Понимаю, что подобные темы уже были и по поиску я с ними ознакомился. Но тем не менее...сам я больше пока программист, чем админ, не могу разобраться до конца...
Есть шлюз на ASP Linux 9 с двумя картами - eth0 смотрит на провайдера, eth1 в локалку с 192.168.1.х. Из локалки в инет пользователи ходят через SQUID 2.5-STABLE4, на порту 8080. Поверх сквида еще стоит SAMS для управления трафиком пользователей.
Потребовалось поставить банк клиент, банковские админы сказали, что нужно открыть порты 1239, 1240 и 389, а также ip xxx.xx.xxx.xx и адрес yyy.yyy.ru.
Просто добавил эти порты в SSL_ports, перезапустил сквид. Пытаюсь делать telnet xxx.xx.xxx.xx 1249 - "Не удается подключиться к узлу на порт 1249 : Сбой подключения". С остальными портами тоже самое.
Кроме того, через SQUID и пинги не ходят вообще... Почему?
С сервера все телнетится.Прочитал, что можно решить проболему с помошью iptables, делаю:
iptables -t -nat -A POSTROUTING -p tcp -o eth0 -s 192.168.1.21 -m multiport --destination-ports 1239,1240,389 -j MASQERADE
в ответ получаю:
iptables v1.2.7a: can't initialize iptables table '-nat': Table does not exist (do you need to insmode?)
Perhaps iptables or your kernel need to be upgraded.Единственный доступный сейчас вариант - через модем и банковский модемный пул, но хочется решить все на сервере. К тому же беспокоит неполное понимание происходящего со сквидом - почему не ходят пинги и порты не открываются?
Большая просьба помочь.
>Добрый день!
>Понимаю, что подобные темы уже были и по поиску я с ними
>ознакомился. Но тем не менее...сам я больше пока программист, чем админ,
>не могу разобраться до конца...
>Есть шлюз на ASP Linux 9 с двумя картами - eth0 смотрит
>на провайдера, eth1 в локалку с 192.168.1.х. Из локалки в инет
>пользователи ходят через SQUID 2.5-STABLE4, на порту 8080. Поверх сквида еще
>стоит SAMS для управления трафиком пользователей.
>Потребовалось поставить банк клиент, банковские админы сказали, что нужно открыть порты 1239,
>1240 и 389, а также ip xxx.xx.xxx.xx и адрес yyy.yyy.ru.
>Просто добавил эти порты в SSL_ports, перезапустил сквид. Пытаюсь делать telnet xxx.xx.xxx.xx
>1249 - "Не удается подключиться к узлу на порт 1249 :
>Сбой подключения". С остальными портами тоже самое.
>Кроме того, через SQUID и пинги не ходят вообще... Почему?
Потому-что сквид это хттп-прокси, ни о каких пингах и банк клиентах он знать не знает.
Настраивайте НАТ.
>Настраивайте НАТ.
Пробовал, в силу недостатка знаний пока проблемы.
даю команду:
iptables -t -nat -A POSTROUTING -p tcp -o eth0 -s 192.168.1.21 -m multiport --destination-ports 1239,1240,389 -j MASQERADEв ответ получаю:
iptables v1.2.7a: can't initialize iptables table '-nat': Table does not exist (do you need to insmode?)
Perhaps iptables or your kernel need to be upgraded.как это понять?
>>Настраивайте НАТ.
>Пробовал, в силу недостатка знаний пока проблемы.
>даю команду:
>iptables -t -nat -A POSTROUTING -p tcp -o eth0 -s 192.168.1.21 -m
>multiport --destination-ports 1239,1240,389 -j MASQERADE
>
>в ответ получаю:
>iptables v1.2.7a: can't initialize iptables table '-nat': Table does not exist (do
>you need to insmode?)
>Perhaps iptables or your kernel need to be upgraded.
какое слово перевести?
>как это понять?возможно это поможет http://www.opennet.me/docs/RUS/iptables/
>>iptables v1.2.7a: can't initialize iptables table '-nat': Table does not exist (do
>>you need to insmode?)
>>Perhaps iptables or your kernel need to be upgraded.
>какое слово перевести?
>>как это понять?
>
>возможно это поможет http://www.opennet.me/docs/RUS/iptables/Спасибо, читаю. Как раз нашел описание этой проблемы в приложении. Но только все равно не пойму вот чего.
Проверяю наличие таблиц nat:
iptables -t nat -L
в ответ получаю:Chain PREROUTING (policy ACCEPT)
target prot opt source destinationChain POSTROUTING (policy ACCEPT)
target prot opt source destinationChain OUTPUT (policy ACCEPT)
target prot opt source destinationТо есть таблица есть. Но добавлять в нее все равно не добавляет.
>>Настраивайте НАТ.
>Пробовал, в силу недостатка знаний пока проблемы.
>даю команду:
>iptables -t -nat -A POSTROUTING -p tcp -o eth0 -s 192.168.1.21 -m
>multiport --destination-ports 1239,1240,389 -j MASQERADE
>
>в ответ получаю:
>iptables v1.2.7a: can't initialize iptables table '-nat': Table does not exist (do
>you need to insmode?)
>Perhaps iptables or your kernel need to be upgraded.
>
>как это понять?
Понимать это слудует так, что поддержка в ядре айпитаблеса у вас включена модулями и потому их нужно грузить ручками , например для NAT:
/sbin/modprobe ip_tables
/sbin/modprobe iptable_nat
модулей несколько для разных целей. А лучше пересоберите ядро и включите всё, что там касается для iptables. Прочтите документацию для iptables
>Понимать это слудует так, что поддержка в ядре айпитаблеса у вас включена
>модулями и потому их нужно грузить ручками , например для NAT:
>
>/sbin/modprobe ip_tables
>/sbin/modprobe iptable_nat
>модулей несколько для разных целей. А лучше пересоберите ядро и включите всё,
>что там касается для iptables. Прочтите документацию для iptablesПонятно, спасибо. Документацию читаю.
Ядро пересобрать вряд ли смогу, недостаточно знаний для этого, боязно грохнуть инет для всей конторы.
>>Понимать это слудует так, что поддержка в ядре айпитаблеса у вас включена
>>модулями и потому их нужно грузить ручками , например для NAT:
>>
>>/sbin/modprobe ip_tables
>>/sbin/modprobe iptable_nat
>>модулей несколько для разных целей. А лучше пересоберите ядро и включите всё,
>>что там касается для iptables. Прочтите документацию для iptables
>
>Понятно, спасибо. Документацию читаю.
>Ядро пересобрать вряд ли смогу, недостаточно знаний для этого, боязно грохнуть инет
>для всей конторы.
В помощь генератор правил iptables в онлайн - http://easyfwgen.morizot.net/gen/
>В помощь генератор правил iptables в онлайн - http://easyfwgen.morizot.net/gen/Еще раз спасибо. Прочитал доку по iptables частично, до конца не осилил, но результат уже есть. Пока еще не осознал, насколько я правильно все сделал, но в итоге все решилось одной строчкой:
iptables -t nat -A POSTROUNTING -j MASQUERADE -s 192.168.1.21 -o eth0
Порты телнетятся, пинги ходят :)
Еще насколько я понимаю, следует перенаправить весь инет-трафик на SQUID (у меня порт 8080) и окончательно настроить прозрачный прокси. Но и сейчас без перенаправления получается, что сквидовские правила все равно работают, режут мр3 и порно (на клиенте 192.168.1.21).
В идеале нужно добиться, чтобы для клиента нат работал только при обращении на нужные хосты и порты.В общем, поправьте плиз, если я не где-то прав.
о! кажется, сам себе и отвечаю:
добавил
-p tcp -m multiport --destination-ports 1239,1240,389 -d xxx.xx.xxx.xx
>о! кажется, сам себе и отвечаю:
>добавил
>-p tcp -m multiport --destination-ports 1239,1240,389 -d xxx.xx.xxx.xxмучаюсь такой же проблемой, подскажите, что и как сделать? :)
>о! кажется, сам себе и отвечаю:
>добавил
>-p tcp -m multiport --destination-ports 1239,1240,389 -d xxx.xx.xxx.xxвернее, у меня есть банковский клиент, который обращается по TCP порту 1750, вроде открыл порт iptables -A INPUT -p tcp --dport 1750 -j ACCEPT
открыл в сквиде порт
acl bank port 1750
acl bank src 192.103.103.34/255.255.255.255 #bank
http_access allow bank
acl CONNECT method CONNECTне помогает
>[оверквотинг удален]
>ACCEPT
>
>открыл в сквиде порт
>
>acl bank port 1750
>acl bank src 192.103.103.34/255.255.255.255 #bank
>http_access allow bank
>acl CONNECT method CONNECT
>
>не помогаетПонимаю, что пост старый, ответ автору уже скорее всего не нужне, но может кому другому пригодится =)
Не верно взята цепочка iptables, нужно было взять цепочку FORWARD, предварительно задействовав возможность натинга в iptables командой echo 1 > /proc/sys/net/ipv4/ip_forwarding(если не изменяет память) или же судя по выше приведенному примеру нужно настроить программу клиент на использование нашего прокси сервера, в этом случаем использование цепочки input было бы верным, по поводу настройки сквида сказать ничего не могу, сейчас нет возможности в ман заглянуть.