Configure SFTP com OpenSSH e um AWS S3 Bucket montado via S3FS no Amazon EC2

2

Como eu permito vários usuários SFTP com S3FS e OpenSSH?

Tudo funciona, exceto que os usuários do SFTP não têm permissão para escrever em seu Diretório Pessoal Chrooted: remote open("/some_file"): Permission denied

Configuração

Eu tenho uma instância do Amazon EC2 executando o Amazon Linux. Eu instalei o S3FS e montei um balde S3. Eu também configurei o OpenSSH para permitir que usuários SFTP acessem um diretório Home Chrooted dentro do bucket do S3 montada/s3_mounted_folder/user_folder/. Eu usei com êxito a conexão SFTP em um diretório não S3 montado. Eu usei com êxito o bucket do S3 para criar e baixar arquivos do S3 como root na instância do EC2 via SSH. Meus usuários do SFTP podem baixar arquivos com sucesso do diretório /s3_mounted_folder/user_folder/ . O problema é que os usuários SFTP não podem put arquivos na pasta montada S3.

O problema ... eu acho

Só consigo configurar todas as pastas ( /s3_mounted_folder/ e /s3_mounted_folder/user_folder/ ) com o mesmo usuário: group e mesmas permissões, portanto, não posso dar ao usuário acesso para gravar em seu diretório pessoal (% código%). Se eu montar o bucket com o usuário ou grupo e conceder permissões de gravação, o OpenSSH SFTP não permitirá que os usuários se conectem porque acredita que as permissões do usuário estão configuradas incorretamente (por exemplo: /s3_mounted_folder/user_folder/ vs. drwxr-xr-x 1 root root ).

Comandos S3FS

Aqui estão os dois comandos diferentes para iniciar o S3FS nesses dois modos (em que o usuário 501 e o grupo 501 são o usuário e grupo do SFTP):

permissões de usuário root ( drwxrwxr-x 1 root usergroup ): drwxr-xr-x 1 root root

permissões de usuário sftp ( sudo s3fs nwd-sftp /sftp/ -o iam_role=sftp-server -o allow_other -o umask=022 ): drwxrwxr-x 1 root usergroup

Nesse segundo cenário, o usuário teoricamente seria capaz de sudo s3fs nwd-sftp /sftp/ -o iam_role=sftp-server -o allow_other -o umask=002 -o gid=501 arquivos em seu diretório home via SFTP, mas o SFTP não permite que eles se conectem porque o diretório home Chrooted tem permissões de gravação para um grupo que não é root .

    
por T. Brian Jones 18.05.2016 / 21:23

0 respostas