Linux/Unix: polecenie chroot
Jakie są polecenia chroot?
„Polecenie chroot” jest poleceniem systemu Unix/Linux. Służy do zmiany katalogu głównego na nowy katalog w System operacyjny Linux/Unix . Nowy katalog jest znany jako katalog więzienia chroot i katalog więzienia. Jest to skuteczne i proste polecenie dostępne w zestawie narzędzi użytkownika. Gdy znajdziesz się w dwóch katalogach głównych, nie możesz używać żadnego katalogu znajdującego się nad nimi. Jeśli utworzysz fałszywy katalog główny dla użytkownika, utraci on dostęp do prawdziwego katalogu głównego.
Zwykle w katalogu głównym wprowadzane są następujące zmiany w celu konserwacji systemu:
- Zwiększ bezpieczeństwo dzięki mechanizmowi zabezpieczającemu
- Uruchom ponownie pliki bootloadera w swoim systemie
- Utwórz środowisko testowe do testowania oprogramowania
- Resetowania hasła
Składnia polecenia chroot
Polecenie chroot w systemie Linux ma następującą składnię.
| Tak nie | Składnia polecenia chroot |
|---|---|
| 1. | chroot / ścieżka / do / nowy / root / ścieżka / do / serwera |
| 2. | polecenie chroot / ścieżka / do / nowy / root |
| 3. | chroot [opcje] / ścieżka / do / nowy / root / ścieżka / do / serwera |
Polecenie chroot wymaga parametru do uruchomienia polecenia, a ten parametr ustępuje miejsca nowemu katalogowi głównemu. Możesz skorzystać z dostępnych opcji, aby uzyskać pożądany rezultat.
Opcja:
Tworzenie pliku chroot.jail
Więzienie chroot to katalog wirtualny. Tworzy się go poprzez konwersję katalogu głównego do nowego katalogu. Działa jako fikcyjny katalog główny dla twojego więzienia chroot.
1. Utwórz katalog
W tym poleceniu najpierw tworzymy fałszywy katalog główny za pomocą polecenia mkdir. To polecenie pokazano poniżej.
$ sudo mkdir /bashjail
Polecenie to tworzy katalog pod podanym adresem, którego używamy dla katalogu więzienia chroot, a przed uruchomieniem tego polecenia dodajemy wymagane pliki do nowego katalogu.
2. Aby dodać wymagane katalogi główne w więzieniu chroot
Po pierwsze, w tym poleceniu tworzymy wymagane katalogi (/bin, /lib i /lib64) w katalogu więzienia chroot. Wymagane katalogi są określone w nawiasie („{}”), jak widać w składni poniższego polecenia.
$ sudo mkdir / bashjail/ {bin, etc}
3. Przenieś pliki binarne
Tworzymy minimalistyczne środowisko Linux dla tego polecenia i używamy poleceń ls, bash touch i rm, aby zwiększyć funkcjonalność środowiska wirtualnego.
sudo cp -v /bin/ {ls, bash, touch, rm} $home / ch
Uwaga: w tym poleceniu używamy polecenia cp i znacznika -v, aby zobaczyć, co jest w tym momencie kopiowane.
4. Aby znaleźć zależności poleceń
Zależność polecenia możemy sprawdzić za pomocą polecenia ldd. Teraz skopiujemy katalogi jeden po drugim w naszym więzieniu chroot za pomocą polecenia cp. Sprawdzamy kopię wszystkich bibliotek zależności. Jeśli wystąpi problem z bibliotekami zależności, więzienie chroot nie będzie działać poprawnie.
ldd /bin/bash
cp -v {} $desktop/ jail/ lib64
Powtórzymy te kroki w więzieniu Chroot ze wszystkimi poleceniami, na które chcemy zezwolić.