A partir de sua descrição, parece-me que você deseja um diretório chroot separado para cada usuário: ChrootDirectory /home/exchangefiles/%u
.
Eu sei que existem diferentes versões desta questão. mas eu estou tentando dar a cada usuário uma pasta dentro do diretório chroot e ele não deve conseguir navegar fora da pasta designada.
O que eu tenho é uma caixa Red Hat 7.1 Linux na nuvem. O que eu preciso é:
Depois disso, tudo o que preciso fazer sempre que tenho um novo usuário é adicioná-lo a esse grupo e a nenhum outro grupo e conceder acesso a uma pasta em / exchangefolder
Eu usei as instruções mencionadas em " link " e, em seguida, modifiquei "/ etc / ssh / sshd_config "adicionando
Match Group exchangefiles
# Force the connection to use the built-in SFTP support.
ForceCommand internal-sftp
# Chroot the connection into the specified directory.
#ChrootDirectory /home/exchangefiles/%u
#ChrootDirectory /home/exchangefiles
*ChrootDirectory %h*
# Disable network tunneling
PermitTunnel no
# Disable authentication agent forwarding.
AllowAgentForwarding no
# Disable TCP connection forwarding.
AllowTcpForwarding no
# Disable X11 remote desktop forwarding.
X11Forwarding no
criado
/home/exchangefiles
$ ls -ltr
total 16
drwxrwxr-x 2 root exchangefiles 4096 Jul 11 11:12 files
drwxrwxr-x 2 root exchangefiles 4096 Jul 11 15:31 sftptest2
drwxrwxr-x 3 root exchangefiles 4096 Jul 11 16:16 sftptest1
drwxrwxr-x 3 root exchangefiles 4096 Jul 11 18:32 sftptest3
e a estrutura de pastas abaixo dele.
Eu criei o usuário de acordo com o link acima. mas depois tentei definir para cada diretório inicial do usuário na estrutura da cadeia. por exemplo. USER sftptest1 terá um diretório inicial
/home/exchangefiles/sftptest1
o problema é que eu não posso SFTP a menos que eu mude
ChrootDirectory %h
para
ChrootDirectory /home/exchangefiles
que derrota o meu propósito de criar uma pasta separada para cada usuário (tipo de cadeia dentro da cadeia)
isso é factível? qual é a melhor maneira de fazer isso?
A partir de sua descrição, parece-me que você deseja um diretório chroot separado para cada usuário: ChrootDirectory /home/exchangefiles/%u
.