내 chroot 디렉토리에는 bash date ls...와 같은 명령이 포함된 bin 디렉토리가 있습니다.
내 chroot 디렉토리로 chroot하면. 여전히 /bin에 나열된 명령을 호출할 수 있습니다.
그러나 ssh를 통해 액세스하면(ssh를 통해 chroot 디렉터리에 연결된 다른 사용자에게 연결됨) /bin에서 어떤 명령도 실행할 수 없습니다. "명령을 찾을 수 없습니다"라는 메시지가 나타납니다.
반면, bin 디렉토리에 CD를 넣으면 - cd bin... ls 명령 - ./ls (이것은 단지 ssh 이후에 올바른 chroot 디렉토리에 있다는 것을 증명하기 위한 것입니다.)
SSH 액세스를 위해 chroot를 설정하려면 이 링크를 따라갔습니다.https://www.tecmint.com/restrict-ssh-user-to-directory-using-chrooted-jail/
이 문제를 해결할 방법이 있나요?
답변1
문제는 /bin
사용자의 $PATH
환경 변수에 있는 것이 아닙니다. 실행 파일을 찾을 위치를 쉘에 알려주는 변수입니다.
BASH를 사용하고 있으므로 /etc/profile
간단히 chroot에서 편집하고 다음을 추가할 수 있습니다.
export PATH=$PATH:/bin