Chroot 란 무엇입니까?
chroot는 사용자가 신뢰할 수없는 프로그램을 테스트하고 나머지 컴퓨터에는 영향을 미치지 않는 다른 작업을 수행 할 수있는 컴퓨터 시스템의 격리 된 영역입니다. 유닉스 및 유사한 시스템에서 사용되며 사용자가 프로그램에서 참조로 사용하는 루트 디렉토리를 변경하는 일련의 명령을 실행해야합니다. chroot 명령은 시스템이 올바르게 설정되지 않았거나 시스템 내부에서 작업 할 때 사용자가주의를 기울이지 않으면 시스템이 여전히 취약 할 수 있으므로주의해서 사용해야합니다.
사용자가 chroot 환경을 작성할 때 해당 환경에서 실행되는 프로그램은 지정된 디렉토리를 루트로 취급합니다. 이들 프로그램은 상위 디렉토리가 없으므로 파일 시스템 맨 위에있는 실제 루트 디렉토리에 액세스 할 수 없다고 가정합니다. 이로 인해 나머지 시스템을 위험에 빠뜨릴 수있는 수정을하기가 어렵습니다. 다른 프로그램도 chroot 내의 정보에 액세스하고 수정할 수 없습니다. 격리 장치처럼 작동합니다.
Chroot는 다양한 기술을 사용하여 깨질 수 있습니다. 가장 기본적인 것 중 하나는 루트 권한으로 사용자를 chroot에 두는 것입니다.이 권한을 통해 시스템을 광범위하게 수정할 수 있습니다. 프로그램은이를 활용하여 디지털 교도소에서 빠져 나와 나머지 시스템에 액세스 할 수 있습니다. 따라서 컴퓨터 보안의 표준 수단 인 가능한 한 빨리 사용자 권한을 변경하는 것이 중요합니다. 일반적으로 권한이 가장 적은 역할로 사용자를 설정하면 안전 문제의 위험을 줄일 수 있습니다.
잘못된 루트 디렉토리는 프로그램이 사용해야하는 자원으로 적절하게 채워 져야합니다. 그렇지 않으면 제대로 실행되지 않을 수 있습니다. 사용자는 일반적으로 chroot에서 반드시 필요한 것은 아니지만 일부 정보를 사용할 수 있는지 확인해야합니다. 사용자가 환경을 탐색 할 때 발생하는 특정 문제 또는 우려 사항을 기록하여 컴퓨터 시스템에서 동일한 프로세스를 시도하기 전에 알 수 있습니다.
이것은 사용자가 나머지 시스템에 대한 위험을 줄이면서 코드 나 프로그램을 탐색하려는 유용한 테스트 환경이 될 수 있습니다. 알 수 없거나 신뢰할 수없는 자료를 처리하는 데 유용 할 수도 있습니다. 사용자는 이것을 시스템에 직접로드하는 대신 chroot를 사용하여 시스템을 검사하고 평가하여 안전한지 판단 할 수 있습니다.