
비슷한 질문이 있지만 동일하지는 않습니다. 기본 폴더를 변경하고 싶지 않습니다. 그래서 SSH 연결을 위해 ROOT FOLDER를 설정하고 싶습니다. 내 말은 클라이언트가 액세스할 수 있는 유일한 폴더가 내가 설정한 폴더라는 뜻입니다. 내 클라이언트가 해당 경로에만 액세스할 수 있고 cd ..
.
접근 권한과 권한이 없기 때문에 상위 폴더로 이동할 수 없습니다.
편집: 내가 하고 싶은 가장 중요한 일은 쓰기 위한 다른 장치가 있는 로컬 서버를 보유하지만 모든 파일에 액세스할 수는 없는 것입니다. SSH보다 더 나은 방법이 있다면 나쁜 질문에 대해 죄송합니다.
감사해요
답변1
ChrootDirectory
해당 사용자, 일부 그룹 또는 모든 사용자에 대해 sshd 구성을 설정해야 하지만 이는 총체적입니다.
새 파일을 만들고 /etc/ssh/sshd_config.d/chroot_some_users.conf
다음을 입력합니다.
Match User myuser
ChrootDirectory %h
여러 사용자에 대해 이를 사용하려면 Match Group groupname
필요한 모든 사용자를 해당 그룹에 추가하십시오.
최신 Linux 배포판 Include /etc/ssh/sshd_config.d/*.conf
에는 /etc/ssh/sshd_config
. 이전 배포판에서는 이 줄을 직접 추가해야 할 수도 있습니다. 그냥 끝에 추가하세요. 모든 작업을 완료한 후 로 확인 sshd -t
하고 오류가 보고되지 않으면 로 구성을 다시 로드하는 것이 안전합니다 systemctl reload sshd.service
.
사용자는 myuser
SSH를 통해 자신의 홈 디렉터리를 파일 시스템 루트로 보게 됩니다. SSH를 통해 로그인할 수 없다는 점에 유의하십시오. 왜냐하면 이 chroot는 홈 디렉토리에서 사용할 수 있도록 설정하지 않는 한 쉘 바이너리 및 필수 라이브러리를 볼 수 없도록 하기 때문입니다. 하지만 여전히 SFTP를 사용하여 파일을 전송하고 TCP 포트를 전달할 수 있습니다.
man sshd_config
(완전히!) 그리고 man sshd
많은 중요하고 유용한 세부 사항을 읽어보세요 .