SFTP를 통해 특정 사용자 그룹이 쓸 수 있는 공용 디렉터리를 만들고 싶습니다. 이 디렉터리는 이 사용자 그룹만 SFTP를 통해서만 액세스할 수 있어야 합니다.
다음 sshd 구성을 사용하여 이를 성공적으로 설정했습니다.
Subsystem sftp internal-sftp
Match Group sftponly
ChrootDirectory /mnt/filebucket
ForceCommand internal-sftp
AllowTcpForwarding no
PermitTunnel no
X11Forwarding no
PasswordAuthentication yes # temporary for testing
내 사용자는 이 그룹의 일부 sftponly
이며 로그인하여 디렉터리에 성공적으로 chroot할 수 있습니다.
하지만 문제는 이 /mnt/filebucket 디렉터리에 S3 버킷(s3fs 사용)을 마운트하려고 한다는 것입니다. 마운트하면 디렉토리의 권한이 drwxr-xr-x 2 root root
(sshd가 chroot를 승인함) 에서 drwxrwxrwx 1 root root
(sshd가 승인함) 으로 변경됩니다.아니요승인하다).
이 디렉토리를 마운트한 방식 때문에 이 문제가 발생합니까?
답변1
ChrootDirectory를 /mnt로 설정하면 모든 것이 예상대로 작동하지만 사용자는 로그인(cd|click)한 후 추가 filebucket 디렉터리로 이동해야 합니다. 자동화할 수 있나요?
-d
예, 스위치를 사용하여 internal-sftp
사용자의 시작 디렉터리를 지정할 수 있습니다.