![SFTP Chroot chrooted/에 쓰기](https://rvso.com/image/760619/SFTP%20Chroot%20chrooted%2F%EC%97%90%20%EC%93%B0%EA%B8%B0.png)
여기요,
/에 chroot된 사용자를 포함하여 글을 쓰고 싶지만 그럴 수 없습니다.
예: 나는 /home/sftponly/
ChrootDirectory를 가지고 있습니다.
내부에는 이 사용자에 대한 권한이 있는 다른 디렉터리가 있어야 합니다. 그렇지 않으면 연결할 수 없습니다.
연결하는 사용자가 하위 디렉터리를 볼 수 없는 동안 쓰기 가능하도록 하고 싶습니다. 내가 뭘 잘못하고 있는지에 대한 조언이 있습니까?
내 sshd_config
Match User sftponly
ChrootDirectory /home/sftponly
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
답변1
내가 올바르게 이해했다면 사용자가 루트를 변경하는 동안 자신의 홈 디렉토리에 쓸 수 있기를 원할 것입니다.
chroot가 활성화된 상태에서 sftp를 사용하여 연결하면 다음과 같은 일이 발생합니다.
- 사용자는 기본 "chroot" 디렉터리(여기서는
/home/sftponly
) 로 루트가 지정됩니다.- 기본 chroot는 루트가 소유해야 하며 사용자는 읽기 전용이어야 합니다.
- 그런 다음 사용자는 chroot됩니다다시
/etc/passwd
기본 chroot에서 시작하는 방법에 따라 그의 홈 디렉토리에 넣습니다 .이것홈 디렉토리는 사용자에게 쓰기 가능합니다.
따라서 /etc/passwd에 다음과 같은 줄이 있는 경우:
sftponly:x:1002:1002:,,,:/home/sftponly:/bin/bash
sshd는 사용자를 /home/sftponly/home/sftponly
.
그래서 당신이꼭 필요하다이 정확한 경로로 chroot하려면 /home/sftponly
기본 chroot를 sshd_config
다음과 같이 설정해야 합니다 /home
.
ChrootDirectory /home
그런 다음 홈 디렉토리를 설정하십시오.sftponly안으로 :/etc/passwd
/sftponly
sftponly:x:1002:1002::/sftponly:/bin/bash
그러면 /home/sftponly
sftponly 사용자가 쓸 수 있습니다. 문제 없습니다.