Passaggi aggiuntivi consigliati per nuovi server CentOS 7

Introduzione

Dopo aver impostato la configurazione di base per un nuovo server, ci sono alcuni passaggi aggiuntivi altamente consigliati nella maggior parte dei casi. In questa guida, continueremo la configurazione dei nostri server affrontando alcune procedure consigliate, ma opzionali.

Prerequisiti e Obiettivi

Prima di iniziare questa guida, dovresti seguire la guida Configurazione iniziale del server CentOS 7. Questo è necessario per impostare i tuoi account utente, configurare l’elevazione dei privilegi con sudo e bloccare SSH per motivi di sicurezza.

Una volta completata la guida sopra, puoi continuare con questo articolo. In questa guida, ci concentriamo sulla configurazione di alcuni componenti opzionali ma consigliati. Questo coinvolgerà l’impostazione del sistema con un firewall e un file di swap, e la configurazione della sincronizzazione del Network Time Protocol.

Configurazione di un Firewall di Base

Le firewall forniscono un livello di sicurezza di base per il vostro server. Queste applicazioni sono responsabili del rifiuto del traffico su ogni porta del vostro server con eccezione per i porti/servizi che avete approvato. CentOS viene fornito con una firewall chiamata firewalld. Uno strumento chiamato firewall-cmd può essere utilizzato per configurare le politiche del firewall. La nostra strategia di base sarà quella di chiudere tutto ciò che non abbiamo un buon motivo per tenere aperto. Prima installate firewalld:

  1. sudo yum install firewalld

Il servizio firewalld ha la capacità di fare modifiche senza interrompere le connessioni attuali, quindi possiamo attivarlo prima di creare le eccezioni:

  1. sudo systemctl start firewalld

Ora che il servizio è in funzione, possiamo utilizzare l’utilità firewall-cmd per ottenere e impostare informazioni sulla politica del firewall. L’applicazione firewalld utilizza il concetto di “zone” per etichettare la fiducia nei confronti degli altri host sulla rete. Questa etichettatura ci dà la possibilità di assegnare regole differenti a seconda di quanto ci fidiamo di una rete.

In questo guide, solo le politiche per la zona predefinita verranno modificate. Quando ricarichiamo il nostro firewall, questa sarà la zona applicata alle nostre interfacce. Dovremmo cominciare aggiungendo eccezioni al nostro firewall per i servizi approvati. Il più essenziale di questi è SSH, poiché dobbiamo mantenere l’accesso remoto amministrativo al server.

Se non hai modificato il porto su cui si sta eseguendo il demone SSH, puoi abilitare il servizio inserendo il nome del servizio digitando:

  1. sudo firewall-cmd --permanent --add-service=ssh

Se hai modificato il porto SSH per il tuo server, dovrai specificarlo esplicitamente. Inoltre devi includere il protocollo che il servizio utilizza. Scrivi solo quanto segue se il tuo server di SSH è già stato riavviato al nuovo porto:

  1. sudo firewall-cmd --permanent --remove-service=ssh
  2. sudo firewall-cmd --permanent --add-port=4444/tcp

Questo è l’angolo minimo necessario per mantenere l’accesso amministrativo al server. Se intendi avviare altri servizi, dovrai aprire anche la firewall per questi ultimi.

Se intendi avviare un server Web convenzionale, dovrai abilitare il servizio http:

  1. sudo firewall-cmd --permanent --add-service=http

Se intendi avviare un server Web con SSL/TLS attivato, dovrai consentire il traffico per https anche:

  1. sudo firewall-cmd --permanent --add-service=https

Se hai bisogno di SMTP email attivato, puoi scrivere:

  1. sudo firewall-cmd --permanent --add-service=smtp

Per vedere qualsiasi servizio aggiuntivo che puoi abilitare in base al nome, scrivi:

  1. sudo firewall-cmd --get-services

Quando hai finito, puoi vedere la lista delle eccezioni che saranno implementate scrivendo:

  1. sudo firewall-cmd --permanent --list-all

Quando ti sentirai pronto ad implementare le modifiche, ricarica la firewall:

  1. sudo firewall-cmd --reload

Se tutto funziona come previsto, dovresti assicurarti che la firewall si sia avviata al boot:

  1. sudo systemctl enable firewalld

Ricorda che dovrai aprire esplicitamente la firewall (con servizi o porte) per qualsiasi servizio addizionale che potrai configurare più tardi.

Configura le fusine orari e la sincronizzazione del protocollo di tempo reale

Il prossimo passo è di adattare le impostazioni di localizzazione per il tuo server e configurare la sincronizzazione protocollo di tempo di rete (NTP).

Il primo passo consiste nell’assicurarsi che il tuo server operi sotto il fuso orario corretto. Il secondo passo consiste in configurare il sistema per sincronizzare il suo orologio di sistema con il fuso orario standard mantenuto da una rete globale di server NTP. Questo aiuterà a prevenire alcuni comportamenti inconsistenti che possono derivare dall’orologi non sincronizzati.

Configura le fusole orarie

Il nostro primo passo è impostare il fuso orario del server. Questa procedura può essere completata usando il comando timedatectl.

Prima di tutto, guarda le fusole orarie disponibili scrivendo:

  1. sudo timedatectl list-timezones

Questo ti mostrera la lista delle fusole orarie disponibili per il tuo server. Quando trovi l’impostazione della regione/fuso orario corretta per il tuo server, lo imposta scrivendo:

  1. sudo timedatectl set-timezone region/timezone

Ad esempio, per impostare il fuso orario dell’estremo oriente degli Stati Uniti, puoi scrivere:

  1. sudo timedatectl set-timezone America/New_York

Il tuo sistema sarà aggiornato a usare il fuso orario selezionato. Puoi confermare questo scrivendo:

  1. sudo timedatectl

Tu potrai confermare che il tuo sistema abbia impostato il fuso orario desiderato.Configura la sincronizzazione NTP

Ora che hai impostato il tuo fuso orario, dovremmo configurare NTP. Ci permetterà di mantenere sincronizzata la tua macchina con altri server, contribuendo ad una maggior predicibilità nelle operazioni che richiedono l’ora corretta.

Per la sincronizzazione NTP usaremo un servizio chiamato ntp, che puoi installare dai repository predefiniti di CentOS:

  1. sudo yum install ntp

Successivamente, devi avviare il servizio per questa sessione. Devi anche abilitarlo perche funzioni automaticamente ogni volta che il server si avvia:

  1. sudo systemctl start ntpd
  2. sudo systemctl enable ntpd

Il tuo server ora sarà in grado di correggere autonomamente l’ora del sistema in base ai server globali.

Crea un File di Swap

Aggiungere “swap” su un server Linux consente al sistema di spostare le informazioni meno frequentemente accessibili di un programma in esecuzione da RAM all’ambiente su disco. L’accesso dati su disco è molto più lento rispetto all’RAM, ma la disponibilità di swap può spesso essere la differenza tra che un’applicazione sopravviva e che si crasha. Questo è particolarmente utile se intendi ospitare qualsiasi database sul tuo sistema.

L’advice circa la dimensione ideale della swap varia significativamente secondo le fonti consultate. In genere, un valore equivalente o doppio dell’amount di RAM nel tuo sistema è un buon punto di partenza.

Allocare lo spazio che vuoi usare per il file di swap utilizzando l’utility fallocate. Per esempio, se abbiamo bisogno di un file di 4 Gigabyte, possiamo crearne uno swap situato su /swapfile scrivendo:

  1. sudo fallocate -l 4G /swapfile

Dopo aver creato il file, abbiamo bisogno di restringere l’accesso al file in modo che altri utenti o processi non possano vedere cosa è scritto lì:

  1. sudo chmod 600 /swapfile

Ora abbiamo un file con i permessi corretti. Per informare il nostro sistema di formattare il file per la swappaggio, puoi inserire:

  1. sudo mkswap /swapfile

Ora, dirigi al tuo sistema che può usare il file di swap scrivendo:

  1. sudo swapon /swapfile

Il tuo sistema sta usando il file di swap per questa sessione, ma abbiamo bisogno di modificare un file del sistema in modo che il tuo server lo faccia automaticamente all’avvio. Puoi fare questo scrivendo:

  1. sudo sh -c 'echo "/swapfile none swap sw 0 0" >> /etc/fstab'

Con questa aggiunta, il tuo sistema dovrebbe usare automaticamente il file di swap durante ogni avvio.

Dove Andare da Qui?

Ora hai un buon punto di partenza per il tuo server Linux. Da qui, ci sono molti posti dove potresti andare. Prima di tutto, potresti voler fare un’immagine della tua configurazione attuale.

Fai un’Immagine della Tua Configurazione Attuale

Se sei contento con la tua configurazione e desideri usarla come base per le future installazioni, puoi fare un’immagine del tuo server attraverso il pannello di controllo DigitalOcean. A partire dall’ottobre del 2016, le snapshot costano $0.05 per gigabyte al mese basato sulle dimensioni utilizzate del filesystem.

Per fare ciò, chiudete il vostro server dalla linea di comandi. Mentre è possibile fare un’immagine di un sistema in esecuzione, arrestare il servizio assicura che i file su disco siano tutti in uno stato coerente:

  1. sudo poweroff

Ora, nel pannello di controllo di DigitalOcean, potete fare una snapshots visitando la scheda “Snapshot” del vostro server:

Dopo aver preso il tuo snapshot, sarà possibile usarlo come base per le installazioni future selezionando l’immagine dal tab “My Snapshots” durante la creazione:

Dopo aver creato il tuo snapshot, potete usarlo come immagine di base per le nuove installazioni selezionando l’immagine dall’angolo in alto a destra:Risorse aggiuntive e passi successivi

Da qui, il tuo cammino dipende completamente dai tuoi obiettivi. La lista di guide che segue non è esaustiva, ma rappresenta alcuni dei più comuni configurazioni che i utenti utilizzano successivamente:

Conclusione

Al questo punto, dovresti sapere come configurare una solida base per i tuoi nuovi server. Spero che tu abbia anche una buona idea dei prossimi passi. Sentiti libero di esplorare il sito per trovare ulteriori idee che puoi implementare sul tuo server.

Source:
https://www.digitalocean.com/community/tutorials/additional-recommended-steps-for-new-centos-7-servers