OpenVPN e WOL: accendere un PC da remoto attraverso un tunnel VPN

Recentemente mi è stato chiesto se fosse possibile inoltrare un magic packet mediante un tunnel VPN, in modo da accendere un PC da remoto senza forwardare porte aggiuntive sul router di destinazione. Ho quindi scaricato questo programma (free) ed ho subito iniziato i test.

La configurazione del suddetto programma è la seguente:

wol

In particolare, l’IP della workstation che voglio avviare da remoto è 192.168.1.5 e la subnet mask scelta è 255.255.255.255 (questo perchè la subnet della workstation è differente da quella del mio PC, quindi il traffico broadcast di livello 3 viene banalmente droppato dal mio router).

Tirando su uno sniffer sul VPN concentrator remoto:

user@vpn-concentrator:~$ sudo tcpdump -nn -i tun0

ho ottenuto il seguente output (dopo l’invio del magic packet):

17:17:52.386074 IP 192.168.114.2.61234 > 192.168.1.5.9: UDP, length 102
17:17:55.383997 IP 192.168.114.1 > 192.168.114.2: ICMP host 192.168.1.5 unreachable, length 138

ovvero l’interfaccia locale del suddetto VPN concentrator mi ha risposto con un pacchetto ICMP host unreachable.

Dando un’occhiata alla tabella ARP del server in questione ho notato che, essendo la workstation spenta ormai da tempo, non era presente nessuna entry ad essa correlata:

user@vpn-concentrator:~$ arp -a
? (192.168.1.7) associato a <incompleto> su eth0
? (192.168.1.14) associato a <incompleto> su eth0
? (192.168.1.5) associato a <incompleto> su eth0

Ho quindi creato una entry statica mediante il comando:

user@vpn-concentrator:~$ sudo arp -s 192.168.1.5 50:46:5d:54:07:76

ed il successivo invio di un magic packet ha finalmente avuto esito positivo (la macchina si è avviata ed ha iniziato a rispondere ai ping, come si evince dal tracciato tcpdump sottostante):

17:20:23.253400 IP 192.168.114.2.60731 > 192.168.1.5.9: UDP, length 102
17:20:39.211323 IP 192.168.114.2 > 192.168.1.5: ICMP echo request, id 1, seq 34, length 40
17:20:43.815485 IP 192.168.114.2 > 192.168.1.5: ICMP echo request, id 1, seq 35, length 40
17:20:43.815819 IP 192.168.1.5 > 192.168.114.2: ICMP echo reply, id 1, seq 35, length 40

Naturalmente tale settaggio non è più attivo dopo un eventuale riavvio del server. Per renderlo quindi “permanente” occorre modificare il file /etc/rc.local aggiungendo la seguente direttiva:

arp -s 192.168.1.5 50:46:5d:54:07:76

Alla prossima.

OpenVPN e WOL: accendere un PC da remoto attraverso un tunnel VPNultima modifica: 2014-09-20T18:02:21+02:00da nazarenolatella
Reposta per primo quest’articolo

Un pensiero su “OpenVPN e WOL: accendere un PC da remoto attraverso un tunnel VPN

  1. ciao
    sapresti dirmi se c’è un modo più semplice per farlo? ossia senza righe di codice o altro?

    io nel mio caso vorrei attivare una servizio di vpn con PUREVPN (da attivare sul router di casa) e accendere uno dei computer in quella rete da cellulare.
    la domanda che mi pongo è la seguente: ma con una VPN non è come essere connessi sulla stessa LAN? quindi, se sul mio smartphone mi loggo con stessi user e psw del router, non non dovrei essere in grado di farlo?
    mille grazie
    raffaele

I commenti sono chiusi.