사용자가 전체 파일 시스템을 보는 것을 방지하는 방법은 무엇입니까?

사용자가 전체 파일 시스템을 보는 것을 방지하는 방법은 무엇입니까?

사용자가 자신의 홈 디렉터리에만 액세스할 수 있도록 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

그리고 모든 것이... 작동합니다!

(물론 이것은 이제 사용자 이름 앞에 물결표를 붙여야 한다는 명백한 단점이 있습니다)

관련 정보