Eu uso algo como o seguinte no meu arquivo /etc/ssh/sshd_config
:
Match User tom
ChrootDirectory /var/www/html/my_project/
AllowTcpForwarding no
X11Forwarding no
ForceCommand internal-sftp
Depois, verifique se o tom tem permissão para acessar esse diretório. Isso pode ser complicado, pois tom
precisaria de, pelo menos, 'x' (executar) permissões para todos os diretórios acima do diretório pretendido. / var / www / html / geralmente é acessível a todos na maioria dos tipos de Linux / Unix.
Eu provavelmente tornaria o diretório my_project
de tom
e o tom no grupo apache. Se o apache estiver sendo executado como apache: apache (user: group), o seguinte deve funcionar para isso:
De link
# usermod -a -G apache tom
Torne todo o diretório my_project
pertencente ao usuário tom
e grupo apache
.
# chown -R tom:apache /var/www/html/my_project/
Torne todo o diretório my_project
totalmente gravável em tom
e legível / executável no grupo apache
.
# chmod -R 750 /var/www/html/my_project/
Observação: todos os arquivos que tom
criam pertencerão ao usuário de tom e seu grupo padrão. O exemplo acima adiciona tom
ao grupo apache
, mas não torna apache
seu grupo padrão. Isso significa que o servidor apache não terá acesso a novos arquivos. Para corrigir isso, crie o grupo padrão apache
be tom
em useradd -g apache tom
.