In questo articolo, ti mostrerò come aprire la porta 80 e bloccare tutte le altre porte su CentOS 7 con firewalld. Iniziamo.
Installazione di un server Web
In questa sezione, ti mostrerò come installare un server web su CentOS 7. Ho incluso questa sezione in modo che tu possa avere un'esperienza di vita reale su ciò di cui sto parlando.
Il software per server Web più utilizzato è Apache. Apache è disponibile nel repository ufficiale dei pacchetti di CentOS 7.
Per installare il server Web Apache, eseguire il seguente comando:
$sudo yum installahttpd
Premi 'y' e poi premi per continuare.
Il server web Apache dovrebbe essere installato.
Ora esegui il seguente comando per verificare se il server HTTP Apache è in esecuzione o meno:
$sudostato systemctl httpdCome puoi vedere dallo screenshot qui sotto, il server HTTP Apache non è in esecuzione.
Puoi avviare il server HTTP Apache con il seguente comando:
$sudosystemctl avvia httpdVorrai che il server Apache HTTP si avvii automaticamente all'avvio del sistema. Puoi aggiungere il server HTTP Apache all'avvio con il seguente comando:
$sudosystemctlabilitarehttpdIl server HTTP Apache viene aggiunto all'avvio.
Ora apri un browser web e vai su http://localhost
Dovresti vedere la pagina seguente come mostrato nello screenshot qui sotto.
Verifica delle porte aperte con nmap
Per prima cosa controlla l'indirizzo IP del tuo server CentOS 7 con il seguente comando:
$ipaCome puoi vedere dallo screenshot qui sotto, l'indirizzo IP del mio server CentOS 7 è 192.168.10.97
Puoi controllare tutte le porte aperte con nmap utility da un altro computer come segue:
$nmap -ns192.168.10.97Come puoi vedere, in questo momento, solo la porta 22 è aperta. Quello che ci interessa è aprire solo la porta 80 e chiuderne altre.
Apertura della porta 80 e chiusura delle altre
Prima controlla tutti i servizi consentiti con il seguente comando:
$sudofirewall-cmd--list-allCome puoi vedere, ho i servizi dhcpv6-client e ssh consentiti dall'esterno. Potresti avere più o meno servizi consentiti.
Ora devi disabilitarli uno per uno.
Puoi rimuovere il servizio ssh con il seguente comando:
$sudofirewall-cmd--rimuovi-servizio=ssh --permanentePuoi rimuovere il servizio dhcpv6-client con il seguente comando:
$sudofirewall-cmd--rimuovi-servizio=dhcpv6-client--permanenteOra aggiungi il servizio HTTP o la porta 80 con il seguente comando:
$sudofirewall-cmd--aggiungi-servizio= http--permanenteAl termine, riavvia firewalld con il seguente comando:
$sudofirewall-cmd--ricaricareOra, se controlli di nuovo i servizi firewalld:
$sudofirewall-cmd--list-allDovresti vedere solo http servizio consentito come indicato nello screenshot qui sotto.
Ora puoi eseguire una scansione delle porte con nmap da un altro computer:
$sudo nmap -ns192.168.10.97Dovresti essere in grado di vedere solo la porta 80 aperta come mostrato nello screenshot qui sotto.
Puoi anche verificare se puoi accedere al server web se apri un browser e digiti l'indirizzo IP del server web.
Posso accedere al server web da un browser come puoi vedere dallo screenshot qui sotto.
Quindi è così che apri la porta 80 e blocchi tutte le altre porte su CentOS 7. Grazie per aver letto questo articolo.