проброс портов iptables
имею сервер с несколькими интерфейсами, который пускает в сеть через нат т.е. в файле /etc/iptables.rules написано *filter -F -X -P INPUT DROP -P FORWARD DROP -P OUTPUT ACCEPT -A INPUT -i lo -j ACCEPT -A INPUT -s 127.0.0.1/255.0.0.0 ! -i lo -j DROP -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT -A INPUT -i eth0 -p tcp -j ACCEPT -A INPUT -i eth0 -p udp -j ACCEPT -A INPUT -i eth1 -p tcp --dport 4089 -j ACCEPT -A INPUT -i eth1 -p udp --dport 1300 -j ACCEPT -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT -A FORWARD -m state --state NEW -i eth0 -s 10.192.22.0/27 -j ACCEPT COMMIT *nat -A POSTROUTING -o eth1 -j MASQUERADE COMMIT все отлично работает, моя сеть 10.192.22.0/27 имеет доступ, но нужно сделать проброс портов для ДЦ(tcp:4089, udp:1300) подскажите как это правильно сделать, пробывал -A PREROUTING -p tcp -m tcp -i eth1 --dport 4089 -j DNAT --to-destination 10.192.22.1:4089 -A PREROUTING -p udp -m udp -i eth1 --dport 1300 -j DNAT --to-destination 10.192.22.1:1300 не вижу нужного результата -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Re: проброс портов iptables
fixec пишет: > -Original Message- > From: Andrey Tataranovich > To: debian-russian@lists.debian.org > Date: Fri, 21 Aug 2009 13:18:31 +0300 > Subject: Re: проброс портов iptables > > >> 12:15 Fri 21 Aug, fixec wrote: >> >>> имею сервер с несколькими интерфейсами, который пускает в сеть через нат >>> т.е. в файле /etc/iptables.rules написано >>> >> [skipped] >> >>> *nat >>> -A POSTROUTING -o eth1 -j MASQUERADE >>> COMMIT >>> >>> все отлично работает, моя сеть 10.192.22.0/27 имеет доступ, но нужно >>> сделать проброс портов для ДЦ(tcp:4089, udp:1300) >>> подскажите как это правильно сделать, пробывал >>> >>> -A PREROUTING -p tcp -m tcp -i eth1 --dport 4089 -j DNAT --to-destination >>> 10.192.22.1:4089 >>> -A PREROUTING -p udp -m udp -i eth1 --dport 1300 -j DNAT --to-destination >>> 10.192.22.1:1300 >>> >>> не вижу нужного результата >>> >> Не видно куда ты это писал... надеюсь после *nat. И в чем выражается твое >> "не вижу"? >> tcpdump на машинке 10.192.22.1 молчит? >> > > да, конечно как вы выразились написал после *nat > 10.192.22.1 это машина на винде > "не вижу" это значит никто не может с меня качать в ДЦ, так же и я не могу > качать((( > > > >> -- >> To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org >> with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org >> >> > > > а что говорит tcpdump на сервере, на интерфейсе, куда внутренняя сеть подключена? видно пакеты к 10.192.22.1? -- Yuriy Shulika -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Re: проброс портов iptables
> > -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT > -A FORWARD -m state --state NEW -i eth0 -s 10.192.22.0/27 -j ACCEPT > COMMIT Может добавить -A FORWARD -p tcp -m state --state NEW -i eth1 -m tcp --dport 4089 -j ACCEPT -A FORWARD -p udp -m state --state NEW -i eth1 -m udp --dport 1300 -j ACCEPT > > *nat > -A POSTROUTING -o eth1 -j MASQUERADE > COMMIT > > все отлично работает, моя сеть 10.192.22.0/27 имеет доступ, но нужно сделать > проброс портов для ДЦ(tcp:4089, udp:1300) > подскажите как это правильно сделать, пробывал > > -A PREROUTING -p tcp -m tcp -i eth1 --dport 4089 -j DNAT --to-destination > 10.192.22.1:4089 > -A PREROUTING -p udp -m udp -i eth1 --dport 1300 -j DNAT --to-destination > 10.192.22.1:1300 > > не вижу нужного результата
Re: проброс портов iptables
Nick пишет: -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT -A FORWARD -m state --state NEW -i eth0 -s 10.192.22.0/27 -j ACCEPT COMMIT Может добавить -A FORWARD -p tcp -m state --state NEW -i eth1 -m tcp --dport 4089 -j ACCEPT -A FORWARD -p udp -m state --state NEW -i eth1 -m udp --dport 1300 -j ACCEPT *nat -A POSTROUTING -o eth1 -j MASQUERADE COMMIT все отлично работает, моя сеть 10.192.22.0/27 имеет доступ, но нужно сделать проброс портов для ДЦ(tcp:4089, udp:1300) подскажите как это правильно сделать, пробывал -A PREROUTING -p tcp -m tcp -i eth1 --dport 4089 -j DNAT --to-destination 10.192.22.1:4089 -A PREROUTING -p udp -m udp -i eth1 --dport 1300 -j DNAT --to-destination 10.192.22.1:1300 не вижу нужного результата У меня всё работает. INET_IFACE, в Вашем случае, eth1. Сделано так: echo "Пробрасываем порты p2p на srv" bittorrent="-p tcp --dport 6882" eDonkey_tcp="-p tcp --dport 12827" eDonkey_udp="-p udp --dport 12831" kdemlia_tcp="-p tcp --dport 20914" kdemlia_udp="-p udp --dport 20914" Overnet_tcp="-p tcp --dport 12593" Overnet_udp="-p udp --dport 12593" gnutella_tcp="-p tcp --dport 6346:6347" gnutella_udp="-p udp --dport 6346:6347" for p in "$bittorrent" "$eDonkey_tcp" "$eDonkey_udp" "$kdemlia_tcp" \ "$kdemlia_udp" "$Overnet_tcp" "$Overnet_udp" "$gnutella_tcp" \ "$gnutella_udp" do $IPTABLES -I FORWARD -i $INET_IFACE $p -j ACCEPT $IPTABLES -t nat -A PREROUTING -i $INET_IFACE $p \ -j DNAT --to-destination 192.168.1.248 done echo "Пробрасываем порты на dmz" www_tcp="-p tcp --dport 80" smtp_tcp="-p tcp --dport 25" for p in "$smtp_tcp" "$www_tcp". do $IPTABLES -I FORWARD -i $INET_IFACE $p -j ACCEPT $IPTABLES -t nat -A PREROUTING -i $INET_IFACE $p \ -j DNAT --to-destination 192.168.1.100 done -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Re: проброс портов iptables
Stanislav Maslovski пишет: On Fri, Aug 21, 2009 at 06:57:07PM +0400, Alexandr Sagadeev wrote: Ух какая забавная зубодробилка. C iptables-save и iptables-restore выйдет гораздо проще и удобнее в том плане, что изменения можно вносить на лету и по готовности из сохранять. Но твой вариант самодокументируемый, это его единственный плюс. Статическая часть (eth0) реализована с iptables-save и iptables-restore. Тут кусок скрипта inet.net.rule, запускаемого при поднятии ppp. Там есть ещё inet.ip.route inet.tc.rule, плюс ещё три inet.[net|ip].[rule|route].del, запускаемых при опускании интерфейса. Всё это помогает держать всё хозяйство в актуальном состоянии. При этом динамически поднимается eth1 по dhcp со своим роутингом и iptables, через который и поднимается ppp. Да, ещё в этих скриптах и load-balancing на два провайдера, а также dmz через dynamic ip. -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Re[2]: проброс портов iptables
-Original Message- From: Andrey Tataranovich To: debian-russian@lists.debian.org Date: Fri, 21 Aug 2009 13:18:31 +0300 Subject: Re: проброс портов iptables > 12:15 Fri 21 Aug, fixec wrote: > > имею сервер с несколькими интерфейсами, который пускает в сеть через нат > > т.е. в файле /etc/iptables.rules написано > [skipped] > > *nat > > -A POSTROUTING -o eth1 -j MASQUERADE > > COMMIT > > > > все отлично работает, моя сеть 10.192.22.0/27 имеет доступ, но нужно > > сделать проброс портов для ДЦ(tcp:4089, udp:1300) > > подскажите как это правильно сделать, пробывал > > > > -A PREROUTING -p tcp -m tcp -i eth1 --dport 4089 -j DNAT --to-destination > > 10.192.22.1:4089 > > -A PREROUTING -p udp -m udp -i eth1 --dport 1300 -j DNAT --to-destination > > 10.192.22.1:1300 > > > > не вижу нужного результата > > Не видно куда ты это писал... надеюсь после *nat. И в чем выражается твое "не > вижу"? > tcpdump на машинке 10.192.22.1 молчит? да, конечно как вы выразились написал после *nat 10.192.22.1 это машина на винде "не вижу" это значит никто не может с меня качать в ДЦ, так же и я не могу качать((( > > > -- > To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org > with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org > -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Re[2]: проброс портов iptables
помогло написание в цепочках *filter -A FORWARD -p tcp -m state --state NEW -d 10.192.22.1 --dport 4089 -j ACCEPT -A FORWARD -p udp -m state --state NEW -d 10.192.22.1 --dport 1300 -j ACCEPT *nat -A PREROUTING -p tcp --dport 4089 -d 10.3.6.246 -j DNAT --to-destination 10.192.22.1 -A PREROUTING -p udp --dport 1300 -d 10.3.6.246 -j DNAT --to-destination 10.192.22.1 и все заработало всем спасибо за помощь! -Original Message- From: Nick To: Debian Russian Mailing List Date: Fri, 21 Aug 2009 15:55:12 +0300 Subject: Re: проброс портов iptables > > > > -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT > > -A FORWARD -m state --state NEW -i eth0 -s 10.192.22.0/27 -j ACCEPT > > COMMIT > > Может добавить > -A FORWARD -p tcp -m state --state NEW -i eth1 -m tcp --dport 4089 -j ACCEPT > -A FORWARD -p udp -m state --state NEW -i eth1 -m udp --dport 1300 -j > ACCEPT > > > > > *nat > > -A POSTROUTING -o eth1 -j MASQUERADE > > COMMIT > > > > все отлично работает, моя сеть 10.192.22.0/27 имеет доступ, но нужно > > сделать проброс портов для ДЦ(tcp:4089, udp:1300) > > подскажите как это правильно сделать, пробывал > > > > -A PREROUTING -p tcp -m tcp -i eth1 --dport 4089 -j DNAT --to-destination > > 10.192.22.1:4089 > > -A PREROUTING -p udp -m udp -i eth1 --dport 1300 -j DNAT --to-destination > > 10.192.22.1:1300 > > > > не вижу нужного результата > -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org