PDA

View Full Version : gateway + firewall +realvnc = AIUTO!


X3noN
18-05-2004, 12:35
Ciao a tutti, ho bisogno di una consulenza:

ho una piccola rete con un server linux che funge da gateway/firewall/dhcp server per i client della rete (windows).

Il server ha 2 sk di rete una a cui c'è attaccato un router adsl con ip fisso/pubblico e l'altra per la rete interna che si collega allo switch e quindi a tutti i client winzozz.

Ora io avrei la necessità di collegarmi via VNC ad uno di questi pc windows dall'esterno.

ho impostato il port forward sul router (start ed end port 5900) e su shorewall sul server ho creato una regola di redirect della porta 5900 all'ip del pc a cui vorrei collegarmi.

Ovviamente non funziona :sofico: ...


any ideas? thanx

HexDEF6
18-05-2004, 13:28
inizia a postare il tuo script per tirare su il firewall!

E per prima cosa (se non l'hai gia fatto) fai partire un vnc sul tuo server (tipo sulla porta 5903) e configurara il router in modo tale che rediriga la porta 5903 sul server (cosi' vediamo se l'intoppo e' il router o il tuo serverino!)

Ciao!

X3noN
18-05-2004, 13:39
Originariamente inviato da HexDEF6
inizia a postare il tuo script per tirare su il firewall!

E per prima cosa (se non l'hai gia fatto) fai partire un vnc sul tuo server (tipo sulla porta 5903) e configurara il router in modo tale che rediriga la porta 5903 sul server (cosi' vediamo se l'intoppo e' il router o il tuo serverino!)

Ciao!


credo sia il firewall perchè lanciando vncserser dal server stesso riesco a connettermi regolarmente quindi escluderei il router...


Windows lancia vnc sulla 5900 giusto?

HexDEF6
18-05-2004, 13:40
Originariamente inviato da X3noN
credo sia il firewall perchè lanciando vncserser dal server stesso riesco a connettermi regolarmente quindi escluderei il router...


Windows lancia vnc sulla 5900 giusto?

mi sembra proprio di si!

prova a lanciare il vncserver su win e prova a conneterti dal tuo server linux.

Ciao!

X3noN
18-05-2004, 13:52
Originariamente inviato da HexDEF6
mi sembra proprio di si!

prova a lanciare il vncserver su win e prova a conneterti dal tuo server linux.

Ciao!


già provato....non funza!

ecco le regole dello shorewall:


ACCEPT all all tcp 22 -
REDIRECT loc 3128 tcp www -
ACCEPT fw net tcp www
REDIRECT all all tcp 5900 - 192.168.1.252


192.168.1.252 è l'ip del pc winzozz che ha il server vnc.

:confused: :mc:

gurutech
18-05-2004, 16:23
Originariamente inviato da X3noN
già provato....non funza!

ecco le regole dello shorewall:


ACCEPT all all tcp 22 -
REDIRECT loc 3128 tcp www -
ACCEPT fw net tcp www
REDIRECT all all tcp 5900 - 192.168.1.252


192.168.1.252 è l'ip del pc winzozz che ha il server vnc.

:confused: :mc:

non conosco shorewall, ma se non erro è basato comunque su iptables.

parlando di iptables
se quel redirect che vedo è direttamente collegato al REDIRECT di iptables, allora il target è sbagliato. quello giusto è DNAT

iptables -t nat -p tcp --dport 5900 --dst my.publ.ip.addr -j DNAT --to-destination a.private.ip.addr

X3noN
18-05-2004, 18:44
Originariamente inviato da gurutech
non conosco shorewall, ma se non erro è basato comunque su iptables.

parlando di iptables
se quel redirect che vedo è direttamente collegato al REDIRECT di iptables, allora il target è sbagliato. quello giusto è DNAT

iptables -t nat -p tcp --dport 5900 --dst my.publ.ip.addr -j DNAT --to-destination a.private.ip.addr



FATTO!

avevi ragione tu gurutech! solo che shorewall (che pure usa iptables) ha una sintassi molto diversa...aggiustando qua e là con la tua cfg sono riuscito a far andare tutto! grazie!

ora sarebbe interessante riuscire a "moltiplicare" la soluzione: vorrei mettere vncserver anche su altri pc windows....solo che non credo che vnc per windows permetta di decidere su che porta far ascoltare il server... se avete idee...grazie!!!


:p :sofico:

HexDEF6
18-05-2004, 18:56
$IPT -t nat -A PREROUTING -p tcp --dport 5900 -i eth00 -j DNAT --to ip_pc_win1:5900
$IPT -t nat -A PREROUTING -p tcp --dport 5901 -i eth0 -j DNAT --to ip_pc_win2:5900
$IPT -t nat -A PREROUTING -p tcp --dport 5902 -i eth0 -j DNAT --to ip_pc_win3:5900
e via dicendo!

gurutech
18-05-2004, 19:46
Originariamente inviato da gurutech

iptables -t nat -p tcp --dport 5900 --dst my.publ.ip.addr -j DNAT --to-destination a.private.ip.addr


miiii mi ero dimenticato la chain.
come giustamente hanno già detto:

iptables -t nat -A PREROUTING -p tcp --dport 5900 --dst my.publ.ip.addr -j DNAT --to-destination a.private.ip.addr


ma non hai pensato a soluzioni più flessibili come il tunneling ssh ? si configura tutto lato client e secondo me è molto più comodo!
metti che domani hai in rete una macchina con terminal server o pc anywhere, che fai ti metti a reimplementare le regole per la porta 3389 o
$NON_MI_RICORDO_LA_PORTA_PCANYWHERE ?
con openssh sul firewall e il client ssh (per windows: putty è comodissimo) con pochi click riconfiguri tutto

X3noN
18-05-2004, 19:49
grazie!


domani provo...speriamo vadI :D

tnx
Ciao!

X3noN
18-05-2004, 19:57
Originariamente inviato da gurutech
miiii mi ero dimenticato la chain.
come giustamente hanno già detto:

iptables -t nat -A PREROUTING -p tcp --dport 5900 --dst my.publ.ip.addr -j DNAT --to-destination a.private.ip.addr


ma non hai pensato a soluzioni più flessibili come il tunneling ssh ? si configura tutto lato client e secondo me è molto più comodo!
metti che domani hai in rete una macchina con terminal server o pc anywhere, che fai ti metti a reimplementare le regole per la porta 3389 o
$NON_MI_RICORDO_LA_PORTA_PCANYWHERE ?
con openssh sul firewall e il client ssh (per windows: putty è comodissimo) con pochi click riconfiguri tutto



mm interessante...sul firewall c'è già openssh up and running sulla 22 che mi permette di salire sul firewall grazie al figlio di putty per l'appunto :D...avevo sentito che si poteva encapsulare VNC tramite ssh...ho guardato sull'homepage di RealVNC ma non mi è molto limpido...

potresti essere più chiaro se hai un secondo di tempo? Grazie!

gurutech
18-05-2004, 20:13
con il client ssh su linux

ssh -C -L 5900:ip.of.pc.win:5900 normaluser@the.pub.ip.addr

ho messo normaluser perchè non essendo necessario root è meglio non utilizzarlo proprio, anzi magari fai un utente apposta solo per questo
e per aprire la sessione

vncviewer localhost


con windows e putty:
non mi ricordo a memoria, ma è qualcosa tipo
sotto SSH -> Tunnels ti forward come LOCAL la porta 5900 su ip.of.pc.win:5900

e poi ti colleghi con vnc su 127.0.0.1

dai un occhio pure qui che magari ti interessa
http://www.gurutech.it/index.php?sel=putty

HexDEF6
18-05-2004, 23:00
anch'io uso i tunnel ssh, che oltre a tenerti il solito firewall con piu' porte chiuse possibile, hai il vantaggio che 1) la sessione e' criptata 2) usi pure la compressione!

Ciao!