Connessione da remoto: il DDNS con DuckDNS


Informatica / lunedì, Febbraio 3rd, 2020

Il problema principale delle connessioni casalinghe (tipicamente ADSL), è che ogni volta che si spegne e riaccende il router gli viene assegnato un ip pubblico diverso.
L’ip pubblico è un indirizzo che identifica univocamente la tua connessione in rete, quindi se hai un server web e devi accedervi da remoto, dovrai aprire il browser a quell’indirizzo ip. Quindi in teoria dovresti conoscere quale indirizzo ip hai assegnato in quel momento, e poi puntare a quell’indirizzo numerico.
La soluzione per fortuna esiste ed è gratuita, si chiama DuckDNS.org.
DuckDns.org è gratuito, non richiede nulla una volta impostato, e la cosa più bella, ti da lo script personalizzato pronto da copia incollare nel Rasberry Pi.

Funziona così: ti registri ( io uso di norma sempre l’account Google), crei un nome univoco per il tuo ip pubblico, installi uno script che informa duckdns qual’è il tuo ip pubblico ogni tot minuti. Facilissimo.

Registrazione

[Immagine: 2019-02-09-12-13-52-Duck-DNS.jpg]
[Immagine: 2019-02-09-12-17-21-Duck-DNS.jpg]
  • Accedi a DuckDns
  • Registrati tramite i grossi pulsanti in alto (persona, twitter, github, reddit, google)
  • Scrivi un nome univoco per il tuo ip pubblico, che diventerà il tuo nome di dominio e premi add domain.
    Il tuo DDNS sarà [nome da te scelto].duckdns.org 

Installazione

  • E’ il turno di installare l’agent per aggiornare il tuo DDNS, andando nella pagina installazione
  • seleziona Pi, poi sotto seleziona il nome del tuo DDNS, ti comparirà la procedura facilissima e personalizzata da copiare
    Questo è un esempio:
  • Accedi al terminale:
    ssh pi@raspberrypi

Crea il fileCodice:

nano ~/duck.sh

Copia il contenuto proposto dal SITO, qui un esempio

echo url="https://www.duckdns.org/update?domains=enricoblablabla&token=650151061065611ip=" | curl -k -o ~/duckdns/duck.log -K -

Dagli i permessi corretti conCodice:

chmod 700 duck.sh

programmalo con Codice:

crontab -e

(se chiede l’editor, scegli nano)
aggiungendoCodice:

*/5 * * * * ~/duckdns/duck.sh >/dev/null 2>&1

Avvia lo script manualmente Codice:

./duck.sh

per vedere se è tutto OK eseguiCodice:

cat duck.log


Accedere dal’esterno

[Immagine: 2019-02-09-12-27-28-LAN.jpg]

Da una connessione esterna, tipo l’hotspot dello smartphone, avrai accesso ai servizi disponibili suo tuo nuovo DDNS, ma per farlo devi esporli al mondo configurando il router.
– Apri la pagina di gestione de tuo router adsl o firewall e cerca la voce Server DHCP o simile.
Crea una Prenotazione associando il MAC Address del RaspberryPi ad un ip, d’ora in poi qualsiasi sistema operativo installerai, avrai la certezza di ottenere sempre lo stesso ip, basta impostarlo a mano ogni volta!

Se non conosci la pagina di accesso del router, cerca la voce Gateway nella scheda di rete di un qualsiasi pc o smartphone nella tua rete, o esegui da terminale
Linux:

ifconfig

Windows:

ipconfig

[Immagine: 2019-02-09-12-29-58-Port-Mapping.jpg]

– Bisogna infine creare un NAT o Port Forwarding o Virtual Server, cercate questa voce nel router o firewall, e scegliete una porta adeguata e selezionate l’ip interno del raspberry

Test

Da cellulare provate ad accedere al vostro DDNS sulla porta che avete scelto, se tutto va bene, avete finito. Buon divertimento.

ATTENZIONE! Esporsi al mondo ha grossi rischi! Vedi l’attacco Mirai. Leggete la guida sulla sicurezza pubblicata nel Blog ed usate password MOLTO Complesse usa il generatore di password , e meglio ancora usate PiVPN.

Alcune guide Correlate:

Proteggi il raspberry pi dagli hacker
Vpn Facile con PiVpn
NodeRed Dashboard
Apache/Mysql/Php/Nextcloud
Downloader con Aria2

Alcuni ip di router domestici:

http:\\192.168.1.1
http:\\192.168.0.1
http:\\192.168.1.254
http:\\192.168.0.254