Re: aiutino iptables+vnc+tunnel ssh

2008-07-18 Per discussione Dario Pilori
On Fri, Jul 18, 2008 at 11:14, Lucio Crusca [EMAIL PROTECTED] wrote:
 Ciao *,

 vi spiego cosa voglio fare, poi spero in voi perché io non ci sono
 riuscito...

 ho un server vnc che ascolta sulla porta 5910 di una Debian Lenny. Questa
 lenny la posso raggiungere solo tramite vari tunnel ssh. Riesco a
 collegarmi da remoto al server VNC con:

 $ ssh -L 5910:127.0.0.1:5910 -p [porta del tunnel ssh esistente] ...
 $ vncviewer localhost::5910

 Quello che vorrei fare però è permettere ad altri di collegarsi al server
 VNC, senza dar loro accesso ssh ai vari server intermedi che stabiliscono
 il tunnel. Il problema è che con

 ssh -L 5910:127.0.0.1:5910 ...

 la porta 5910 viene aperta solo su localhost (interfaccia lo) e non su eth0.
Per ottenere quello che vuoi, devi creare un tunnel SSH vero e
proprio, creando interfacce di rete virtuali Point-To-Point tun0 e
tun1 nei vari PC. Praticamente vai a creare una VPN tra i due PC. Una
volta creata questa VPN, aggiungi con iptables le regole di routing
che desideri.
Per fare questo nel file /etc/ssh/sshd_config del server SSH aggiungi la riga:
PermitTunnel point-to-point
Poi accedi con OpenSSH:
ssh -C -o ServerAliveInterval 1 -w 0:1 indirizzo del server

Se tutto va bene, nel client appare l'interfaccia tun0 e nel server
l'interfaccia tun1. Poi configuri un indirizzo IP, e metti il routing.
Comunque questa non è una soluzione bella. Se vuoi fare qualcosa di
più stabile di un tunnel SSH ti consiglio di tirare su una VPN usando
OpenVPN.

 Allora ho provato (senza successo):

 # iptables -t nat -A PREROUTING -p tcp --dport 5910 -i eth0 -j
 DNAT --to-destination 127.0.0.1:5910
 # echo 1  /proc/sys/net/ipv4/ip_forward

 ma a fronte di verifica nmap, la 5910 risulta sempre filtered all'esterno.
 Come devo fare?
Ovviamente la porta 5910 è aperta solo su localhost, nell'interfaccia
di rete lo. Quindi devi per forza fare un tunnel SSH o una VPN, come
detto sopra.

-- 
Dario Pilori
Linux registered user #406515

La birra è la prova che Dio ci ama e vuole che siamo felici
Benjamin Franklin


Re: aiutino iptables+vnc+tunnel ssh

2008-07-18 Per discussione Lucio Crusca
Dario Pilori wrote:

 ssh -C -o ServerAliveInterval 1 -w 0:1 indirizzo del server
 
 Se tutto va bene, nel client appare l'interfaccia tun0 e nel server
 l'interfaccia tun1. 
E se non appare? (non è apparsa...)

 Comunque questa non è una soluzione bella. 
Oggi non ho tempo di imapare openvpn, ma prometto che appena posso lo
imparo!

Lucio.



-- 
Per REVOCARE l'iscrizione alla lista, inviare un email a 
[EMAIL PROTECTED] con oggetto unsubscribe. Per
problemi inviare un email in INGLESE a [EMAIL PROTECTED]

To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: aiutino iptables+vnc+tunnel ssh

2008-07-18 Per discussione Lucio Crusca
Lucio Crusca wrote:

 Se tutto va bene, nel client appare l'interfaccia tun0 e nel server
 l'interfaccia tun1.
 E se non appare? (non è apparsa...)
Ok, apparsa (bastava fare ifconfig -a).

ora, quale sarebbe il posto (= lo script) giusto per configurare tun0/tun1?



-- 
Per REVOCARE l'iscrizione alla lista, inviare un email a 
[EMAIL PROTECTED] con oggetto unsubscribe. Per
problemi inviare un email in INGLESE a [EMAIL PROTECTED]

To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: aiutino iptables+vnc+tunnel ssh

2008-07-18 Per discussione Dario Pilori
On Fri, Jul 18, 2008 at 16:43, Lucio Crusca [EMAIL PROTECTED] wrote:
 E se non appare? (non è apparsa...)
Allora, controlla che in entrambi i sistemi il modulo del kernel tun
sia caricato, che nel file di configurazione del server sia attivata
l'opzione che ti ho detto e che abbia ricaricato il server SSH, e
prova a cambiare l'opzione -w 0:1 in -w 1:0

 Oggi non ho tempo di imapare openvpn, ma prometto che appena posso lo
 imparo!
In realtà è estremamente semplice da imparare :-) Bisogna solo
conoscere delle basi di crittografia e PKI.

-- 
Dario Pilori
Linux registered user #406515

La birra è la prova che Dio ci ama e vuole che siamo felici
Benjamin Franklin


Re: aiutino iptables+vnc+tunnel ssh

2008-07-18 Per discussione Dario Pilori
On Fri, Jul 18, 2008 at 16:46, Lucio Crusca [EMAIL PROTECTED] wrote:
 ora, quale sarebbe il posto (= lo script) giusto per configurare tun0/tun1?
Bé, basta usare ifconfig, iptables e route. Ti faccio un esempio di
comandi shell per configurarla, usando indirizzi a caso:
#!/bin/bash
## CONFIGURAZIONE SERVER ##

# Questi sono gli indirizzi della LAN del client, dalla quale vuoi
accedere a VNC
LANCLIENT=192.168.0.0/24

# Uso indirizzi privati di classe A, che non devono essere usati in
nessuna delle tue reti private.
# Altrimenti mettine due a caso
ifconfig tun1 10.0.0.1 pointopoint 10.0.0.2

route add -net $LANCLIENT gw 10.0.0.2

-

#!/bin/bash
## CONFIGURAZIONE CLIENT ##

# Questi sono gli indirizzi della LAN del client, dalla quale vuoi
accedere a VNC
LANCLIENT=192.168.0.0/24

# Interfaccia collegata alla LAN
INT=eth0

ifconfig tun0 10.0.0.2 pointopoint 10.0.0.1

echo 1  /proc/sys/net/ipv4/ip_forward

# Evitiamo di inserire un route statico a tutti i client
iptables -t nat -A POSTROUTING -s 10.0.0.1 -o $INT -j MASQUERADE

La soluzione è molto fatiscente, visto che per eseguire gli script
dovresti fare una cosa tipo, per eseguirlo sul server:

ssh -C -o ServerAliveInterval 1 -f -w 0:1 indirizzo del server
percorso dello script

E poi eseguirlo sul client.

Comunque per avere una soluzione più veloce, stabile e definitiva,
OpenVPN (o quant'altro) è d'obbligo :-)
-- 
Dario Pilori
Linux registered user #406515

La birra è la prova che Dio ci ama e vuole che siamo felici
Benjamin Franklin


Re: aiutino iptables+vnc+tunnel ssh

2008-07-18 Per discussione Lucio Crusca
Ora che ho tun0 sul client (172.16.1.49) e tun1 sul server (172.16.1.50)
devo aggiungere un qualcosa che mi metta in ascolto la porta 5910
dell'interfaccia eth0 del client e inoltri il tutto a tun0, giusto? Ma
anche se fosse giusto, come si fa?



-- 
Per REVOCARE l'iscrizione alla lista, inviare un email a 
[EMAIL PROTECTED] con oggetto unsubscribe. Per
problemi inviare un email in INGLESE a [EMAIL PROTECTED]

To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: aiutino iptables+vnc+tunnel ssh

2008-07-18 Per discussione Lucio Crusca
Dario Pilori wrote:
 Comunque per avere una soluzione più veloce, stabile e definitiva,
 OpenVPN (o quant'altro) è d'obbligo :-)

Hai un link ad un semplice howto su OpenVPN o quant'altro che mi permetta di
imparare il minimo indispensabile in un'ora per mettere su l'accesso VNC
che mi serve? Dispongo di una lenny su ip statico se serve.


-- 
Per REVOCARE l'iscrizione alla lista, inviare un email a 
[EMAIL PROTECTED] con oggetto unsubscribe. Per
problemi inviare un email in INGLESE a [EMAIL PROTECTED]

To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: aiutino iptables+vnc+tunnel ssh

2008-07-18 Per discussione Lucio Crusca
Lucio Crusca wrote:

 Hai un link ad un semplice howto su OpenVPN
Ho trovato questo:

http://openvpn.net/index.php/documentation/miscellaneous/static-key-mini-howto.html

Sarebbe sufficiente nel mio caso, dato che voglio solo aprire la porta 5910
su un computer con ip statico ed inoltrare tutto quello che arriva su
quella porta alla 5910 dell'altro computer? Riesco a farlo con solo un
client openvpn ed un server openvpn?




-- 
Per REVOCARE l'iscrizione alla lista, inviare un email a 
[EMAIL PROTECTED] con oggetto unsubscribe. Per
problemi inviare un email in INGLESE a [EMAIL PROTECTED]

To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]



Re: aiutino iptables+vnc+tunnel ssh

2008-07-18 Per discussione Dario Pilori
2008/7/18 Lucio Crusca [EMAIL PROTECTED]:
 Ora che ho tun0 sul client (172.16.1.49) e tun1 sul server (172.16.1.50)
 devo aggiungere un qualcosa che mi metta in ascolto la porta 5910
 dell'interfaccia eth0 del client e inoltri il tutto a tun0, giusto? Ma
 anche se fosse giusto, come si fa?

No assolutamente. Se non hai attivi firewall, basta che da qualunque
PC della rete scrivi l'indirizzo IP del server, e ti colleghi via VNC
senza problemi!
Immagina il tunnel SSH come un lungo cavo di rete incrociato che
collega due interfacce di rete del client e del server. Alla fine è
così che lo vedi, quindi

-- 
Dario Pilori
Linux registered user #406515

La birra è la prova che Dio ci ama e vuole che siamo felici
Benjamin Franklin


Re: aiutino iptables+vnc+tunnel ssh

2008-07-18 Per discussione Dario Pilori
2008/7/18 Lucio Crusca [EMAIL PROTECTED]:
 Ho trovato questo:

 http://openvpn.net/index.php/documentation/miscellaneous/static-key-mini-howto.html

 Sarebbe sufficiente nel mio caso, dato che voglio solo aprire la porta 5910
 su un computer con ip statico ed inoltrare tutto quello che arriva su
 quella porta alla 5910 dell'altro computer? Riesco a farlo con solo un
 client openvpn ed un server openvpn?
Sì, in effetti una configurazione point-to-point è quella che fa per
te. Io personalmente con OpenVPN ho fatto solo configurazioni con un
server e molti client (quindi creando una PKI).
In questo caso ottieni la stessa cosa che ottieni facendo un tunnel
SSH, ma i dispositivi tun vengono creati all'avvio, senza script e
roba varia, e in più usi un programma che è fatto apposta per
collegamenti di questo tipo.
Per la mia esperienza personale ti consiglio di usare le opzioni:
CLIENT:
remote IP del server
dev tun
ifconfig 10.8.0.2 10.8.0.1
secret static.key
comp-lzo
keepalive 10 60
ping-timer-rem
persist-tun
persist-key
user nobody
group nobody
route indirizzo IP della LAN subnet mask

SERVER:
dev tun
ifconfig 10.8.0.2 10.8.0.1
secret static.key
comp-lzo
keepalive 10 60
ping-timer-rem
persist-tun
persist-key
user nobody
group nobody
daemon

Praticamente ti scrivi queste cose in un file .conf (basta qualunque
nome), e lo metti, assieme alla chiave, nella cartella /etc/openvpn
Poi dai un /etc/init.d/openvpn restart e i dispositivi tun
compariranno, già con gli indirizzi e tutto quanto.
Ricorda solo di mettere sul server l'IP forwarding e l'IP
Masquerading, con i comandi che ti ho scritto.
-- 
Dario Pilori
Linux registered user #406515

La birra è la prova che Dio ci ama e vuole che siamo felici
Benjamin Franklin