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

Исходное сообщение
"Не могу разобраться с IPTABLES"

Отправлено Hamster , 24-Июл-06 14:54 
Есть такая задача: нужно чтобы клиенты могли из инета подключаться к серверу на порт 3389 находящемся внутри сети, через iptables, тоесть надо настроить NAT трансляцию, не могу понять почему не работает... вроде делаю все по манам а не фурыкает...

не работает даже так...

#!/bin/bash

IPT=/usr/sbin/iptables

    $IPT -F
    $IPT -t nat -F
    $IPT -t mangle -F
    $IPT -P INPUT ACCEPT
    $IPT -P FORWARD ACCEPT

    $IPT -A FORWARD -p tcp -s 192.168.68.4 --sport 3389 -j ACCEPT
    $IPT -A FORWARD -p tcp -d 192.168.68.4 --dport 3389 -j ACCEPT

    $IPT -t nat -A PREROUTING -p tcp --dport 3389  -j DNAT --to-destination 192.168.68.4
    $IPT -t nat -A POSTROUTING -p tcp -s 192.168.68.4  -j SNAT --to-source 12.13.23.123

где 192.168.68.4 ip адрес на который надо сделать мапинг, а 12.13.23.123 внешний ip сервера.
Пробовал по разному все равно не подключантся...
tcpdump показывает

# tcpdump -i eth0 port 3389
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes
14:48:50.621357 IP 12.13.23.122.42162 > 192.168.68.4.3389: S 3424266632:3424266632(0) win 65535 <mss 1460,nop,nop,sackOK>
14:48:53.475390 IP 12.13.23.122.42162 > 192.168.68.4.3389: S 3424266632:3424266632(0) win 65535 <mss 1460,nop,nop,sackOK>
14:48:59.510561 IP 12.13.23.122.42162 > 192.168.68.4.3389: S 3424266632:3424266632(0) win 65535 <mss 1460,nop,nop,sackOK>

3 packets captured
6 packets received by filter
0 packets dropped by kernel

# tcpdump -i eth1 port 3389
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth1, link-type EN10MB (Ethernet), capture size 96 bytes
14:49:23.465000 IP 12.13.23.122.39856 > 12.13.23.123.3389: S 757382851:757382851(0) win 65535 <mss 1460,nop,nop,sackOK>
14:49:26.467610 IP 12.13.23.122.39856 > 12.13.23.123.3389: S 757382851:757382851(0) win 65535 <mss 1460,nop,nop,sackOK>
14:49:32.402208 IP 12.13.23.122.39856 > 12.13.23.123.3389: S 757382851:757382851(0) win 65535 <mss 1460,nop,nop,sackOK>

3 packets captured
6 packets received by filter
0 packets dropped by kernel

eth0 - внутренний
eth1 - внешний

Подскажите, где сабака порылась...


Содержание

Сообщения в этом обсуждении
"Не могу разобраться с IPTABLES"
Отправлено Hamster , 25-Июл-06 14:02 
Разобрался... помогла мана https://www.opennet.ru/docs/RUS/iptables/
ответ был прост

#!/bin/bash

IPT=/usr/sbin/iptables

IP_DST=10.10.10.4 #IP сервера который надо опубликовать
IP_LAN=10.10.10.1 #Внутренний IP Firewall'a
IP_INET=123.123.123.123 #Внешний IP Firewall'a
TERMINAL_PORT=3389 #Порт сервиса который надо опубликовать

    $IPT -F
    $IPT -t nat -F
    $IPT -t mangle -F
    $IPT -P INPUT DROP
    $IPT -P FORWARD DROP

    $IPT -t nat -A PREROUTING -d $IP_INET -p tcp --dport $TERMINAL_PORT -j DNAT --to-destination $IP_DST
    $IPT -A FORWARD -p tcp  --sport $TERMINAL_PORT -j ACCEPT
    $IPT -A FORWARD -p tcp  --dport $TERMINAL_PORT -j ACCEPT
    $IPT -t nat -A POSTROUTING -p tcp -d $IP_DST --dport $TERMINAL_PORT -j SNAT --to-source $IP_LAN