chroot 예제

chroot 예제

유형 종료 $ 위의 명령에서 종료 샘플 세션 :애니메이션 GIF 01 : 리눅스 / 유닉스 : Bash Chroot ls 명령 데모 만 루트 사용자는 chroot를 수행 할 수 있습니다. 이것은 사용자가 권한 에스컬레이션으로 속일 수있는 특수 하게 제작 된 chroot 감옥 (예 : 가짜 / etc / passwd 및 / etc / 그림자 파일)에 setuid 프로그램을 넣지 못하도록하기위한 것입니다. 다음 예제 /location/of/new/root에서는 새 루트가 있는 디렉터리입니다. 나는 소프트웨어 RAID 기반 리눅스 시스템이 부팅되지 않는 가정해요. 따라서 라이브 CD 또는 네트워크 기반 원격 구조 커널 모드를 사용하여 시스템을 부팅하여 시스템을 수정했습니다. 이 예제에서는 라이브 리눅스 DVD /CD 및 chroot를 사용하여 RHEL 기반 시스템을 /dev/sda1 및 /dev/md0로 부팅하여 문제를 해결합니다: ## 라이브 CD 프롬프트에서 다음 명령을 입력합니다. ## ## ## /dev/sda1 메인 시스템 파티션 ## ## ## /dev/md0 /데이터 파티션 ## # 설정 감옥 디르 d =/chroot mkdir $d # 마운트 sda1 및 필요한 dirs 마운트 /dev/s da1 $d 마운트 -o 바인드 /dev $d/dev 마운트 -o 바인드 /sys $d/sys 마운트 -o 바인드 /dev/shm $d/dev/shm 마운트 -o 바인드 /proc $d/proc # Mo unt 소프트웨어 습격 / dev / md0 마운트 / dev / md0 $d / 데이터 # Chroot 우리의 새로 만든 감옥에. 이렇게하면 모든 것이 /dev / null chroot $d 로 이동하기 전에 부트 로더 또는 데이터를 잡을 수 있습니다 . LS DF # 안전한 위치 rsync에 파일을 가져옵니다 -avr /path/to/my_precious_data_dir user@safe.location.cyberciti.biz:/path/to/dest # chrooted 감옥에서 나가서 재부팅하거나 필요에 따라 서버를 포맷하십시오 😉 종료 umount {dev,sys,[…],} 재부팅 chroot 기능을 항상 사용해야 합니까? 위의 예에서, 프로그램은 매우 간단하지만 당신은 같은 문제의 여러 가지 종류로 끝날 수 있습니다 :이 튜토리얼은 리눅스 “chroot”명령, 옵션 및 예제와 의 사용을 설명합니다. 1.

chroot 감옥을 구현하고 /bin/bash를 실행하려면 인공 루트 디렉토리(이 예제에서 홈/오라클/감옥)에 빈 디렉토리를 만들고/bin/bash를 이 디렉토리에 복사합니다: 3. SHELL이 /bin/bash로 설정되어 있다고 가정하고 /home/user/jail 디렉터리, chroot 명령 결과 실행: 예를 들어, 설치 가이드에서이 디렉토리 /mnt 될 것 이다: Chroot 루트 루트 권한이 필요 합니다., 사용자가 특정 상황에서 얻을 수 있는 것이 바람직하거나 가능 하지 않을 수 있습니다. 그러나 대체 구현을 사용하여 chroot와 같은 동작을 시뮬레이션하는 다양한 방법이 있습니다. 그런 다음 chroot에서 X 서버로 응용 프로그램을 지시하려면 chroot 내부의 디스플레이 환경 변수를 X 서버를 소유한 사용자의 DISPLAY 변수와 일치하도록 설정합니다. 예를 들어 루트 변경 은 일반적으로 부팅 및/또는 로그인이 더 이상 불가능한 시스템에서 시스템 유지 관리를 수행하기 위해 수행됩니다. 일반적인 예는 다음과 같습니다: 이 예제에서는 bash 및 ls 명령만으로 테스트 목적으로 미니 감옥을 빌드합니다. 첫째, mkdir 명령을 사용하여 감옥 위치를 설정 : $ J = $HOME / 감옥 $J 내부 디렉토리 만들기 : $ mkdir -p $J $ mkdir -p $J /{bin, lib64,lib} $ cd $J 복사 / 빈 / 배쉬 및 / bin / ls cp 명령을 사용하여 $J / bin / w/ 위치에 : $ cp -v / bin / {bash,ls} $J / bin $J.

Share this post