# open_basedir u iżolament għal kull websajt

> Ikkonfiguraw open_basedir sewwa u firdu l-websajts: utent proprju, pool PHP-FPM proprju, folders tmp proprji. B'eżempju ta' konfigurazzjoni għal Nginx.

Sors: https://phpsos.de/mt/ratgeber/open-basedir/  
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:** `open_basedir` jillimita d-direttorji li PHP jista' jaċċessa. Waħdu huwa biss ostaklu addizzjonali. Iżolament effettiv għal kull websajt jinħoloq biss bl-interazzjoni: utent proprju tas-sistema, pool PHP-FPM proprju, folder tmp proprju u aċċessi proprji għad-database. Imbagħad dħul f'websajt jibqa' llimitat għal dik il-websajt.

## Għaliex wara PHP2Shell l-iżolament jiddeċiedi dwar il-ħsara

Fuq ħafna servers jaħdmu diversi websajts maġenb xulxin: il-paġna tal-kumpanija, ħanut, paġna qadima ta' kampanja, għand l-aġenziji spiss għexieren ta' proġetti tal-klijenti. Ħafna drabi jaqsmu utent tas-sistema u proċess ta' PHP. Jekk waħda minnhom tiġi kompromessa, l-oħrajn kollha jkunu esposti.

PHP2Shell jagħmel dan ir-riskju tanġibbli. Il-vulnerabbiltajiet CVE-2026-109618 u CVE-2026-109619 jippermettu l-eżekuzzjoni ta' kodiċi malizzjuż mingħajr login, indipendentement mis-CMS. Skont rapporti tal-midja kien hemm diġà fis-17/10/2026 l-ewwel tentattiv ta' attakk, u l-patches ġew fil-21/10. Ir-rimedju huwa l-aġġornament. Jekk attakk fiż-żmien ta' qabel jolqotx websajt waħda jew għaxra, madankollu, jiddeċiedi l-iżolament.

Speċjalment mat-tieni vulnerabbiltà jiżdied ħsieb ieħor: skont il-proġett PHP, stat intern ta' talba jista' jibqa' f'worker u jintuża minn talba aktar tard fl-istess worker. Pools separati għal kull websajt jiżguraw li l-websajts, ukoll hekk, ma jaqsmux workers.

## X'jagħmel open_basedir

B'`open_basedir` tiffissaw lista ta' direttorji. Funzjonijiet tal-fajls ta' PHP bħal `fopen`, `include` jew `file_get_contents` imbagħad jirrifjutaw l-aċċess għal kull ħaġa barra minn din il-lista. Skript introdott għalhekk ma jistax faċilment jaqra l-fajls ta' konfigurazzjoni tal-websajt ġirien.

Il-limiti huma importanti: il-verifika sseħħ ġewwa PHP. Programmi mibdija barra minn PHP ma jkunux soġġetti għaliha, u żbalji fl-interpretatur jistgħu jiċċirkumvenjawha. Għalhekk `open_basedir` dejjem jappartjeni flimkien ma' funzjonijiet tas-sistema msakkra, kif deskritt fil-gwida [Kif tużaw disable_functions sewwa](https://phpsos.de/mt/ratgeber/disable-functions/), u fuq kollox ma' separazzjoni fil-livell tas-sistema operattiva.

## Iżolament għal kull websajt f'erba' saffi

Separazzjoni solida tinbena fuq diversi saffi. Kull wieħed jaqbad dak li s-saff ta' qablu ma jilħaqx.

| Saff | Miżura | Effett |
|---|---|---|
| Sistema operattiva | utent proprju tas-sistema għal kull websajt | Il-fajls ta' websajts oħra ma jistgħux jinqraw |
| Proċessi ta' PHP | pool PHP-FPM proprju b'socket proprju | l-ebda worker komuni, issettjar proprju |
| Konfigurazzjoni ta' PHP | `open_basedir`, folders tmp u tas-session proprji | ostaklu addizzjonali, l-ebda fajls temporanji komuni |
| Data | utent proprju tad-database b'drittijiet biss fuq id-database proprja | l-ebda aċċess għal data barranija tal-klijenti |

Meta l-ħtieġa ta' protezzjoni hija għolja, pereżempju għal ħwienet bl-ipproċessar tal-ħlasijiet jew portals b'data tas-saħħa, jiżdiedu containers jew servers separati.

## Kif tikkonfiguraw open_basedir fil-pool PHP-FPM

L-eżempju li ġej juri pool għal websajt b'utent proprju `seite1`. Adattaw il-mogħdijiet u n-numru tal-verżjoni għas-sistema tagħkom.

```ini
; /etc/php/8.3/fpm/pool.d/seite1.conf
[seite1]
user = seite1
group = seite1
listen = /run/php/seite1.sock
listen.owner = www-data
listen.group = www-data
listen.mode = 0660

pm = ondemand
pm.max_children = 10

php_admin_value[open_basedir] = /var/www/seite1/:/var/www/seite1-tmp/
php_admin_value[upload_tmp_dir] = /var/www/seite1-tmp/
php_admin_value[sys_temp_dir] = /var/www/seite1-tmp/
php_admin_value[session.save_path] = /var/www/seite1-tmp/sessions
php_admin_value[error_log] = /var/log/php/seite1.error.log
php_admin_flag[session.upload_progress.enabled] = off
```

L-aħħar linja tapplika fl-istess ħin il-miżura temporanja ta' php.net dwar PHP2Shell. Taħdem biss mill-pool, mill-php.ini jew mill-konfigurazzjoni tas-server, mhux permezz ta' `ini_set()` jew `.user.ini`. Il-folders toħolquhom b'drittijiet xierqa:

```bash
sudo useradd --system --home /var/www/seite1 --shell /usr/sbin/nologin seite1
sudo mkdir -p /var/www/seite1-tmp/sessions
sudo chown -R seite1:seite1 /var/www/seite1-tmp
sudo chmod 700 /var/www/seite1-tmp
```

Kif għandhom jidhru d-drittijiet fid-direttorju attwali tal-web tiddeskrivi l-gwida [Drittijiet tal-fajls fuq is-server tal-web](https://phpsos.de/mt/ratgeber/dateirechte-webserver/).

## Qabbdu s-server tal-web u ivverifikaw ir-riżultat

F'Nginx kull websajt tindika lejn is-socket proprju tagħha. B'hekk l-ebda talba ma tispiċċa fil-pool ta' websajt oħra.

```nginx
server {
    server_name seite1.example;
    root /var/www/seite1/public;

    location ~ \.php$ {
        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_pass unix:/run/php/seite1.sock;
    }
}
```

Aktar tagħrif dwar din il-kombinazzjoni issibu taħt [Kif tassiguraw Nginx ma' PHP-FPM](https://phpsos.de/mt/server/nginx-php-fpm/). Wara r-restart ivverifikaw jekk il-pools verament jaħdmu separati:

```bash
sudo systemctl restart php8.3-fpm
# Kull pool għandu jaħdem taħt l-utent proprju tiegħu
ps -eo user,pid,cmd | grep "[p]hp-fpm: pool"
```

Wara ttestjaw il-funzjonijiet kollha tal-websajt: uploads, ipproċessar tal-immaġini, caches, kompiti skedati. Messaġġi ta' żball bl-indikazzjoni ta' `open_basedir restriction` fil-log tal-iżbalji juru liema mogħdija għadha nieqsa. Żidu biss mogħdijiet li l-applikazzjoni verament teħtieġ, u qatt is-sistema kollha tal-fajls.

> **Suġġeriment:**
> L-aġenziji b'ħafna paġni tal-klijenti għandhom iżommu l-konfigurazzjoni tal-pool bħala mudell. Hekk kull websajt ġdida tikseb is-separazzjoni awtomatikament, minflok ma jkollha tiġi miżjuda aktar tard. Sfond għal dan il-każ jinsab taħt [Sieħeb tas-sigurtà għall-aġenziji](https://phpsos.de/mt/branchen/agenturen-white-label/).

## Ostakli tipiċi waqt il-migrazzjoni

Il-migrazzjoni għal pools separati tista' tiġi ppjanata, imma għandha xi nases li jerġgħu jidhru. L-aktar komuni tolqot libreriji maqsuma: jekk pereżempju framework jew folder b'tipi ta' ittri jinsab barra mid-direttorju tal-websajt, din il-mogħdija trid tiddaħħal għall-qari f'`open_basedir`. Aħjar huwa li tinġiebu dawn id-dipendenzi fil-proġett innifsu.

It-tieni nassa huma s-sessions. Jekk il-post tal-ħażna jinbidel, il-viżitaturi kollha jiġu mneħħija darba mill-login, u l-baskits li għaddejjin jintilfu. Ippjanaw għalhekk il-migrazzjoni f'ħin kwiet u ħabbruha internament.

It-tielet, kompiti skedati ħafna drabi jaħdmu mil-linja tal-kmand u għalhekk taħt utent differenti mill-websajt. Ivverifikaw il-cronjobs u l-kjuwijiet u ħallu jaħdmu taħt l-utent il-ġdid tal-websajt, inkella jinħolqu fajls b'sid żbaljat li PHP aktar tard ma jistax jibdel.

Fl-aħħar, kull pool għandu jkollu limiti proprji għal proċessi u memorja. Websajt li tkun taħt tagħbija jew attakk ma tistax hekk iġġiegħel lill-oħrajn jinżlu mhux jaħdmu magħha.

## Kif tgħin PHP SOS b'mod konkret?

- Nirreġistraw liema websajts illum jaqsmu utenti, proċessi u databases.
- Niffissaw għal kull websajt utenti, pools, folders tmp u aċċessi tad-database proprji, mingħajr ma nibdlu l-applikazzjonijiet.
- Nittestjaw kull websajt wara l-migrazzjoni u nirranġaw mogħdijiet neqsin b'mod immirat.
- Niddokumentaw is-separazzjoni bħala mudell għal proġetti futuri.

Kif dan jidħol f'kunċett sħiħ jiddeskrivih is-servizz [Tisħiħ tas-server għal servers tal-web bi PHP](https://phpsos.de/mt/leistungen/server-haertung/).


## Mistoqsijiet frekwenti

**open_basedir huwa biżżejjed biex jifred il-websajts minn xulxin?**  
Le. open_basedir huwa ostaklu addizzjonali ġewwa PHP, mhux separazzjoni iebsa. L-iżolament isir affidabbli biss b'utenti tas-sistema u pools proprji għal kull websajt, u b'ħtieġa ta' protezzjoni ogħla b'containers jew servers separati.

**Għaliex l-uploads ma jibqgħux jaħdmu wara li nissettja open_basedir?**  
Ġeneralment il-folder għal fajls temporanji jonqos mil-lista. Oħolqu folder tmp proprju għal kull websajt, daħħluh f'open_basedir u ffissaw upload_tmp_dir u sys_temp_dir fuq dan il-folder.

**Applikazzjoni tista' tneħħi open_basedir waħedha?**  
Applikazzjoni tista' waqt it-tħaddim biss tkompli tillimita l-issettjar, mhux tarħih. Madankollu ffissaw open_basedir permezz ta' php_admin_value fil-pool, biex il-valur ikun definit b'mod ċar.

**L-iżolament huwa possibbli wkoll f'shared hosting?**  
Dan jiddependi mill-hoster. Ħafna offerti jifirdu l-klijenti permezz ta' utenti u proċessi ta' PHP proprji. Staqsu kif hija implimentata s-separazzjoni, speċjalment jekk diversi websajts tagħkom jinsabu f'pakkett wieħed.

## Sorsi

- [php.net: Avviżi tas-sigurtà](https://www.php.net/)
- [OWASP Cheat Sheet Series](https://cheatsheetseries.owasp.org/)
- [BSI IT-Grundschutz](https://www.bsi.bund.de/DE/Themen/Unternehmen-und-Organisationen/Standards-und-Zertifizierung/IT-Grundschutz/it-grundschutz_node.html)
