# open_basedir agus scaradh do gach suíomh

> open_basedir a shocrú i gceart agus suíomhanna a scaradh: úsáideoir ar leith, linn PHP-FPM ar leith, fillteáin temp ar leith. Le samplachumraíocht Nginx.

Foinse: https://phpsos.de/ga/ratgeber/open-basedir/  
Staid: 25/10/2026  
Soláthraí: PHP SOS, Cabhair éigeandála PHP agus slándáil freastalaí. Cabhair láithreach trí WhatsApp: https://wa.me/491736494914?text=Dia%20duit%2C%20a%20PHP%20SOS%2C%20t%C3%A1%20cabhair%20de%20dh%C3%ADth%20orainn%20len%C3%A1r%20bhfreastala%C3%AD%20PHP.%20Cuideachta%3A%20%E2%80%A6%20Su%C3%ADomh%20gr%C3%A9as%C3%A1in%3A%20%E2%80%A6

**Go achomair:** Teorannaíonn `open_basedir` na comhadlanna ar féidir le PHP rochtain a fháil orthu. Ina aonar níl ann ach bac breise. Ní chruthaítear scaradh éifeachtach do gach suíomh ach amháin nuair a oibríonn na cuid eile le chéile: úsáideoir córais ar leith, linn PHP-FPM ar leith, fillteán temp ar leith agus rochtana bunachair sonraí ar leith. Ansin fanann briseadh isteach ar shuíomh amháin teoranta don suíomh sin.

## Cén fáth a gcinneann scaradh méid an damáiste tar éis PHP2Shell

Ar a lán freastalaithe ritheann roinnt suíomhanna gréasáin taobh le taobh: suíomh na cuideachta, siopa, seansuíomh feachtais, agus i gcás gníomhaireachtaí go minic dosaen tionscadal cliant. Is minic a roinneann siad úsáideoir córais amháin agus próiseas PHP amháin. Má dhéantar briseadh isteach ar cheann acu, tá na cinn eile go léir ar oscailt.

Déanann PHP2Shell an riosca seo inláimhsithe. Ceadaíonn na leochaileachtaí CVE-2026-109618 agus CVE-2026-109619 cód mailíseach a rith gan logáil isteach, beag beann ar an CMS. De réir tuairiscí meán bhí iarracht ionsaithe ann cheana an 17.10.2026, agus lean na paistí an 21.10. Is é an nuashonrú an réiteach. An dtéann ionsaí sa tréimhse roimhe sin i bhfeidhm ar shuíomh amháin nó ar dheich, áfach, cinneann an scaradh é.

Sa dara leochaileacht go háirithe, tá smaoineamh breise ann: de réir thionscadal PHP, is féidir le staid inmheánach iarratais fanacht in oibrí agus iarratas níos déanaí san oibrí céanna é a úsáid. Cinntíonn linnte scartha do gach suíomh nach roinneann suíomhanna oibrithe ar aon nós.

## An rud a dhéanann open_basedir

Le `open_basedir` socraíonn tú liosta comhadlann. Diúltaíonn feidhmeanna comhad PHP ar nós `fopen`, `include` nó `file_get_contents` ansin rochtain ar gach rud lasmuigh den liosta seo. Ní féidir le script a cuireadh isteach comhaid chumraíochta an tsuímh chomharsanaigh a léamh gan stró dá bhrí sin.

Tá na teorainneacha tábhachtach: tarlaíonn an seiceáil laistigh de PHP. Ní bhíonn cláir a thosaítear lasmuigh de PHP faoina réir, agus is féidir le hearráidí san ateangaire é a sheachaint. Mar sin baineann `open_basedir` i gcónaí le feidhmeanna córais faoi ghlas, mar a thuairiscítear sa treoir [disable_functions a úsáid i gceart](https://phpsos.de/ga/ratgeber/disable-functions/), agus thar aon rud eile le scaradh ar leibhéal an chórais oibriúcháin.

## Scaradh do gach suíomh i gceithre shraith

Tógann scaradh iontaofa ar roinnt sraitheanna. Gabhann gach ceann an rud nach ndéanann an ceann roimhe sin.

| Sraith | Beart | Éifeacht |
|---|---|---|
| Córas oibriúcháin | úsáideoir córais ar leith do gach suíomh | Níl comhaid suíomhanna eile inléite |
| Próisis PHP | linn PHP-FPM ar leith le soicéad ar leith | gan oibrí comhroinnte, socruithe ar leith |
| Cumraíocht PHP | `open_basedir`, fillteán tmp agus seisiúin ar leith | bac breise, gan comhaid shealadacha chomhroinnte |
| Sonraí | úsáideoir bunachair sonraí ar leith le cearta ar a bhunachar féin amháin | gan rochtain ar shonraí cliant coimhthíoch |

I gcás riachtanas cosanta ard, mar shampla siopaí le próiseáil íocaíochta nó tairseacha le sonraí sláinte, cuirtear coimeádáin nó freastalaithe scartha leis.

## open_basedir a chumrú sa linn PHP-FPM

Taispeánann an sampla seo a leanas linn do shuíomh le húsáideoir `seite1` ar leith. Oiriúnaigh cosáin agus uimhir an leagain do do chóras.

```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
```

Socraíonn an líne dheireanach beart idirthréimhseach PHP2Shell ó php.net ag an am céanna. Ní oibríonn sé ach ón linn, ó php.ini nó ó chumraíocht an fhreastalaí, ní trí `ini_set()` ná `.user.ini`. Cruthaíonn tú na fillteáin le cearta oiriúnacha:

```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
```

Conas ba cheart do na cearta sa phríomhchomhadlann ghréasáin a bheith, déanann an treoir [Cearta comhad ar an bhfreastalaí gréasáin](https://phpsos.de/ga/ratgeber/dateirechte-webserver/) cur síos air.

## An freastalaí gréasáin a cheangal agus an toradh a sheiceáil

In Nginx pointeálann gach suíomh chuig a shoicéad féin. Ar an gcaoi sin ní thagann aon iarratas isteach i linn suíomh eile.

```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;
    }
}
```

Gheobhaidh tú nótaí breise faoin gcomhcheangal seo ag [Nginx le PHP-FPM a chosaint](https://phpsos.de/ga/server/nginx-php-fpm/). Tar éis an atosaithe seiceálann tú an ritheann na linnte scartha i ndáiríre:

```bash
sudo systemctl restart php8.3-fpm
# Ba cheart gach linn a rith faoina húsáideoir féin
ps -eo user,pid,cmd | grep "[p]hp-fpm: pool"
```

Tástáil ansin gach feidhm den suíomh gréasáin: uaslódálacha, próiseáil íomhánna, taisce, tascanna sceidealaithe. Léiríonn teachtaireachtaí earráide a luann `open_basedir restriction` sa logchomhad earráide cén cosán atá ar iarraidh fós. Cuir leis cosáin amháin a theastaíonn ón bhfeidhmchlár i ndáiríre, agus ná cuir an córas comhad iomlán leis riamh.

> **Leid:**
> Ba cheart do ghníomhaireachtaí le go leor suíomhanna cliant cumraíocht an linne a chothabháil mar theimpléad. Ar an gcaoi sin faigheann gach suíomh nua an scaradh go huathoibríoch, seachas é a athfheistiú níos déanaí. Tá cúlra don chás seo ag [Comhpháirtí slándála do ghníomhaireachtaí](https://phpsos.de/ga/branchen/agenturen-white-label/).

## Constaicí tipiciúla le linn an aistrithe

Is féidir an t-aistriú go linnte scartha a phleanáil, ach tá roinnt gaiscí athfhillteacha ann. Baineann an ceann is minice le leabharlanna comhroinnte: má tá creat nó fillteán le clófhoirne lasmuigh de chomhadlann an tsuímh, ní mór an cosán sin a ghlacadh isteach in `open_basedir` le léamh. Is fearr a leithéid de spleáchais a thabhairt isteach sa tionscadal féin.

Is iad seisiúin an dara gaiscí. Má athraíonn an stóráil, logáiltear gach cuairteoir amach uair amháin, agus cailltear ciseáin siopadóireachta reatha. Pleanáil an t-aistriú i bhfuinneog ciúin mar sin agus fógair é go hinmheánach.

Tríú, ritheann tascanna sceidealaithe go minic tríd an líne ordaithe agus mar sin faoi úsáideoir eile ná an suíomh gréasáin. Seiceáil cronjobs agus scuaineanna agus lig dóibh rith faoin úsáideoir nua suímh, seachas sin cruthaítear comhaid le húinéir mícheart nach bhfuil cead ag PHP iad a athrú níos déanaí.

Ar deireadh, ba cheart teorainneacha ar leith le haghaidh próiseas agus cuimhne a bheith ag gach linn. Suíomh a thagann faoi ualach nó a ionsaítear, ní féidir leis na cinn eile a chur ar a nglúine mar sin.

## Conas a chabhraíonn PHP SOS go nithiúil?

- Faighimid amach cé na suíomhanna a roinneann úsáideoirí, próisis agus bunachair sonraí inniu.
- Cuirimid úsáideoirí, linnte, fillteáin temp agus rochtana bunachair sonraí ar leith ar bun do gach suíomh, gan na feidhmchláir a athrú.
- Tástálaimid gach suíomh tar éis an aistrithe agus ceartaímid cosáin atá ar iarraidh go spriocdhírithe.
- Doiciméadaímid an scaradh mar theimpléad do thionscadail amach anseo.

Conas a oireann sé sin do choincheap iomlán, déanann an tseirbhís [Cruatú freastalaí do fhreastalaithe gréasáin PHP](https://phpsos.de/ga/leistungen/server-haertung/) cur síos air.


## Ceisteanna coitianta

**An leor open_basedir chun suíomhanna a scaradh óna chéile?**  
Ní leor. Is bac breise laistigh de PHP é open_basedir, ní scaradh crua. Ní bhíonn an scaradh iontaofa go dtí go mbíonn úsáideoirí córais agus linnte ar leith ann do gach suíomh, nuair atá riachtanas cosanta níos airde le coimeádáin nó freastalaithe scartha.

**Cén fáth nach n-oibríonn uaslódálacha a thuilleadh tar éis open_basedir a shocrú?**  
De ghnáth tá an fillteán do chomhaid shealadacha ar iarraidh ón liosta. Cruthaigh fillteán tmp ar leith do gach suíomh, cuir isteach in open_basedir é agus socraigh upload_tmp_dir agus sys_temp_dir ar an bhfillteán sin.

**An féidir le feidhmchlár open_basedir a chealú é féin?**  
Ní féidir le feidhmchlár an socrú a dhéanamh níos teoranta le linn ama rite, ní féidir leis é a scaoileadh. Socraigh open_basedir trí php_admin_value sa linn mar sin féin, ionas go bhfuil an luach socraithe go soiléir.

**An féidir scaradh a dhéanamh le hóstáil roinnte freisin?**  
Braitheann sé ar an soláthraí óstála. Scarann a lán tairiscintí cliaint trí úsáideoirí agus próisis PHP ar leith. Fiafraigh conas a cuireadh an scaradh i bhfeidhm, go háirithe nuair a bhíonn roinnt de do shuíomhanna gréasáin i bpacáiste amháin.

## Foinsí

- [php.net: tuarascálacha slándála](https://www.php.net/)
- [OWASP Cheat Sheet Series](https://cheatsheetseries.owasp.org/)
- [BSI IT-Grundschutz (bonnchosaint TF)](https://www.bsi.bund.de/DE/Themen/Unternehmen-und-Organisationen/Standards-und-Zertifizierung/IT-Grundschutz/it-grundschutz_node.html)
