Mikä on chroot Linuxissa ja miten se toimii?

Mikä on chroot Linuxissa ja miten se toimii?
Kaltaisesi lukijat auttavat tukemaan MUO:ta. Kun teet ostoksen käyttämällä sivustollamme olevia linkkejä, voimme ansaita kumppanipalkkion. Lue lisää.

Haluatko ajaa sovelluksia tai palveluita erillisessä tilassa Linuxissa? Tai ehkä haluat testata ja korjata sovellusta ilman, että se häiritsee muuta järjestelmääsi? Jos näin on, sinun kannattaa oppia chrootista, tehokkaasta Linuxiin sisäänrakennetusta mekanismista, jonka avulla voit luoda erillisen ympäristön järjestelmääsi.





PÄIVÄN VIDEON TEKEMINEN JATKA SISÄLLÖLLÄ VIERÄTÄ

Tutkitaan chrootia yksityiskohtaisesti, opitaan sen eduista, käyttötapauksista, kuinka se asennetaan Linux-järjestelmään ja tarvittaessa miten vältytään siltä.





Mikä on chroot Linuxissa?

  chroot-komennon esittely

chroot tai change-root on luultavasti yksi helpoimmista ja vanhimmista konttiohjelmistojen muodoista, joiden avulla käyttäjä voi turvallisesti hiekkalaatikkosovelluksia ja palveluita käyttää. Hiekkalaatikko, laskennallisesti, on prosessi, jossa ohjelma eristetään suljetussa tilassa ennalta määritetyillä resursseilla.





Jos olet perehtynyt Docker ja miten se toimii , voit ajatella chrootia sen voimakkaasti riisuttu versio. chroot toimii muuttamalla ohjelman juurihakemistoa, rajoittamalla pääsyä ja näkyvyyttä ja tarjoamalla siten lisätyn eristys- ja suojakerroksen.

Käytännössä luot erillisen hakemiston, kopioit kaikki ohjelman riippuvuudet uuteen hakemistoon ja suoritat sitten chroot-komennon. Tämä mahdollistaa ohjelman toiminnan kunnolla ilman pääsyä perustiedostojärjestelmään.



ohjelman chrootaaminen on loistava tapa testata sen luotettavuutta turvallisessa tilassa muuttamatta todellisia järjestelmän tiedostoja. Lisäksi voit myös vähentää vaarantuneen paketin aiheuttamaa tietoturvariskiä, ​​sillä chroot-ympäristössä vaarantunut paketti ei pääse käsiksi ja muokkaa arkaluonteisia järjestelmätiedostoja.

kuinka estää puhelimen ylikuumeneminen

Ohjelma voi käyttää ja tarkastella vain tiedostoja, jotka on tuotu chroot-hakemistoon, joka tunnetaan myös nimellä 'chroot vankila'. Tämä estää ohjelmaa ja sen aliprosesseja häiritsemästä perusjärjestelmää.





Mikä on chroot-vankila?

Chroot-vankila on eristetty ympäristö, jossa chroot-ohjelmat sijaitsevat ja suoritetaan. Termi chroot vankila on johdettu käsitteestä, että prosessilla ja sen aliprosesseilla chrootoidussa ympäristössä ei ole pääsyä tai näkyvyyttä perustiedostojärjestelmään ja ne ovat loukussa chrootin rajoissa ennalta määrätyillä resursseilla.

Nyt kun chrootin käsite on sinulle selvä, lähdetään ottamaan selvää, kuinka voit luoda chroot-vankilan ja synnyttää siihen prosesseja.





Kuinka luoda chroot-vankila ja suorittaa ohjelmia siinä

  hakemiston chrootaaminen ja bash-1:n luominen

Chroot-vankila on pohjimmiltaan hakemisto, joka sisältää kaikki tarvittavat resurssit, tiedostot, binaarit ja muut riippuvuudet, joita ohjelma tarvitsee toimiakseen kunnolla.

Toisin kuin tavallisessa Linux-ympäristössä, chroot-vankilan ympäristö on kuitenkin erittäin rajoitettu, eikä ohjelma voi käyttää ulkoisia tai lisätiedostoja ja järjestelmäresursseja.

Jos esimerkiksi haluat ajaa Bash-kuoren chroot-vankilassa, sinun on kopioitava Bash-binaari ja kaikki sen riippuvuudet chroot-hakemistoon.

Tässä ovat vaiheet chroot-vankilan luomiseen ja Bash-kuoren luomiseen:

  1. Jotta ohjelma toimisi onnistuneesti, sinun on kopioitava kaikki sen riippuvuudet chroottuun hakemistoon. Etsitään binaari, tässä tapauksessa Bash, ja kaikkien sen riippuvuuksien sijainti käyttämällä what- ja ldd-komentoja:
     which bash 
    ldd /usr/bin/bash
  2. Nyt kun tiedät binaarin sijainnit ja sen riippuvuudet, kopioi ne hakemistoon, jonka haluat muuttaa chroot-vankilaksi. Luo tarvittavat hakemistot komennolla mkdir ja käytä cp-komento , kopioi kaikki tiedostot vastaaviin hakemistoihin:
     mkdir bin lib lib64 && cp -r /lib/ * ./lib && cp -r /lib64/* /lib64/ && cp /bin/bash /bin/
  3. Lopuksi, kun ohjelma ja sen riippuvuudet on kopioitu, voit suorittaa chroot-komennon korotetuilla oikeuksilla käyttämällä sudo-etuliitettä luodaksesi chroot-ympäristön valittuun hakemistoon. Oletuksena se luo Bash-kuoren. Tässä on komento kirjoittaaksesi:
     sudo chroot directory_name

Siinä kaikki vaiheet chroot-vankilan luomiseen ja ohjelman suorittamiseen sen sisällä.

Kuinka päästä eroon chrootin vankilasta

Vaikka chroot-vankilat ovat hyviä epävakaiden ohjelmistojen testaamiseen, ne ovat hyödyllisiä myös SSH-yhteyksien käsittelyssä, koska yhdistettyjen käyttäjien chroot-ohjelma on yksi monista tapoja suojata SSH-palvelimesi .

Toisaalta, jos olet penetraatiotestaaja ja olet kirjautunut kohdesi SSH-palvelimelle, sen toteaminen chroot-ympäristöksi voi olla turhauttavaa ja tuntuu umpikujalta.

Väärin konfiguroidusta chroot-vankilasta voi kuitenkin paeta monia tapoja, joista jotkut vaativat C-ohjelmointitaitoja, kun taas toiset voidaan automatisoida työkaluilla. Muutama helppo tapa chroot-pakoon on:

  • Sisäkkäiset chroot-kutsut
  • Sisäkkäiset chroot-kutsut, joissa on tallennettu tiedostokuvaus
  • Asenna juurimenetelmä
  • procfs pakenee
  • ptrace paeta

Huomaa, että jos haluat suorittaa chroot-pakotuksen millä tahansa näistä menetelmistä, sinulla on oltava laajennetut oikeudet järjestelmässä. Saat lisätietoja näistä pakomenetelmistä siirtymällä osoitteeseen chw00t:n GitHub-arkisto chroot-pako-automaatiotyökalu.

Nyt tiedät kaiken chrootista Linuxissa

Nyt kun tiedät mikä chroot on, miten se toimii ja miten se toteutetaan, sinun pitäisi pystyä sandbox-sovelluksia vaivattomasti päätteestä. Muista, että kuten tiedät, on olemassa useita tapoja murtautua ulos chroot-ympäristöstä.

Tämä osoittaa, että chrootia ei ole suunniteltu käytettäväksi suojausominaisuudena. Joten sinun tulee käyttää chrootia erittäin varoen, koska väärä kokoonpano voi päätyä takapakkiin ja vaarantaa järjestelmän turvallisuuden.

On parasta kiinnittää erityisiä hiekkalaatikkoratkaisuja, kuten konttiohjelmistoja tai virtuaalikoneita. Molemmat keskittyvät hiekkalaatikkoon ja tietoturvaan, joten ellei kaupungissa ole uutta nollapäivää, sinun ei tarvitse huolehtia järjestelmäsi turvallisuudesta ja eheydestä.

Jos et ole varma, kumpi valita kontti- ja virtualisointiohjelmiston välillä, sinun kannattaa kokeilla molempia ja katsoa itse, kumpi on parempi.

satunnaiset ponnahdusikkunat Android -puhelimessa