Como permitir que a pasta de acesso do usuário do ftp esteja fora de seu diretório raiz?

0

Estou tentando criar um usuário ftp que terá acesso a várias pastas em public_html, mas não quero que ele tenha acesso a todas as pastas em public_html. Apenas para os específicos.

Aqui está a estrutura de pastas de public_html

_ftpdevteam1
_ftpdevteam2
site1
site2
site3
site4
site5
site6
site7
site8

O que eu estou tentando fazer é criar o ftpdevteam1 do ftp que pode acessar o site1-4. ftpdevteam2 pode acessar o site5-8

Eu tentei a solução neste post link

Especificamente esta parte

ln -s /home/{username}/public_html/index.html /home/{username}/{ftpusername}/index.html

ln -s /home/{username}/public_html/folder1 / /home/{username}/{ftpusername}/folder1

ln -s /home/{username}/public_html/folder2 /home/{username}/{ftpusername}/folder2

mas quando eu acesso via filezilla eu entendo isso ...

Status: Retrieving directory listing of "/foldername"...
Command:    CWD /
Response:   250 OK. Current directory is /
Command:    CWD foldername
Response:   550 Can't change directory to foldername: No such file or directory
Error:  Failed to retrieve directory listing

Existe uma maneira de editar a permissão do usuário do ftp para que eles possam acessar as pastas?

Eu vi outra solução usando bind neste post link

mas vi no passo 2 que diz

2. We must create the above folders but in the FTP user directory

Isso não parece ser uma solução viável porque meus sites já são pastas criadas. Meu entendimento nesta etapa 2 é que a pasta real precisa estar dentro da pasta _ftpdevteam1.

Alguém que tem alguma outra maneira de conseguir o que eu estou tentando fazer?

Obrigado

    
por Wayne 15.01.2016 / 12:01

1 resposta

0

Como eu entendi você precisa de um monte de ligação. Tente isto:

mkdir /home/{username}/{ftpusername}/public_html
sudo mount --bind /home/{username}/public_html /home/{username}/{ftpusername}/public_html
    
por 15.01.2016 / 13:02