Configurei um servidor SSH no qual permiti que alguns amigos fizessem login, tanto via SSH quanto FileZilla. Coloquei um link simbólico para dois discos rígidos em seus diretórios pessoais para que eles pudessem acessar alguns arquivos. Isso provou ser muito difícil para alguns usuários do FileZilla (Windows) e eles continuam se perdendo no sistema de arquivos.
Minhas perguntas são:
É possível fazer com que os usuários SSH iniciem em algum outro diretório que não seja o diretório inicial? Acrescentar "cd some_dir" ao .bashrc funciona apenas para SSH, não para FileZilla.
É possível bloquear os usuários nesse diretório e seus subdiretórios? Alguns usuários vão até / e não conseguem encontrar o caminho de volta, embora eu continue explicando a eles que eles podem simplesmente inserir "/caminho/para/seu/dir" no campo de destino.
Responder1
Sugiro que você altere a página inicial do usuário para apontar para o diretório de destino. Você pode fazer isso editando /etc/passwd
diretamente ou usermod --home NEW_HOME_DIR username
(isso também copiará os arquivos do anterior).
Atualizar:
Quanto ao bloqueio, não há muitas opções além da chroot
prisão. Se você definir o shell de login como /bin/rbash
, ele iniciará um shell restrito. Entre outras coisas, isso significa que cd
não funcionará, nem comandos que usam caminhos absolutos. Leia a bash(1)
página de manual emRESTRICTED SHELL
para mais detalhes.