
사용자가 자신의 홈 디렉터리에만 액세스할 수 있도록 SFTP/SSH를 설정했습니다. put
하지만 표시되는 cd
다른 모든 디렉터리와 파일에는 계속 액세스할 수 있습니다.get
어떻게 하면 이를 방지할 수 있나요?
편집하다:
내 sshd_config: http://pastebin.com/jk7TCRZr
/var/www에 대한 잠금을 설정했지만 여전히 다른 사용자의 폴더를 볼 수 있습니다.
편집 2:
음..... 내가 뭘 잘못했는지 이제야 깨달았네요... 하하
또 다른 참고로, public_html 폴더를 Apache가 데이터를 로드하려는 폴더로 만들려면 어떻게 해야 합니까?
답변1
sftp chroot를 구성해야 합니다.
답변2
아니면 다음과 같은 도구를 사용하여 수행할 수도 있습니다.http://olivier.sessink.nl/jailkit/
답변3
결정된.
나는 다음을 수행했습니다(그러면 안 되었지만 제게는 효과가 있었습니다. 그게 제가 원하는 전부입니다).
Match user myUser
ChrootDirectory /var/www/myUser
ForceCommand internal-sftp
AllowTcpForwarding no
GatewayPorts no
X11Forwarding no
/var/www/myUser에서 public_html 디렉토리를 만들었습니다. 그 후 다음과 같이 userdir apache 모드를 활성화했습니다.
sudo a2enmod userdir
sudo service apache2 restart
그리고 모든 것이... 작동합니다!
(물론 이것은 이제 사용자 이름 앞에 물결표를 붙여야 한다는 명백한 단점이 있습니다)