Introduzione
Apache è una popolare applicazione per server Web basata su Linux. Fa parte dello stack LAMP (Linux, Apache, MySQL, PHP) che alimenta gran parte di Internet.
Questa guida ti mostrerà come installare Apache su CentOS 8.
Prerequisiti
- Un sistema che esegue CentOS 8 Linux
- Accesso a una finestra del terminale/riga di comando (Ctrl –Alt –F2 )
- Un account utente con privilegi sudo o root
Installazione del server Web Apache su CentOS 8
Fase 1:aggiorna il repository del software
Apri una finestra di terminale e aggiorna gli elenchi dei pacchetti del repository immettendo quanto segue:
sudo yum update
Fase 2:installa Apache
Ora puoi installare Apache con il comando:
sudo yum –y install httpd
Fase 3:avvia e gestisci il server Web Apache
Apache è un servizio che viene eseguito in background.
Avvia il servizio Apache inserendo quanto segue:
sudo systemctl start httpd
Il sistema non restituisce un output se il comando viene eseguito correttamente.
Per configurare Apache per l'esecuzione all'avvio:
sudo systemctl enable httpd
Per verificare lo stato del servizio Apache:
sudo systemctl status httpd
Per ricaricare Apache (ricarica i file di configurazione per applicare le modifiche):
sudo systemctl reload httpd
Per riavviare l'intero servizio Apache:
sudo systemctl restart httpd
Per fermare Apache:
sudo systemctl stop httpd
Per disabilitare Apache all'avvio del sistema:
sudo systemctl disable httpd
Fase 4:prova il server Web Apache
Il lavoro del tuo software Apache è quello di servire pagine web su una rete. La tua nuova installazione di Apache ha una pagina di test predefinita, ma puoi anche creare una pagina di test personalizzata.
Controlla la pagina di prova di Apache predefinita
In una finestra del terminale, trova l'indirizzo IP del tuo sistema con quanto segue:
hostname -I | awk '{print $1}'
Se hai familiarità con ip addr show
o ifconfig, puoi usare quelli invece.
Aprire un browser Web e digitare l'indirizzo IP visualizzato nell'output. Il sistema dovrebbe mostrare la pagina di prova del server HTTP Apache, come mostrato nell'immagine seguente:
Se il tuo sistema non ha un'interfaccia grafica, usa il curl
comando:
curl [your_system's_IP_address]:80
Facoltativo:crea un file HTML da testare
Se, per qualche motivo, hai bisogno o disponi di una pagina HTML personalizzata che desideri utilizzare come pagina di prova, procedi come segue:
In una finestra di terminale, crea un nuovo file di indice HTML:
echo My Apache Web Server on CentOS 8 > /var/www/html/index.html
Modifica il file a tuo piacimento e salvalo.
Ora puoi seguire i passaggi della sezione precedente (controlla il tuo indirizzo IP e cercalo in un browser web oppure usa il curl
comando).
Il tuo server Apache funziona correttamente se mostra la pagina personalizzata specificata.
Passaggio 5:regola il firewall per Apache
Il firewall sul tuo sistema blocca il traffico su porte diverse. Ogni porta ha un numero e diversi tipi di traffico utilizzano porte diverse. Per il tuo server web, dovrai consentire il traffico HTTP e HTTPS sulle porte 80 e 443 (rispettivamente).
In un terminale, inserisci quanto segue:
sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
Riavvia firewalld:
sudo firewall-cmd --reload
Ricontrolla per assicurarti che il tuo firewall sia configurato correttamente:
sudo firewall-cmd --list-all | grep services
Dovresti vedere http e https nell'elenco dei servizi consentiti.
Apache offre anche ModSecurity , un modulo plug-in che funge da firewall. Puoi installare e configurare ModSecurity come livello di sicurezza aggiuntivo, che ti aiuta a monitorare il traffico e rispondere a eventuali irregolarità.
File e directory di Apache
Apache è controllato applicando direttive nei file di configurazione:
- /etc/httpd/conf/httpd.conf – File di configurazione principale di Apache
- /etc/httpd/ – Posizione di tutti i file di configurazione
- /etc/httpd/conf.d/ – Tutti i file di configurazione in questa directory sono inclusi nel file di configurazione principale
- /etc/httpd/conf.modules.d/ – Posizione dei file di configurazione del modulo Apache
Controlla diligentemente i file di registro di Apache per monitorare il tuo server web:
- /var/log/httpd/ – Posizione dei file di registro di Apache
- /var/log/httpd/access_log – Mostra un registro dei sistemi che hanno effettuato l'accesso al server
- /var/log/httpd/error_log – Mostra un elenco di tutti gli errori riscontrati da Apache
Designa una directory in cui archiviare i file per il tuo sito web. Utilizzare i file di configurazione per puntare alla directory scelta. Alcuni luoghi tipici includono:
- /home/nomeutente/mio_sito web
- /var/www/mio_sito_web
- /var/www/html/mio_sito_web
- /opt/il mio_sito web