# Firewall għal servers tal-web: iftaħ biss il-ports meħtieġa

> Firewall għal servers tal-web: ivverifika l-ports miftuħa, iftaħ biss 80 u 443, illimita SSH u l-konnessjonijiet ħerġin. B'nftables u ufw.

Sors: https://phpsos.de/mt/blog/firewall-fuer-webserver/  
Stat: 25/10/2026  
Fornitur: PHP SOS, Għajnuna ta' emerġenza għal PHP u sigurtà tas-server. Għajnuna immedjata fuq WhatsApp: https://wa.me/491736494914?text=Bongu%20PHP%20SOS%2C%20g%C4%A7andna%20b%C5%BConn%20g%C4%A7ajnuna%20bis-server%20tal-PHP%20tag%C4%A7na.%20Kumpanija%3A%20%E2%80%A6%20Websajt%3A%20%E2%80%A6

**Fil-qosor:** Firewall għal servers tal-web tippermetti dieħla biss TCP 80 u 443, ma' HTTP/3 addizzjonalment UDP 443, u SSH biss minn netwerks magħrufa. Kull ma hu ieħor jiġi skartat: databases, caches, PHP-FPM u interfaces tal-amministrazzjoni ma jappartjenux fl-internet. Ivverifika l-ewwel b'`ss -tulpn` x'jisma', ibni imbagħad sett ta' regoli bl-istandard „skarta” u ittestja r-riżultat minn barra. Li tillimita l-konnessjonijiet ħerġin tillimita addizzjonalment il-konsegwenzi ta' dħul.

## Il-bibien minsija maġenb il-bieb tad-dar

F'PHP2Shell il-ħarsa kienet fuq is-server tal-web innifsu, fuq il-ports 80 u 443. Dawn iridu jkunu miftuħa, inkella ma jkun hemm l-ebda websajt. Waqt inventarji wara vulnerabbiltajiet bħal dawn, madankollu, spiss tidher xi ħaġa oħra: maġenb il-bieb tad-dar hemm bibien oħra miftuħa. Database tisma' fuq l-interfaces tan-netwerk kollha, pool PHP-FPM fuq port 9000, servizz tal-cache mingħajr password, interface tal-amministrazzjoni mill-fażi tal-installazzjoni.

Kull wieħed minn dawn il-bibien huwa superfiċje ta' attakk proprja b'vulnerabbiltajiet proprji. Firewall li tippermetti biss dak meħtieġ tagħlaqhom b'ftit regoli. Din hija waħda mill-miżuri l-aktar effettivi meta tassigura server proprju, kif tiddeskrivi wkoll il-paġna [Assigura root servers u vServers stess](https://phpsos.de/mt/server/root-server-vserver/).

## X'jappartjeni miftuħ, x'ma jappartjenix?

Il-prinċipju huwa lista ta' permess: kollox magħluq, u biss servizzi ċċarati b'mod konxju huma aċċessibbli. Il-ħarsa ġenerali li ġejja tgħin fil-klassifikazzjoni.

| Servizz | Port tipiku | Aċċessibbli minn barra? |
|---|---|---|
| HTTP u HTTPS | TCP 80, TCP 443 | iva |
| HTTP/3 (QUIC) | UDP 443 | biss jekk jintuża |
| SSH | TCP 22 | biss minn netwerks magħrufa jew permezz ta' VPN |
| Panel tal-hosting | skont il-prodott | biss minn netwerks magħrufa |
| MySQL/MariaDB, PostgreSQL | TCP 3306, TCP 5432 | le |
| Redis, Memcached | TCP 6379, TCP 11211 | le |
| PHP-FPM | TCP 9000 jew socket Unix | le, aħjar biss socket |
| Mail server | TCP 25, 465, 587, 993 | biss jekk is-server jirċievi jew jipprovdi emails |

Servizz li m'għandux għalfejn jilħaq lejn barra għandu addizzjonalment jisma' biss fuq `127.0.0.1` jew socket Unix. Allura jibqa' inaċċessibbli anke f'ħsara tal-firewall. Għal aċċessi tal-amministrazzjoni jaqblu permessi ta' IP jew VPN; dettalji jinsabu fl-artikolu [Aħbi ż-żoni tal-amministrazzjoni b'IP, VPN jew protezzjoni addizzjonali](https://phpsos.de/mt/blog/admin-bereiche-abschirmen/).

## Pass 1: Iddetermina x'jisma'

Qabel ma tikteb regoli, ikseb ħarsa ġenerali. Il-kmandi li ġejjin jaqraw biss:

```bash
# Il-ports TCP u UDP kollha li jisimgħu bil-proċess
sudo ss -tulpn
# Sett attwali ta' regoli ta' nftables
sudo nft list ruleset
# Status ta' ufw, jekk jintuża
sudo ufw status verbose
```

Oqgħod attent fl-output ta' `ss` għall-indirizz quddiem il-port. `0.0.0.0` jew `[::]` ifisser: is-servizz jisma' fuq l-interfaces kollha. `127.0.0.1` ifisser: biss lokalment. Innota għal kull servizz jekk irid ikun aċċessibbli minn barra. Din il-lista hija fl-istess ħin biċċa mill-inventarju tas-server tiegħek.

## Firewall għal servers tal-web b'nftables

nftables huwa l-packet filter attwali taħt Linux. Is-sett ta' regoli li ġej jissegwi l-eżempju fil-wiki uffiċjali ta' nftables u jżid permess għal SSH biss minn netwerk tal-amministrazzjoni. L-indirizzi huma eżempji ta' dokumentazzjoni u jridu jiġu sostitwiti.

```nft
#!/usr/sbin/nft -f
flush ruleset

table inet filter {
    set verwaltung_v4 {
        type ipv4_addr
        flags interval
        elements = { 203.0.113.0/28 }
    }

    chain input {
        type filter hook input priority 0; policy drop;

        ct state vmap { established : accept, related : accept, invalid : drop }
        iifname lo accept

        # IPv6 jeħtieġ skoperta tal-ġirien
        icmpv6 type { nd-neighbor-solicit, nd-router-advert, nd-neighbor-advert } accept
        icmp type echo-request limit rate 5/second accept
        icmpv6 type echo-request limit rate 5/second accept

        # Websajt
        tcp dport { 80, 443 } accept
        # biss ma' HTTP/3:
        # udp dport 443 accept

        # SSH biss min-netwerk tal-amministrazzjoni
        ip saddr @verwaltung_v4 tcp dport 22 accept
    }

    chain forward {
        type filter hook forward priority 0; policy drop;
    }
}
```

Ivverifika s-sett ta' regoli qabel it-tagħbija b'`nft -c -f /etc/nftables.conf`. L-ewwel linja `flush ruleset` tħassar ir-regoli eżistenti kollha, anke dawk li Docker jew Fail2ban daħħlu. Fuq servers b'Docker jew servizzi oħra li jissettjaw regoli proprji, adatta għalhekk is-sett ta' regoli, minflok ma tissostitwih b'mod ġenerali. Kif Fail2ban jaħdem mal-firewall jinsab taħt [Stabbilixxi Fail2ban għal servers tal-web](https://phpsos.de/mt/blog/fail2ban-fuer-webserver/).

Min jippreferi aktar sempliċi juża taħt Ubuntu `ufw`. Importanti hija l-ordni: l-ewwel il-permess ta' SSH, imbagħad xegħel.

```bash
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow proto tcp from 203.0.113.0/28 to any port 22
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw enable
sudo ufw status verbose
```

> **Importanti:**
> Ibdel ir-regoli tal-firewall fuq servers remoti biss b'toroq ta' aċċess ieħor, pereżempju l-console tal-fornitur tiegħek. Regola SSH żbaljata inkella teskludi lilek innifsek.

## Konnessjonijiet ħerġin: in-nofs imqiegħed taħt il-valur

Il-biċċa l-kbira tal-firewalls jippermettu kollox lejn barra. Għal server tal-web dan huwa ġeneruż. Wara dħul l-attakkanti jużaw konnessjonijiet ħerġin biex jgħabbu għodod, jiġbdu data jew jirċievu kmandi. Proċessi tas-server tal-web jew ta' PHP li jibnu konnessjonijiet mhux mistennija għalhekk jitqiesu sinjal ta' twissija.

Limitazzjoni tal-konnessjonijiet ħerġin hija aktar bi sforz, għax kull konnessjoni leġittima trid tkun magħrufa: sorsi tal-pakketti għall-aġġornamenti, servizzi tal-pagament, interfaces, il-bgħit tal-mail, servers tal-ħin. Triq pragmatika hija li l-ewwel jiġu rreġistrati l-konnessjonijiet ħerġin, imbagħad tinbena lista ta' permess u biss wara jinbloċċaw. Kif tivverifika l-konnessjonijiet eżistenti tiddeskrivih [Ivverifika l-konnessjonijiet ħerġin ta' server](https://phpsos.de/mt/blog/ausgehende-verbindungen-pruefen/); liema traċċi oħra jindikaw dħul jinsab taħt [Diġà kompromess?](https://phpsos.de/mt/php2shell/bin-ich-gehackt-anzeichen/).

Fl-aħħar ittestja minn barra, minn kompjuter ieħor u biss kontra s-sistemi tiegħek stess, liema ports huma verament aċċessibbli. Dan it-test biss juri jekk Docker, il-firewall tal-fornitur u r-regoli tas-server flimkien jagħtux l-istampa mixtieqa.

## Konklużjoni: ftit regoli, effett kbir

Firewall għal server tal-web m'għandhiex tkun kumplikata. Ports tal-web miftuħa, amministrazzjoni biss minn netwerks magħrufa, kull ma hu ieħor skartat: b'dawn ir-regoli bażiċi databases, caches u servizzi minsija jisparixxu mill-internet. Din hija waħda mill-miżuri bl-aħjar proporzjon bejn sforz u benefiċċju.

Kontra vulnerabbiltajiet fis-server tal-web jew f'PHP innifsu l-firewall ma tgħinx, għax eżattament dawn il-ports iridu jibqgħu miftuħa. Is-saħħa tagħha tinsab fit-tnaqqis tas-superfiċje l-oħra ta' attakk u, b'limitazzjoni tal-konnessjonijiet ħerġin, fil-kontroll tal-konsegwenzi ta' dħul.

Id-deċiżiva hija l-manutenzjoni. Kull servizz ġdid, kull container u kull bidla għand il-fornitur jista' jċaqlaq l-istampa. Irrepeti l-verifika minn barra għalhekk wara kull bidla akbar u f'intervalli fissi, pereżempju darba kull kwart tas-sena.

## Kif tgħin PHP SOS b'mod konkret?

- **Nieħdu inventarju:** niġbru s-servizzi kollha li jisimgħu u nivverifikaw minn barra x'inhu verament aċċessibbli.
- **Nibnu s-sett ta' regoli:** noħolqu lista ta' permess għal konnessjonijiet dieħlin u, fejn sensibbli, ħerġin, ikkoordinata ma' Docker, Fail2ban u l-firewall tal-fornitur.
- **Nibdlu b'mod sikur:** nimplimentaw il-bidliet b'tieni triq ta' aċċess u pjan ta' rtirar.
- **Niddokumentaw:** ports, permessi u raġunijiet inżommuhom bħala parti mit-[Tisħiħ tas-server](https://phpsos.de/mt/leistungen/server-haertung/).


## Mistoqsijiet frekwenti

**Liema ports jeħtieġ server tal-web?**  
Għall-viżitaturi bħala regola biss TCP 80 u 443, ma' HTTP/3 addizzjonalment UDP 443. SSH u interfaces tal-amministrazzjoni għandhom ikunu aċċessibbli biss minn netwerks magħrufa jew permezz ta' VPN. Ports tad-database, tal-cache u ta' PHP-FPM ma jappartjenux fl-internet.

**Firewall tipproteġi minn PHP2Shell?**  
Le. PHP2Shell jiġi sfruttat permezz tas-server tal-web, jiġifieri permezz tal-ports li jridu jkunu miftuħa. Il-firewall, madankollu, tnaqqas is-superfiċje l-oħra ta' attakk, u limitazzjoni tal-konnessjonijiet ħerġin tista' tikkontrolla l-konsegwenzi ta' dħul.

**Għaliex ufw juri ports bħala magħluqa li madankollu huma aċċessibbli?**  
Każ magħruf huma containers Docker: Docker jikteb ports ippubblikati direttament fir-regoli tal-packet filter, madwar ufw. Ivverifika għalhekk il-ports miftuħa dejjem addizzjonalment minn barra.

**Il-firewall tal-fornitur tal-hosting tiegħi hija biżżejjed?**  
Firewall tal-fornitur quddiem is-server hija saff tajjeb ieħor. Imma ma tissostitwixxix il-firewall fuq is-server, għax ma taħdimx f'każ ta' żball fil-konfigurazzjoni tal-fornitur jew ma' konnessjonijiet interni. L-aħjar tuża t-tnejn bl-istess regoli bażiċi.

## Sorsi

- [nftables-Wiki: sett sempliċi ta' regoli għal server](https://wiki.nftables.org/wiki-nftables/index.php/Simple_ruleset_for_a_server)
- [Ubuntu Server: Firewall (ufw)](https://ubuntu.com/server/docs/how-to/security/firewalls/)
- [BSI IT-Grundschutz (Ġermanja)](https://www.bsi.bund.de/DE/Themen/Unternehmen-und-Organisationen/Standards-und-Zertifizierung/IT-Grundschutz/it-grundschutz_node.html)
- [CIS Benchmarks](https://www.cisecurity.org/cis-benchmarks)
