8.2. Configurazione della rete
La rete viene configurata automaticamente durante l'installazione iniziale. Se Network Manager viene installato (che è il caso più frequente per le installazioni desktop complete), allora potrebbe essere che nessuna configurazione sia effettivamente richiesta (per esempio, se ti affidi al DHCP su una connessione cablata e non hai requisiti specifici). Se è richiesta una configurazione (per esempio, per un'interfaccia WiFi), allora verrà creato il relativo file in /etc/NetworkManager/system-connections/
.
Se Network Manager non è stato installato, allora l'installatore configurerà
ifupdown creando il file
/etc/network/interfaces
. Una riga che inizia con
auto
definisce una lista di interfacce che saranno configurate automaticamente al boot dal servizio di
networking
. Nel caso siano presenti più interfacce è buona pratica mantenere le configurazioni in diversi file all'interno di
/etc/network/interfaces.d/
come descritto nel riquadro
FONDAMENTALE Directory terminanti in .d
.
In un contesto server, ifupdown è lo strumento di configurazione di rete generalmente disponibile. Per questo ne discuteremo nelle prossime sezioni. Per ulteriori informazioni sulla sintassi del file di configurazione, leggere interfacce(5).
Alternatives to the mentioned packages are netplan
and systemd-networkd
, which should be mentioned here. They are often used by cloud hosters and providers of virtual private servers. Please read their manual pages if you are planning on using them.
8.2.1. Interfaccia Ethernet
Se il computer dispone di una scheda Ethernet, la rete che vi sarà associata dev'essere configurata scegliendo uno tra i due metodi disponibili. Il metodo più semplice è la configurazione dinamica con DHCP, e richiede un server DHCP nella rete locale. Si può indicare il nome host desiderato, corrispondente all'hostname
impostato nell'esempio seguente. Il server DHCP invia informazioni di configurazione appropriate per la rete.
Esempio 8.1. Configurazione DHCP
auto enp0s31f6
iface enp0s31f6 inet dhcp
hostname arrakis
Una configurazione "statica" indica delle impostazioni di rete fisse. Ciò include perlomeno un indirizzo IP ed una maschera di rete; a volte vengono indicati anche indirizzi di rete e broadcast. Un router che connette verso l'esterno viene indicato come gateway.
Esempio 8.2. Configurazione statica
auto enp0s31f6
iface enp0s31f6 inet static
address 192.168.0.3/24
broadcast 192.168.0.255
network 192.168.0.0
gateway 192.168.0.1
8.2.2. Interfaccia wireless
Getting wireless network cards to work can be a bit more challenging. First of all, they often require the installation of proprietary firmwares. Then wireless networks rely on cryptography to restrict access to authorized users only, this implies storing some secret key in the network configuration. Let's tackle those topics one by one.
8.2.2.1. Installazione dei firmware necessari
First you have to enable the non-free-firmware repository in APT's sources.list file: see
Sezione 6.1, «Compilazione del file sources.list
» for details about this file. Many firmware are proprietary and are thus located in this repository. You can try to skip this step if you want, but if the next step doesn't find the required firmware, retry after having enabled the non-free section.
Then you have to install the appropriate firmware-*
packages. If you don't know which package you need, you can install the isenkram package and run its isenkram-autoinstall-firmware
command. The packages are often named after the hardware manufacturer or the corresponding kernel module: firmware-iwlwifi for Intel wireless cards, firmware-atheros for Qualcomm Atheros, firmware-realtek for Realtek, etc. A reboot is then recommended because the kernel driver usually looks for the firmware files when it is first loaded and no longer afterwards.
8.2.2.2. Voci specifiche per il wireless in /etc/network/interfaces
Le interfacce wireless possono essere gestite da ifupdown, ma ha bisogno dell'aiuto del pacchetto wpasupplicant che fornisce l'integrazione necessaria tra ifupdown ed il comando wpa_supplicant
usato per configurare le interfacce wireless (quando è in uso la crittografia WPA/WPA2). La voce in /etc/network/interfaces
deve essere estesa con due parametri supplementari per specificare il nome della rete wireless (ovvero il suo SSID) e la Pre-Shared Key (PSK).
Esempio 8.3. Configurazione DHCP per un'interfaccia wireless
auto wlp4s0
iface wlp4s0 inet dhcp
wpa-ssid Falcot
wpa-psk ccb290fd4fe6b22935cbae31449e050edd02ad44627b16ce0151668f5f53c01b
Il parametro wpa-psk
può contenere la passphrase in chiaro o la sua versione con hash generata con wpa_passphrase SSID passphrase
. Se si usa una connessione wireless non criptata, si deve inserire una voce wpa-key-mgmt NONE
e nessuna wpa-psk
. Per ulteriori informazioni sulle possibili opzioni di configurazione, consultare /usr/share/doc/wpasupplicant/README.Debian.gz
.
A questo punto, si dovrebbe considerare di limitare i permessi di lettura su /etc/network/interfaces
solo all'utente root, poiché il file contiene una chiave privata a cui non tutti gli utenti dovrebbero avere accesso.
8.2.3. Connettersi con PPP attraverso un modem PSTN
Una connessione punto-punto (PPP) stabilisce una connessione intermittente: questa è la soluzione più comune per le connessioni realizzate con un modem telefonico (detto anche modem PSTN poiché la connessione transita nella rete telefonica pubblica).
Una connessione tramite modem telefonico richiede un account presso un provider di accesso, che include un numero telefonico, un nome utente, una password ed a volte uno specifico protocollo di autenticazione da utilizzare. Questo tipo di connessione si configura usando lo strumento pppconfig
fornito dall'omonimo pacchetto Debian. Per impostazione predefinita, stabilisce una connessione chiamata provider
(come nel Provider di servizi internet). Quando si hanno dubbi sul protocollo di autenticazione, scegliere PAP: è offerto dalla maggior parte dei provider di servizi Internet.
Dopo la configurazione è possibile connettersi usando il comando pon
(fornendo il nome della connessione come parametro, quando il valore predefinito provider
non è appropriato). Si può terminare il collegamento con il comando poff
. Questi due comandi possono essere eseguiti dall'utente root, o da ogni altro utente, purché sia inserito nel gruppo dip
.
8.2.4. Connessione attraverso un modem ADSL
Il termine generico "modem ADSL" ricopre una moltitudine di dispositivi con funzioni molto differenti. I modem più semplici da utilizzare con Linux sono quelli che dispongono di un'interfaccia Ethernet ( e non solo una porta USB). Questi sono tendenzialmente popolari: molti provider di servizi Internet ADSL prestano (o affittano) un "dispositivo" con interfacce Ethernet. In base al tipo di modem, la configurazione richiesta può variare molto.
8.2.4.1. Modem che supportano PPPOE
Alcuni modem Ethernet lavorano con il protocollo PPPOE (Point to Point Protocol over Ethernet). Lo strumento pppoeconf
(dall'omonimo pacchetto) configurerà la connessione. Per farlo, modifica il file /etc/ppp/peers/dsl-provider
con le impostazioni fornite e registra le informazioni di accesso nei file /etc/ppp/pap-secrets
e /etc/ppp/chap-secrets
. Si raccomanda di accettare tutte le modifiche proposte.
Quando la configurazione è completata è possibile avviare la connessione ADSL con il comando pon dsl-provider
e terminarla con poff dsl-provider
.
8.2.4.2. Modem che supportano PPTP
Il protocollo PPTP (Point-to-Point Tunneling Protocol) è stato creato da Microsoft. Sviluppato agli albori dell'ADSL, è stato velocemente sostituito da PPPOE. Se questo protocollo è una scelta forzata per voi, si veda la
Sezione 10.3.4, «PPTP».
8.2.4.3. Modem che supportano DHCP
Quando un modem è connesso al computer tramite un cavo Ethernet (cavo incrociato o crossover) si configura tipicamente una connessione di rete sul computer attraverso DHCP: il modem agisce automaticamente come gateway per default e si fa carico dell'instradamento (significa che gestisce il traffico di rete tra il computer ed Internet).
Molti "router ADSL" sul mercato possono essere utilizzati in questo modo, come fanno la maggior parte dei modem ADSL forniti dai provider di servizi Internet.
8.2.5. Automatizzare la configurazione della rete per gli utenti in roaming
Molti ingegneri della Falcot hanno un computer portatile che utilizzano, per scopi professionali, anche a casa. La configurazione di rete da usare dipende dalla posizione. A casa può esserci una rete wifi (protetta da una chiave WPA), mentre sul luogo di lavoro è disponibile una rete cablata per una maggiore sicurezza e velocità.
Per evitare di doversi manualmente connettere o disconnettere alle corrispondenti interfacce di rete, gli amministratori hanno installato il pacchetto network-manager su queste macchine in roaming. Questo software abilita l'utente a passare facilmente tra una rete ed un'altra utilizzando la piccola icona visualizzata nell'area notifiche del desktop grafico. Cliccando su questa icona si visualizza una lista di reti disponibili (sia via cavo che wireless) così è possibile scegliere semplicemente la rete che si intende utilizzare. Il programma salva la configurazione per le reti alle quali l'utente si è già connesso ed automaticamente passa alla miglior rete disponibile quando la connessione corrente si interrompe.
Per poter far ciò, il programma è strutturato in due parti: un demone eseguito come root gestisce l'attivazione e la configurazione delle interfacce di rete ed una interfaccia utente controlla questo demone. Il PolicyKit gestisce le autorizzazioni richieste per controllare questo programma ed in Debian il PolicyKit è stato configurato in modo tale che solo i membri del gruppo netdev possono aggiungere o modificare le connessioni del Network Manager.
Network Manager knows how to handle various types of connections (DHCP, manual configuration, local network), but only if the configuration is set with the program itself. This is why it will systematically ignore all network interfaces in /etc/network/interfaces
and /etc/network/interfaces.d/
for which it is not suited. Since Network Manager doesn't give details when no network connections are shown, the easy way is to delete from /etc/network/interfaces
any configuration for all interfaces that must be managed by Network Manager. Alternatively, it can be configured to manage all devices listed in that file as well. This configuration is handled in the [ifupdown]
section of its configuration file.
Si noti che questo programma è installato in via predefinita quando viene scelto di installare l'ambiente grafico durante l'installazione iniziale.