
Eu configurei o SFTP/SSH para que um usuário possa put
acessar apenas seu diretório inicial, no entanto, ele ainda pode cd
acessar todos os outros diretórios e get
arquivos que vê.
Como posso evitar isso?
EDITAR:
Meu sshd_config: http://pastebin.com/jk7TCRZr
Consegui bloquear para/var/www, mas eles ainda podem visualizar as pastas de outros usuários.
EDITAR 2:
Errm..... acabei de perceber o que fiz de errado... Ha ha
Por outro lado, como eu poderia tornar a pasta public_html a pasta da qual o Apache tenta carregar dados?
Responder1
Você deve configurar o chroot sftp.
Responder2
Ou você pode fazer isso com ferramentas comohttp://olivier.sessink.nl/jailkit/
Responder3
Fixo.
Fiz o seguinte (provavelmente não deveria, mas funcionou para mim. É tudo que quero):
Match user myUser
ChrootDirectory /var/www/myUser
ForceCommand internal-sftp
AllowTcpForwarding no
GatewayPorts no
X11Forwarding no
Em /var/www/myUser, criei o diretório public_html. Depois disso, habilitei o mod userdir apache, assim:
sudo a2enmod userdir
sudo service apache2 restart
E tudo simplesmente... Funciona!
(é claro, isso tem a desvantagem óbvia de que agora temos que acrescentar um til aos nomes de usuário)