<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="it">
	<id>https://wiki.golem.linux.it/index.php?action=history&amp;feed=atom&amp;title=Discussione%3AVPN_del_GOLEM</id>
	<title>Discussione:VPN del GOLEM - Cronologia</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.golem.linux.it/index.php?action=history&amp;feed=atom&amp;title=Discussione%3AVPN_del_GOLEM"/>
	<link rel="alternate" type="text/html" href="https://wiki.golem.linux.it/index.php?title=Discussione:VPN_del_GOLEM&amp;action=history"/>
	<updated>2026-04-24T16:21:13Z</updated>
	<subtitle>Cronologia della pagina su questo sito</subtitle>
	<generator>MediaWiki 1.35.5</generator>
	<entry>
		<id>https://wiki.golem.linux.it/index.php?title=Discussione:VPN_del_GOLEM&amp;diff=9790&amp;oldid=prev</id>
		<title>Giomba: Spostati appunti deprecati sulla VPN del GOLEM con OpenVPN nella pagina di discussione</title>
		<link rel="alternate" type="text/html" href="https://wiki.golem.linux.it/index.php?title=Discussione:VPN_del_GOLEM&amp;diff=9790&amp;oldid=prev"/>
		<updated>2026-03-07T22:48:52Z</updated>

		<summary type="html">&lt;p&gt;Spostati appunti deprecati sulla VPN del GOLEM con OpenVPN nella pagina di discussione&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nuova pagina&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Appunti deprecati su OpenVPN per la VPN IPv6 del GOLEM ==&lt;br /&gt;
{{Note&lt;br /&gt;
|type=warning&lt;br /&gt;
|text=OpenVPN è in fase di dismissione, perché stai leggendo questo paragrafo? Se sei il sysop dovresti saperlo bene.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;border-left: 5px solid red; opacity: 0.6;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nel tunnel di OpenVPN è presente la prima rete di servizio &amp;lt;code&amp;gt;2001:470:c844::/64&amp;lt;/code&amp;gt; (con ''rrrr'' = ''0000'').&lt;br /&gt;
Per il layer 2 viene usato il protocollo interno di OpenVPN.&lt;br /&gt;
&lt;br /&gt;
Per mantenere coerenza nella configurazione dei client di OpenVPN, delle rotte statiche, e per sapere a chi è stata assegnata una determinata sottorete, abbiamo realizzato [https://git.golem.linux.it/argilla/vpnunit vpnunit], un piccolo software Python che si occupa di aggiornare i file di configurazione necessari per OpenVPN e le rotte con &amp;lt;code&amp;gt;ip route&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
{{Note&lt;br /&gt;
|type=warning&lt;br /&gt;
|text=Il file di configurazione qui riportato è una bozza generale di come è impostato il server, ma per l'attuale configurazione in esecuzione si vedano i backup di [https://git.golem.linux.it/argilla/vpnunit vpnunit].&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Configurazione del server OpenVPN sul VPS server:&lt;br /&gt;
 port xxxxx&lt;br /&gt;
 proto udp&lt;br /&gt;
 &lt;br /&gt;
 dev tun&lt;br /&gt;
 &lt;br /&gt;
 ca /etc/openvpn/keys/ca.crt&lt;br /&gt;
 cert /etc/openvpn/keys/server.crt&lt;br /&gt;
 dh /etc/openvpn/keys/dh2048.pem&lt;br /&gt;
 &lt;br /&gt;
 server 10.0.0.0 255.255.255.0&lt;br /&gt;
 server-ipv6 2001:470:c844::1/64&lt;br /&gt;
 ifconfig-ipv6 2001:470:c844::1 2001:470:c844::2&lt;br /&gt;
 &lt;br /&gt;
 topology subnet&lt;br /&gt;
 &lt;br /&gt;
 push &amp;quot;route-ipv6 ::/0&amp;quot;&lt;br /&gt;
 push &amp;quot;route-ipv6 2001:470:c844::/48&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 client-config-dir /etc/openvpn/staticclients&lt;br /&gt;
 &lt;br /&gt;
 comp-lzo&lt;br /&gt;
 keepalive 10 120&lt;br /&gt;
 persist-key&lt;br /&gt;
 persist-tun&lt;br /&gt;
 &lt;br /&gt;
 user nobody&lt;br /&gt;
 group nogroup&lt;br /&gt;
 &lt;br /&gt;
 verb 3&lt;br /&gt;
 status openvpn-status.log&lt;br /&gt;
&lt;br /&gt;
In particolare:&lt;br /&gt;
* &amp;lt;code&amp;gt;server 10.0.0.0 255.255.255.0&amp;lt;/code&amp;gt; va messo comunque anche se non si intende utilizzare l'IPv4 nel tunnel; è una limitazione (teorica) al numero di indirizzi IPv6 utilizzabili, ma comunque (in pratica) il server scoppierebbe ben prima;&lt;br /&gt;
* &amp;lt;code&amp;gt;ifconfig-ipv6 2001:470:c844::1 2001:470:c844::2&amp;lt;/code&amp;gt; il server OpenVPN sarà accessibile attraverso il tunnel tramite l'indirizzo ''2001:470:c844::2''&lt;br /&gt;
* &amp;lt;code&amp;gt;push &amp;quot;route-ipv6 ::/0&amp;quot;&amp;lt;/code&amp;gt; il server OpenVPN comunica ai client che è il ''default gateway'' per l'Internet IPv6; naturalmente, ogni client è libero di usare il gateway che preferisce, ma se non ha connettività IPv6 non potrà far altro che utilizzare questo;&lt;br /&gt;
* &amp;lt;code&amp;gt;push &amp;quot;route-ipv6 2001:470:c844::/48&amp;quot;&amp;lt;/code&amp;gt; è necessario comunicare a tutti i client che la nostra rete è raggiungibile per mezzo del server OpenVPN; questo non esclude la possibilità che due reti utente vicine tra loro possano interconnettersi fisicamente e direttamente;&lt;br /&gt;
&lt;br /&gt;
{{Note&lt;br /&gt;
|type=reminder&lt;br /&gt;
|text=In teoria basta la sola rotta di default, ma in pratica non funziona (si suppone per come è fatto il protocollo openVPN a livello 2)&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Aggiungere un Gateway Utente / Client OpenVPN ===&lt;br /&gt;
Verrà presa ad esempio la configurazione del gateway di officina '''serverozzo''', che, secondo quanto stabilito nei precedenti paragrafi avrà indirizzo &amp;lt;code&amp;gt;2001:470:c844::200&amp;lt;/code&amp;gt; e inoltrerà i pacchetti da/per la rete &amp;lt;code&amp;gt;2001:470:c844:200::/60&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
{{Note&lt;br /&gt;
|type=reminder&lt;br /&gt;
|text=I paragrafi di configurazione manuale del gateway utente sono utili per capire il funzionamento dei vari comandi, ma all'amministratore di rete è '''proibito''' effettuare queste operazioni manualmente: si deve usare lo script [https://git.golem.linux.it/argilla/vpnunit vpnunit], cha si occupa di creare tutte queste configurazioni a mano, e, siccome si tratta di diversi file sparsi, tenerli aggiornati e coerenti tra loro.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==== Generare chiave SSL ====&lt;br /&gt;
Seguire la guida [[VPN del GOLEM]] per generare le chiavi.&lt;br /&gt;
&lt;br /&gt;
==== Configurazione del server OpenVPN ====&lt;br /&gt;
===== Comunicare al client il suo indirizzo IPv6 statico =====&lt;br /&gt;
Sul server OpenVPN, nel file di configurazione del client ''/etc/openvpn/staticclients/hostname'', scrivere le seguenti righe:&lt;br /&gt;
 ifconfig-ipv6-push 2001:470:c844::200/64&lt;br /&gt;
 iroute-ipv6 2001:470:c844:200::/60&lt;br /&gt;
&lt;br /&gt;
Rispettivamente per:&lt;br /&gt;
* assegnare indirizzo statico al gateway utente / client openvpn;&lt;br /&gt;
* permettere al client di inoltrare sul tunnel i pacchetti provenienti dalla rete alle sue spalle; questo serve al protocollo di openVPN per il layer 2, altrimenti non vengono fatti passare pacchetti con indirizzo sorgente diverso da quelli della rete di servizio; in alternativa si poteva fare un tunnel ''tap'' e utilizzare Ethernet a livello 2;&lt;br /&gt;
&lt;br /&gt;
===== Inoltrare i pacchetti per la nuova rete =====&lt;br /&gt;
Sul server OpenVPN, impostare la rotta per la nuova rete.&lt;br /&gt;
&lt;br /&gt;
Utilizzare l'apposito script di configurazione ''/root/route-ipv6.sh'' e lanciarlo con argomento ''add'':&lt;br /&gt;
 # ip -6 route add 2001:470:c844:200::/60 via 2001:470:c844::200&lt;br /&gt;
&lt;br /&gt;
===== Connessione alla VPN con OpenVPN =====&lt;br /&gt;
{{Note&lt;br /&gt;
|type=reminder&lt;br /&gt;
|text=Questo file di configurazione contiene indicazioni di massima per il client: da quando abbiamo realizzato lo script [https://git.golem.linux.it/argilla/vpnunit vpnunit], il file di configurazione viene prodotto automaticamente, e ingloba anche i file di certificato e chiave in un unico file.&lt;br /&gt;
L'amministratore di rete può agevolmente scaricarlo e inviarlo all'utente.&lt;br /&gt;
}}&lt;br /&gt;
Usare questo file di configurazione sul client openvpn:&lt;br /&gt;
&lt;br /&gt;
 client&lt;br /&gt;
 dev tun&lt;br /&gt;
 proto udp&lt;br /&gt;
 remote golem.linux.it xxxxx&lt;br /&gt;
 resolv-retry infinite&lt;br /&gt;
 nobind&lt;br /&gt;
 &lt;br /&gt;
 user nobody&lt;br /&gt;
 group nogroup&lt;br /&gt;
 &lt;br /&gt;
 ns-cert-type server&lt;br /&gt;
 ca /etc/openvpn/golem.linux.it/ca.crt&lt;br /&gt;
 cert /etc/openvpn/golem.linux.it/serverozzo.crt&lt;br /&gt;
 key /etc/openvpn/golem.linux.it/serverozzo.key&lt;br /&gt;
 &lt;br /&gt;
 keepalive 30 120&lt;br /&gt;
 persist-key&lt;br /&gt;
 persist-tun&lt;br /&gt;
 &lt;br /&gt;
 comp-lzo&lt;br /&gt;
 &lt;br /&gt;
 verb 3&lt;br /&gt;
&lt;br /&gt;
Se il client OpenVPN è un nodo foglia della rete, cioè non funge da gateway perché si deve collegare solo lui (es. smartphone), allora c'è già connettività IPv6 e non serve fare altro.&lt;br /&gt;
&lt;br /&gt;
Se invece il client è il gateway della rete IPv6 (es. ''serverozzo'', o il router di casa di uno dei soci che vuole navigare in IPv6), allora bisogna configurarlo come indicato nell'apposita sezione.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Connessione OpenVPN tramite interfaccia grafica ==&lt;br /&gt;
Per effettuare una connessione VPN tramite il gestore di rete grafico &amp;lt;code&amp;gt;NetworkManager&amp;lt;/code&amp;gt;, è necessario installare il pacchetto &amp;lt;code&amp;gt;networkmanager-openvpn&amp;lt;/code&amp;gt;.&lt;br /&gt;
La configurazione varia leggermente a seconda del desktop environment utilizzato e della tecnologia VPN.&lt;br /&gt;
&lt;br /&gt;
=== KDE ===&lt;br /&gt;
* Aprire le impostazioni di rete tramite l'icona nella barra di stato o direttamente dalle impostazioni di sistema&lt;br /&gt;
* Cliccare su ''&amp;quot;Aggiungi una nuova connessione&amp;quot;''&lt;br /&gt;
* Selezionare ''openvpn'' (figura 1)&lt;br /&gt;
* Inserire i 3 certificati nella scheda ''VPN'' come specificato nella sezione [[#File di configurazione client.conf]] (figura 2)&lt;br /&gt;
* Modificare la porta nel sottomenu ''Avanzate...'' (figura 3)&lt;br /&gt;
* Nella scheda ''IPv4'' selezionare ''Automatico (solo indirizzi)'' (figura 4)&lt;br /&gt;
* Spuntare le due caselle nel sottomenu ''Rotte...'' (figura 5)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery&amp;gt;&lt;br /&gt;
File:Vpn_aggiungi.png | 1&lt;br /&gt;
File:Parametri_VPN.png | 2&lt;br /&gt;
File:Avanzate_vpn.png | 3&lt;br /&gt;
File:Ipv4_vpn.png | 4&lt;br /&gt;
File:Rotte_vpn.png | 5&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Gnome ===&lt;br /&gt;
''TODO'' - anche se in realtà, ''qualcuno usa GNOME?''&lt;/div&gt;</summary>
		<author><name>Giomba</name></author>
	</entry>
</feed>