Come Sicurezza un Server Domestico Linux

Secure Linux Home Server Featured

Ci sono molte ragioni per impostare un server domestico. Potresti usarlo come server multimediale, server di file o persino server di backup locale. Fondamentalmente, qualsiasi file tuo che non ha bisogno di essere online è un buon candidato per un server domestico. Configurare un server domestico con Linux è relativamente facile, specialmente di questi tempi. Detto ciò, mantenere quel server sicuro è un’altra storia del tutto. La sicurezza può essere complicata, così come è importante.

Leggi anche: Cos’è Log4Shell e Come Proteggere il Tuo Sistema Linux Contro di Esso

Installa Solo Ciò di Cui Hai Assolutamente Bisogno

Uno dei modi più semplici per mantenere sicuro il tuo server domestico è tenere a mente la sicurezza fin dall’inizio. Questo inizia con l’installazione. Sei incerto se hai bisogno di un’applicazione o servizio? Non installarlo. Puoi sempre installarlo in seguito.

Se hai installato Linux un paio di volte, questo è ancora più facile. Invece di rimanere con le opzioni predefinite, utilizza le modalità che ti danno il massimo controllo sull’installazione. A volte queste vengono chiamate “modalità esperto” o qualcosa di simile.

Tenere d’occhio le opzioni di installazione può farti risparmiare tempo disattivando servizi per motivi di sicurezza in seguito.

Configura sudo

Prima di passare a qualsiasi altro passaggio, devi configurare sudo. Perché? Perché, una volta terminato qui, accederai al tuo server tramite SSH e non potrai accedere come account root. Per apportare ulteriori modifiche al tuo sistema, dovrai utilizzare sudo.

Innanzitutto, verifica se sei già in grado di utilizzare sudo. Dal tuo account utente, esegui il seguente comando con il tuo nome utente al posto di USERNAME:

sudo -lU USERNAME

Se vedi un messaggio che indica che il tuo nome utente può eseguire “(TUTTI) TUTTI”, o qualcosa di simile, sei pronto per procedere.

Ora, come account root sul tuo server, esegui il seguente comando per modificare il file “/etc/sudoers”. Se preferisci un altro editor, usalo invece di nano.

EDITOR=nano visudo

Modifica il file per includere il seguente, sostituendo USERNAME con il tuo nome utente:

USERNAME   ALL=(ALL) ALL

Leggi anche: Come Utilizzare Nessus Vulnerability Scanner su Linux

Configura SSH

Secure Linux Home Server Openssh

Potresti già avere SSH abilitato sul tuo server domestico. Probabilmente sì, infatti, poiché questo è tipicamente il modo in cui interagisci con un server.

Innanzitutto, assicurati che OpenSSH sia installato. Se utilizzi un’altra distribuzione, il tuo comando varierà, ma il nome del pacchetto dovrebbe essere piuttosto costante. Su Ubuntu, esegui il seguente comando:

sudo apt install openssh-server

Utilizzare l’autenticazione basata su chiave è molto più sicuro rispetto all’autenticazione tramite password, quindi imposteremo SSH per funzionare in questo modo. Per farlo, assicurati di lavorare su un client che intendi connettere al server, non sul server stesso. Prima, vuoi assicurarti di non avere già delle chiavi SSH:

ls ~/.ssh/

Se vedi “id_rsa” e “id_rsa.pub” tra i nomi dei file elencati, hai già delle chiavi SSH. Salta il passaggio successivo.

ssh-keygen -t rsa -b 4096 -C "[email protected]"

Ora copierai la chiave SSH sul tuo server:

ssh-copy-id USERNAME@SERVER

Per un server domestico, molto probabilmente utilizzerai un indirizzo IP per il tuo server invece di un nome. Se non conosci il nome del tuo server, utilizza il tuo indirizzo IP invece di SERVER sopra.

Ora modificheremo le impostazioni SSH per proteggerle ulteriormente. Effettua il login nel tuo server dal client su cui hai creato le chiavi. Questo ti permetterà di accedere di nuovo dopo questo passaggio. Esegui il seguente comando, sostituendo nano con l’editor di tua scelta.

sudo nano /etc/ssh/sshd_config

Modifica il file e imposta le seguenti configurazioni. Queste si troveranno in vari luoghi nel file. Assicurati che non ci siano duplicati, poiché solo la prima istanza di un’impostazione verrà seguita.

ChallengeResponseAuthentication no  
PasswordAuthentication no  
UsePAM no  
PermitRootLogin no

Ora devi riavviare il server SSH con uno dei seguenti comandi.

Su Ubuntu, esegui:

sudo systemctl restart ssh

Leggi anche: SELinux vs AppArmor: Quali Sono le Differenze e Quale Dovresti Usare?

Configura un Firewall

A seconda dei servizi che stai eseguendo e di quanto il tuo server si connette a Internet, potresti voler eseguire un firewall. Ci sono alcune opzioni per questo, ma il metodo collaudato su Linux è iptables.

Impostare iptables è al di fuori dell’ambito di questo articolo, ma non preoccuparti. Abbiamo una guida completa per configurare iptables sulla tua macchina.

Un altro modo più semplice per impostare un firewall è utilizzare ufw. Puoi installarlo con il comando:

sudo apt install ufw

Per impostazione predefinita, bloccherà tutte le porte. Per abilitare l’accesso online e ssh, esegui i seguenti comandi ufw per aprire le porte 80, 443 e 22:

sudo ufw allow 80  
sudo ufw allow 443  
sudo ufw allow 22

E infine, abilita il servizio ufw:

sudo ufw enable

Rimani Aggiornato

Secure Linux Home Server Installation

I server possono essere facili da dimenticare se funzionano, ma questo può essere pericoloso. Assicurati di tenere il tuo software aggiornato. Puoi utilizzare aggiornamenti non presidiati, ma questi possono essere imprevedibili. Il modo più sicuro è pianificare un appuntamento di manutenzione regolare settimanale o mensile per assicurarti che tutto sia a posto.

Leggi anche: I Migliori Strumenti Open Source per Sicurezza del Tuo Server Linux

Dove Andare Da Qui

Ora hai un buon inizio per mantenere il tuo server protetto dalle minacce esterne. E se hai bisogno di accedere al tuo server da casa? Ogni porta che apri potrebbe essere potenzialmente utilizzata da un attaccante e ogni porta aperta aumenta la tua vulnerabilità.

Uno dei modi più semplici per accedere alla tua rete domestica dall’esterno è utilizzare un VPN, che è al di fuori dell’ambito di questo articolo, ma non preoccuparti, ti abbiamo coperto. Dai un’occhiata alla nostra lista dei migliori servizi VPN sicuri disponibili per un’idea delle tue opzioni.