Chegamos na etapa de configuração do
Amazon S3.
O primeiro passo é criar sua conta no sistema através do painel da Amazon. A conta pode ser criada em:
Após criar sua conta no S3, você precisará obter as chaves de conexão sendo elas a Key e PrivateKey, estas chaves podem ser obtidas em:
Obs.: a URL pode mudar de acordo com a região assinada na Amazon.
Com posse da chave crie e configure o arquivo abaixo no usuário root:
# echo "SUA_KEY:SUA_PRIVATE_KEY" > $HOME/.passwd-s3fs
# chmod 600 "$HOME/.passwd-s3fs"
Este arquivo deve existir, caso contrário a conexão não poderá ser efetuada.
Vamos então para o próximo passo que é criar a conta e testar a configuração.
Criação de conta
Chegamos na etapa de criação de conta e vamos verificar se tudo está funcionando corretamente.
1. Acesse o painel do Amazon S3 e crie um bucket. Digamos que foi criado como 'arquivos'.
Para saber como criar um bucket veja este guia:
2. Agora acesse seu servidor e crie o usuário que receberá o bucket, vamos definir como vivaolinux, este usuário deve possuir um diretório home válido:
# useradd -d /home/vivaolinux -m vivaolinux
Em seguida insira uma senha para este usuário:
# passwd vivaolinux
Anote a senha.
3. Agora vamos criar um diretório na home do cliente com o mesmo nome do bucket:
# mkdir /home/vivaolinux/arquivos
4. Uma vez o diretório criado, vamos invocar o s3fs para montar o bucket no diretório que criamos:
# /usr/local/bin/s3fs "vivaolinux" -o use_rrs -o allow_other -o default_acl=public-read "/home/vivaolinux/arquivos"
Podemos verificar se houve a montagem corretamente rodando:
# df -h | grep s3fs
Se aparecer listado a montagem foi feita corretamente.
5. Vamos inserir uma entrada no fstab para evitar que após o reinicio da maquina a montagem se perca:
# echo "s3fs#$BUCKET /home/vivaolinux/arquivos fuse _netdev,allow_other,nodnscache,retries=5 0 0" >> /etc/fstab
6. Vamos por fim adicionar o usuário vivaolinux à lista de usuários permitidos no FTP:
# echo "vivaolinux" >> /etc/vsftpd/user_list
Reinicie o servidor FTP em seguida:
# /etc/init.d/vsftpd restart
Opcional: caso você queira que o usuário possa somente fazer upload no Amazon S3 e não em seu servidor, modifique a permissão do diretório home para 0555:
# chmod 0555 "/home/vivaolinux/"
Agora você pode fazer upload de duas formas:
a) Diretamente via algum cliente de FTP utilizando a conexão:
- Servidor: IP OU NOME_DO_SERVIDOR
- PORTA: 21
- USUÁRIO: USUÁRIO
- SENHA: SENHA
- DIRETÓRIO: /arquivos
b) Ou via shell diretamente no diretório "arquivos".
Uma vez o upload feito, ele é imediatamente enviado ao bucket na Amazon S3.