Il firewall di Plesk
Il Plesk Firewall e' un'estensione gratuita che fornisce un'interfaccia grafica per gestire le regole di iptables (Linux) o di Windows Firewall (Windows). Permette di aprire o chiudere porte, limitare l'accesso a specifici IP, bloccare paesi e gestire le regole avanzate senza dover scrivere a mano comandi iptables.
Installare l'estensione Firewall
Se non e' già' installata, da pannello andare in Extensions → cercare "Firewall" e cliccare Install. In alternativa da SSH:
plesk installer --select-product-id panel --select-release-current --install-component firewall
Abilitare il firewall
Aprire Tools & Settings → Firewall. La prima volta il firewall e' disabilitato per evitare blocchi accidentali. Plesk propone un set di regole predefinite per i servizi standard: HTTP (80), HTTPS (443), SMTP (25, 465, 587), IMAP (143, 993), POP3 (110, 995), DNS (53), SSH (22) e il pannello (8443, 8447).
Verificare che la regola SSH sia attiva prima di applicare le modifiche: altrimenti si rischia di perdere l'accesso al server.
Aggiungere regole personalizzate
Cliccare Add Custom Rule per creare una regola specifica:
- Name: nome descrittivo (es. "MySQL remoto")
- Match direction: Incoming, Outgoing o entrambi
- Action: Allow, Deny o Reject
- Ports: TCP/UDP e numero porta (es. 3306)
- Source IP: IP o range autorizzati (vuoto = qualsiasi)
Salvare e poi cliccare Apply Changes in cima alla pagina per attivare le regole.
Configurazione tipica per un server produzione
Per un server di produzione con siti web e posta consigliamo:
- SSH (22): limitato agli IP dell'ufficio o VPN aziendale
- Plesk Panel (8443): limitato agli IP amministrativi
- HTTP/HTTPS (80, 443): aperto a tutti
- SMTP/IMAP/POP3: aperti a tutti se il server ospita posta
- MySQL (3306): chiuso o limitato a IP specifici
- ICMP: consentito per ping/diagnostica
Bloccare IP malevoli
In aggiunta al firewall, l'estensione IP Banning (Fail2Ban) blocca automaticamente IP che effettuano troppi tentativi falliti. Il firewall manuale serve invece per bloccare IP specifici noti come malevoli:
- Aggiungere una regola Custom
- Action: Deny
- Source IP: l'IP da bloccare
- Direction: Incoming
- Ports: ALL
Regole in uscita
Per default Plesk permette tutto il traffico in uscita. Su server PCI-DSS o ad alta sicurezza puo' essere utile limitare anche l'outbound:
- Bloccare SMTP in uscita (25) verso destinazioni non autorizzate per evitare invio di spam in caso di compromissione
- Consentire solo connessioni verso repository ufficiali (Plesk, package manager)
Backup delle regole
Prima di applicare modifiche importanti, esportare la configurazione attuale:
iptables-save > /root/iptables-backup-$(date +%F).rules
In caso di problemi:
iptables-restore < /root/iptables-backup-2026-01-15.rules
Recupero da blocco accidentale
Se ci si blocca fuori dal server, l'unico modo per ripristinare l'accesso e' tramite la console del provider (Plesk Plesk Onyx/Obsidian non offre rescue remoto). Da console:
plesk bin firewall --off
Disabilita il firewall e ripristina iptables vuoto.
Geo-blocking
Plesk Firewall di base non supporta blocchi per nazionalita'. Per implementare geo-blocking si usa l'estensione ConfigServer Security & Firewall (CSF), alternativa più' potente al firewall base. CSF supporta:
- Blocco di interi paesi via codice ISO (es. CN, RU)
- Whitelist dinamica via API
- Integrazione con Cloudflare
- Rate limiting per connessione
Regole stateful per servizi attivi
Iptables sotto Plesk usa di default conntrack per il tracking delle connessioni. Le regole RELATED,ESTABLISHED permettono il traffico di ritorno senza dover aprire porte effimere in modo esplicito.
Bloccare ICMP selettivamente
Il ping (ICMP echo) e' utile per diagnostica, ma alcune amministrazioni preferiscono bloccarlo. Plesk Firewall permette di limitare ICMP a rate specifici (es. 1 al secondo) per evitare ping flood senza disabilitare completamente.
Logging del traffico bloccato
Per debugging, abilitare il logging delle connessioni rifiutate:
iptables -I INPUT -j LOG --log-prefix "FW-DROP: " --log-level 4
I log finiscono in /var/log/messages o /var/log/kern.log.
Integrazione con Cloudflare
Se i siti sono dietro Cloudflare, e' buona pratica whitelistare gli IP Cloudflare e bloccare tutto il resto sulle porte 80/443. Plesk include una lista IP Cloudflare aggiornabile via estensione dedicata.
Esempi di regole tipiche
Aprire porta MySQL solo per un'IP fisso:
- Name: MySQL ufficio
- Action: Allow
- Source IP: 1.2.3.4 (IP statico ufficio)
- Ports: TCP 3306
- Direction: Incoming
Bloccare un range IP malevolo:
- Name: Blocco range Russia
- Action: Deny
- Source IP: 1.2.3.0/24
- Ports: ALL
- Direction: Incoming
Salvataggio automatico delle regole al boot
Le regole iptables in memoria si perdono al reboot. Plesk gestisce automaticamente la persistenza tramite il servizio iptables-save all'apply. Per verificare:
systemctl status iptables ls -la /etc/sysconfig/iptables
nftables
Su sistemi più' recenti (RHEL 9, Debian 12) iptables e' un wrapper di nftables. Plesk Firewall continua a funzionare in modo trasparente, ma per modifiche avanzate va usato direttamente nft.
Quando non bastano le regole base
Per scenari avanzati (rate limiting per IP, DDoS mitigation a livello L4, blocco SYN flood) considerare:
- iptables hashlimit module
- fail2ban con jail custom
- CSF + LFD
- Cloudflare in modalita' proxy
Backup automatico delle regole
Schedulare un cron job che salva le regole iptables ogni notte:
0 3 * * * /sbin/iptables-save > /root/iptables-$(date +\%F).rules && find /root -name "iptables-*.rules" -mtime +30 -delete
Hai bisogno di aiuto?
Se vuoi gestione Plesk dal team di G Tech Group, scrivici tramite il modulo di contatto.