외부 연결에서 LAN(Ubuntu-iptables)의 컴퓨터로 포트 전달

외부 연결에서 LAN(Ubuntu-iptables)의 컴퓨터로 포트 전달

문제가 있습니다. LAN 외부에서 원격 데스크톱을 사용하여 Windows 컴퓨터에 연결할 수 없습니다.

저는 Ubuntu 14.04, iptables를 사용하고 있습니다.

External Inferface: eth1
LAN Intergace: eth2
Windows IP: 192.168.1.100
Serverlinux LAN IP: 192.168.1.2
Serverlinux External IP: 186.xxx.xxx.xxx

실제 iptables 구성:

iptables-restore <<-EOF
*nat
-A POSTROUTING -o "$EXTIF" -j MASQUERADE
COMMIT
*filter
:INPUT ACCEPT [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
-A FORWARD -i "$EXTIF" -o "$INTIF" -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
-A FORWARD -i "$INTIF" -o "$EXTIF" -j ACCEPT
-A FORWARD -j LOG
COMMIT
EOF

나는 많은 예를 시도했지만 운이 좋지 않았습니다.

예시 1:

iptables -t nat -A PREROUTING -p tcp -m tcp --dport 3389 -j DNAT --to-destination 192.168.1.100
iptables -t nat -A POSTROUTING -s 192.168.1.100 -p tcp --sport 3389 -j SNAT --to 192.168.1.2
iptables -A FORWARD -p tcp --dport 3389 -j ACCEPT
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE

예 2:

iptables -A INPUT -i eth1 -p tcp --destination-port 3389 -j ACCEPT
iptables -t nat -I PREROUTING -p tcp --dport 3389 -j DNAT 192.168.1.100:3389
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE

예시 3: 오류(iptables: 해당 이름과 일치하는 체인/대상이 없습니다.)

iptables -A PREROUTING -d 186.xxx.xxx.xxx -p tcp -m tcp --dport 3386 -j DNAT --to-destination 192.168.1.100:3399 
iptables -A FORWARD -i eth1 -o eth2 -d 192.168.1.100 -p tcp -m tcp --dport 3399 -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT

내가 무엇을 놓치고 있나요??

미리 감사드립니다.

답변1

다음은 외부 IP 주소의 포트 1337을 내부 IP 주소의 포트 3389로 전달합니다.

iptables -t nat -I PREROUTING -d 186.xxx.xxx.xxx -p tcp --dport 1337 -j DNAT --to-destination 192.168.1.100:3389
iptables -I FORWARD -o eth2 -d 192.168.1.100 -p tcp --dport 3389 -j ACCEPT

첫 번째 규칙(세 번째 예에서 놓친 nat 테이블)은 패킷이 들어올 때 대상 주소를 다시 작성합니다. 두 번째 규칙은 새로 다시 작성된 패킷이 전달되도록 허용합니다.

라우터 뒤에 있더라도 작동하기를 원한다고 가정하므로 들어오는 인터페이스에 대한 모든 참조를 제거했습니다(일관성을 위해).

답변2

iptables -t nat -A PREROUTING -p tcp -i eth0 --dport 1337 -j DNAT --to-destination 192.168.1.100:3389

iptables -A FORWARD -p tcp -d 192.168.1.100 --dport 3389 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

관련 정보