배포하려는이 설정에 대해 혼란스러워합니다. 나는 여러분 중 누군가가 저에게 손을 빌려 줄 수 있기를 바랍니다. 대단히 감사합니다.
배경 정보
서버는 Debian 6.0, ext3이며 Apache2 / SSL 및 Nginx가 전면에 리버스 프록시로 사용됩니다. Apache 루트 디렉토리 (/ var / www)에 sftp 액세스 권한을 제공하여 sftp 사용자가 RWX 권한으로 해당 경로에 루트인지 확인해야합니다.
/ var / www의 기본 권한을 수정하지 않고이 모든 것을 수행하십시오.
drwxr-xr-x 9 root root 4096 Nov 4 22:46 www
내부 / var / www
-rw-r----- 1 www-data www-data 177 Mar 11 2012 file1
drwxr-x--- 6 www-data www-data 4096 Sep 10 2012 dir1
drwxr-xr-x 7 www-data www-data 4096 Sep 28 2012 dir2
-rw------- 1 root root 19 Apr 6 2012 file2
-rw------- 1 root root 3548528 Sep 28 2012 file3
drwxr-x--- 6 www-data www-data 4096 Aug 22 00:11 dir3
drwxr-x--- 5 www-data www-data 4096 Jul 15 2012 dir4
drwxr-x--- 2 www-data www-data 536576 Nov 24 2012 dir5
drwxr-x--- 2 www-data www-data 4096 Nov 5 00:00 dir6
drwxr-x--- 2 www-data www-data 4096 Nov 4 13:24 dir7
내가 시도한 것
- 새 그룹 secureftp를 만들었습니다
- nologin 쉘을 사용 하여 secureftp 및 www-data 그룹에 가입 한 새 sftp 사용자를 작성했습니다 . Homedir은 /
- 다음과 같이 sshd_config를 편집했습니다.
Subsystem sftp internal-sftp AllowTcpForwarding no Match Group <secureftp> ChrootDirectory /var/www ForceCommand internal-sftp
sftp 사용자로 로그인하여 파일을 나열 할 수 있지만 쓰기 작업은 허용되지 않습니다. Sftp 사용자는 www-data 그룹에 있지만 / var / www의 권한은 그룹 비트에 대한 읽기 / 읽기 + x이므로 작동하지 않습니다.
또한 ACL로 시도했지만 sftp 사용자에 대한 ACL RWX 권한을 / var / www (디렉토리 및 파일을 재귀 적으로)에 적용하면 unix 권한도 변경됩니다.
여기서 무엇을 할 수 있습니까?
www-data 사용자가 sftp로 로그인 할 수 있도록하여 / var / www에서 www-data가 소유 한 파일 / 디렉토리를 수정할 수 있다고 생각했습니다. 그러나 어떤 이유로 든 보안 상 어리석은 행동이라고 생각합니다.