FreeBSD börtön

Az oldal jelenlegi verzióját még nem ellenőrizték tapasztalt közreműködők, és jelentősen eltérhet a 2015. június 28-án áttekintett verziótól ; az ellenőrzésekhez 10 szerkesztés szükséges .

A FreeBSD Jail ( eng.  jail - "börtön") egy virtualizációs mechanizmus a FreeBSD rendszerben , amely lehetővé teszi több egymástól függetlenül futó FreeBSD létrehozását ugyanazon az operációs rendszer magon, de teljesen függetlenül konfigurálva egy független telepített alkalmazáskészlettel egy FreeBSD operációs rendszeren belül. rendszer.

A FreeBSD Jail a chroot(2) rendszerhíváson alapul , amelyben az aktuális folyamat és annak összes leszármazottja esetében a gyökérkönyvtár átkerül a fájlrendszer egy meghatározott helyére . Ez a hely lesz a folyamat gyökérkönyvtára. Így egy sandbox-folyamat csak az alapul szolgáló könyvtárfához férhet hozzá.

A FreeBSD Jail azonban kernel szinten is támogatja , ami lehetővé teszi a hálózathoz, a megosztott memóriához, a sysctl kernelváltozókhoz való hozzáférés korlátozását, valamint a jail-en kívüli folyamatok láthatóságának korlátozását.

A bezárt folyamatok csak bizonyos operációs rendszer IP - címeihez férhetnek hozzá , és egy adott gazdagépnevet használhatnak . Az ilyen folyamatot "izolált folyamatnak" vagy "börtönzött folyamatnak" nevezik.

Így egy biztonságos „ketrec” jön létre, amelyben akár potenciálisan veszélyes szoftverek is futtathatók, amelyek semmilyen módon nem károsíthatják a fő rendszert vagy más ilyen „ketreceket”. A 9.0-RELEASE verzió előtt a FreeBSD Jail nem szabályozta az erőforrás-használatot (mint például az OpenVZ Linux alatt ). A 9.0-RELEASE verzió óta hasonló mechanizmusokat vezettek be az rctl(8) segédprogramon és a RACCT keretrendszeren keresztül .

A rendszer sysctl szintjén a Jailed folyamatok jogosultságai vannak konfigurálva:

sysctl azonosító Ellenőrzött funkcionalitás
security.jail.chflags_allowed Lehetőség a rendszerfájl-jelzők megváltoztatására
security.jail.allow_raw_sockets Alacsony szintű aljzatok létrehozásának lehetősége
security.jail.sysvipc_allowed A System V IPC használatának képessége
security.jail.set_hostname_allowed Lehetőség a saját gazdagépnév beállítására a Jailed folyamatokon belül (általában a gazdagépnevet a jail hívásakor állítják be)
security.jail.enforce_statfs Lehetőség az összes csatlakoztatott fájlrendszer megtekintésére a Jailed folyamatokon belül
security.jail.socket_unixiproute_only Korlátozás a UNIX/IPv4/route socketek létrehozására
security.jail.list A futó JAIL-ek listája

Használat

A FreeBSD Jail legáltalánosabb használata elszigetelt, biztonságos virtuális gépek létrehozása. Ebben az esetben a jail(8) az /etc/rc inicializáló szkriptet futtatja , amely elindítja egy különálló, elszigetelt virtuális rendszer elindítását. Egy virtuális rendszer legpusztítóbb feltörése és funkcióinak letiltása esetén a többi futó virtuális rendszert ez nem érinti.

A tárhelyszolgáltatók gyakorlatában a börtönmechanizmust felügyelt rendszerek dedikált szervereken való felépítésére lehet használni . Ebben az opcióban az ügyfél csak a börtönhöz, a szolgáltató cég műszaki személyzete pedig a főrendszerhez fér hozzá.

A virtuális gépek használatának jellemzői

A FreeBSD Jail, ha virtuális gépként használják tetszőleges szoftver futtatásához, teljes rendszerkörnyezet emulációt igényel, beleértve:

A gazdagépen található minden virtuális gép (a FreeBSD 7.2 előtt) futtatásához szükségszerűen egyetlen IP-címre lesz szükség . Ugyanazt az IP-címet több géphez is használhatja, de ezeken a virtuális gépeken a szolgáltatások nem használhatják ugyanazokat a TCP/UDP portokat .

A FreeBSD 8.0-tól kezdve minden virtuális géphez több IP-cím is hozzárendelhető.

A FreeBSD Jail telepítésével és használatával kapcsolatos további információkért lásd a jail (8) kézikönyvoldalát vagy a hivatalos dokumentációt. [egy]

Jail megvalósítási hibák (FreeBSD 7.2 és korábbi verziókban)

add path 'bpf*' unhide

Jegyzetek

  1. FreeBSD kézikönyv archiválva : 2014. augusztus 15. a Wayback Machine -nél  

Lásd még

Linkek