사용자(사용자 sftp-user, 그룹 웹 그룹)의 sftp 액세스를 CentOS 8의 /var/www/html 디렉토리로 제한하고 싶습니다. 웹 사이트 파일을 변경할 수 있도록 읽기 및 쓰기 권한이 있어야 합니다.
사용자를 홈 디렉토리에 성공적으로 감옥에 넣을 수 있었지만 /etc/ssh/sshd_config로 변경했을 때 ChrootDirectory %h
제대로 작동하지 못했습니다. ChrootDirectory /var/www/html
SFTP를 시도할 때 사용자에게 다음 오류가 표시됩니다.
fatal: bad ownership or modes for chroot directory "/var/www/html"
내가 한 일은 setfacl
그룹 웹 그룹에 /var/www/html에 대한 rw-permissions를 부여하려고 시도한 것입니다(재귀적이지는 않지만 해당 폴더 내의 모든 것이 소유자입니다 sftp-user:group
).
어떻게 작동하게 할 수 있나요? 제안된 몇 가지 솔루션을 보았지만 mount
이것이 더 나은 솔루션인지 확실하지 않습니다.
또한 html
폴더의 소유자는 내가 언급한 폴더의 소유이며 그 안의 모든 콘텐츠도 마찬가지입니다 root:root
. sftp-user:webgroup
이것이 올바른 소유권입니까?
완전성을 위해 출력은 다음과 같습니다 getfactl /var/www/html
.
# file: html/
# owner: root
# group: root
user::rwx
group::r-x
group:webgroup:rw-
mask::rwx
other::r-x
감사해요.
답변1
나는 이것을 이해합니다. 여러가지 요인을 혼동하고 있는 것 같습니다. sftp
작업 을 시도 하는 ACL
동시에 문제를 잘못 진단하게 되었습니다. 모두 덕분에울리히 슈바르츠문제를 근본적으로 해결하기 위해서입니다.
이것이 작동하려면 경로에 있는 모든 디렉토리가 /var/www/html
분명히 이를 요구하는 감옥이 소유하고 있는지 확인해야 했습니다.root
chroot
또 다른 문제는 이 문제를 해결하려고 했더니 권한이 html
. 775
으로 변경했더니 755
아무 문제 없이 들어갈 수 있었습니다 sftp
.ChrootDirectory
ACL
앞쪽 에는 의 파일이 /var/www/html
그룹에 속 apache:apache
하고 사용자가 sftp-user
그룹 에 속합니다 webgroup
. 사용자에게 권한을 부여합니다 rwX
.
setfacl -Rm u:sftp-user:rwX html
-m
수정이고 -R
재귀입니다.