Como posso configurar o ProFTP e o SSHD_config para FTP e SFTP no mesmo diretório no Ubuntu 12.04?

1

Estou tendo problemas com um ambiente chrooted no Ubuntu 12.04.

Objetivo

Configure o servidor FTP / SFTP onde os usuários fazem parte de um novo grupo 'sftp' que pode ser enviado para o mesmo diretório

Configuração do ProFTP

A configuração do ProFTP é uma base construída no Ubuntu e funciona como esperado. O usuário 'test1' pode efetuar login no servidor via ftp no tcp 21 e ser chrooted em seu diretório / home / test1 / ftproot.

no /etc/proftpd/proftpd.conf

# Use this to jail all users in their homes
DefaultRoot                     ~/ftproot

Quando o usuário test1 efetua login via ftp, ele vê somente / (é o que eu quero).

Mas quando o mesmo usuário efetua login via sftp, e é corretamente chrooted usando sshd_config, porque o diretório / home / test1 DEVE ser de propriedade de root, o usuário efetua login via sftp e vê:

/
/ftproot
/.bashrc

O que isto significa é que o usuário NÃO termina no mesmo diretório / ftproot. test1 terminará em seu diretório home / home / test1 por padrão, que na verdade é propriedade de root. Portanto, ele não pode escrever nada via sftp até que ele mude os diretórios para / ftproot.

Como faço para configurar o servidor sftp, então, por padrão, ele acaba no mesmo diretório?

Aqui estão as minhas configurações relevantes do sshd_config:

#Subsystem sftp /usr/lib/openssh/sftp-server
Subsystem sftp internal-sftp -f AUTH -1 VERBOSE
Match Group sftp
ChrootDirectory %h
ForceCommand internal-sftp
#AllowTcpForwarding No

O ChrootDirectory% h / ftproot não funciona.

    
por Mike J 30.01.2014 / 04:26

2 respostas

1

Agora que proftpd tem sua própria implementação de SFTP por meio do módulo mod_sftp , usando esse para as suas necessidades de SFTP (em vez de OpenSSH) podem resolver esse problema com precisão.

    
por 22.01.2016 / 07:55
0

Você precisa alterar em qual pasta o usuário 'test1' chega com SSH. Veja a resposta a esta pergunta: link ;
Adicione cd subdir/subdir a ~ / .bashrc ou ~ / .bash_profile ou altere o diretório inicial do usuário.

Para alterar o diretório pessoal de um usuário: usermod -d /path/to/dir/ username

    
por 30.01.2014 / 05:26