ssl http server za nat-om?
msk.conf
msk.conf na seznam.cz
Středa Březen 28 13:04:43 CEST 2007
DD.
Rozchodil som si virtualny stroj ( ip 2.2.2.2 ) na hostovi s verejnou ip (
1.1.1.1 ).
Na tom virtualnom stroji mi bezi tinyhttpd server na porte 8887 a serviruje mi
pokusny web. Ten som este obalil pomocou stunnel4 do ssl na port 8888.
stunnel4.conf:
...
[https]
accept = 8888
connect = 8887
...
Pomocou pravidiel firewallu ( pre jednoduchost pouzivam firehol, ale rozpisal
som parametre iptables, co vygeneruje ) som presmeroval prichadzajuci traffic
z internetu na 1.1.1.1, tcp port 8887 a 8888 na ten virtualny stroj (
2.2.2.2 ).
Firehol:
# Command : nat to-destination 2.2.2.2 proto tcp dport 8887 dst 1.1.1.1
/sbin/iptables -t nat -N nat.1
/sbin/iptables -t nat -A PREROUTING -p tcp -d 1.1.1.1 --dport 8887 -j nat.1
/sbin/iptables -t nat -A nat.1 -p tcp -j DNAT --to-destination 2.2.2.2
# Command : nat to-destination 2.2.2.2 proto tcp dport 8888 dst 1.1.1.1
/sbin/iptables -t nat -N nat.1
/sbin/iptables -t nat -A PREROUTING -p tcp -d 1.1.1.1 --dport 8888 -j nat.1
/sbin/iptables -t nat -A nat.1 -p tcp -j DNAT --to-destination 2.2.2.2
Z vonku sa na http://1.1.1.1:8887 dostanem, ale na https://1.1.1.1:8888
dostavam "Could not connect to host 1.1.1.1 (port 8888)". Pritom na tom porte
niekto evidentne nacuva, skusal som to telnetom ( po prvom odoslanom riadku
sa spojenie zavrie ( openssl mi asi nerozumie :o) ) ). V ramci toho
virtualneho stroja https://2.2.2.2:8888 chodi normalne.
Tusi niekto, cim by to mohlo byt? Ma ssl nejake specifika v NAT-ovanom
prostredi? Povodne som sa na to chcel pozriet wiresharkom, ale asi toho vela
nezistim, kedze sa jedna o sifrovane spojenie...
Dik za rady.
--
Dusan
Další informace o konferenci Linux