Você tem autonomia completa sobre seus arquivos?
Pensando nisto a Amazon lançou o
Amazon S3, que é um poderoso sistema de backup onde você controla ciclo de vida de arquivos, versionamento, aceleramento de transferência, entre outros diversos tipos de controle o que lhe dão uma autonomia sem igual para os arquivos.
Sem dúvidas o Amazon S3 vale a pena de utilizar.
Para conhecer mais acesse:
Como posso utilizar o Amazon S3? Esta pergunta vai variar, se você é um simples usuário, poderá contratar empresas que utilizam o serviço e repassam a você, porém este artigo é voltado ao desenvolvedor e a possibilidade que temos junto a este sistema, sendo assim, poderá utilizar o S3 em praticamente tudo, integrado a sistemas ou mesmo ao SO do seu servidor.
Neste artigo estarei ensinando o básico da automatizando e criação do Amazon S3 em seu sistema
Linux, ele não será integrado com nenhum webservice como Apache, utilizando apenas o método de upload como FTP.
Instalação
Requerimentos:
- Servidor Linux ( preferencialmente CentOS )
- Memória acima de 500mb
- HD acima de 40GB
- LibFuse 2.9.4 ou superior
- LibS3fs
Vamos começar instalando as ferramentas de desenvolvimento:
# yum install -y libstdc++-devel curl-devel automake gcc gcc-c++ git libxml2-devel make openssl-devel
Vamos inicialmente começar instalando as ferramentas de desenvolvimento:
# yum install -y libstdc++-devel curl-devel automake gcc gcc-c++ git libxml2-devel make openssl-devel
Em seguida vamos compilar o libfuse:
# cd /usr/local/src/
# mkdir fuse
# wget http://pkgs.fedoraproject.org/repo/pkgs/fuse/fuse-2.9.4.tar.gz/ecb712b5ffc6dffd54f4a405c9b372d8/fuse-2.9.4.tar.gz -O fuse.tar.gz tar -xvf fuse.tar.gz -C fuse/ && cd fuse/fuse*
# ./configure --prefix=/usr/local
# make
# make install
# export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
# ldconfig
# modprobe fuse
Em seguida vamos compilar o s3fs, que pode ser encontrando aqui:
# cd /usr/local/src/
# git clone https://github.com/s3fs-fuse/s3fs-fuse.git && cd s3fs-fuse
# ./autogen.sh
# ./configure
# make
# make install
Vamos habilitar o S3fs no sistema:
# ed -s /etc/ld.so.conf <<< $'1i\n/usr/local/lib/\n.\nwq'
Vamos instalar um servidor de FTP, neste artigo utilizaremos o VSFT:
# yum install -y vsftpd
Vamos configurar algumas opções básicas do VSFTP como conexões, ip etc, estas modificações podem ser alteradas de acordo com a configuração de seu sistema:
# sed -i 's/anonymous_enable=YES/anonymous_enable=NO/g' /etc/vsftpd/vsftpd.conf
# ed -s /etc/vsftpd/vsftpd.conf <<< $'1i\npasv_enable=YES\n.\nwq'
# ed -s /etc/vsftpd/vsftpd.conf <<< $'1i\npasv_min_port=1024\n.\nwq'
# ed -s /etc/vsftpd/vsftpd.conf <<< $'1i\npasv_max_port=1048\n.\nwq'
# ed -s /etc/vsftpd/vsftpd.conf <<< $'1i\nuserlist_deny=NO\n.\nwq'
# ed -s /etc/vsftpd/vsftpd.conf <<< $'1i\npasv_address=CHANGE_HERE_IP\n.\nwq'
Configurando o IP do servidor no FTP:
# IP=$(curl --silent http://ipecho.net/plain) && sed -i "s/pasv_address=CHANGE_HERE_IP/pasv_address=$IP/g" /etc/vsftpd/vsftpd.conf
# sed -i "s/#chroot_local_user=YES/chroot_local_user=YES/g" /etc/vsftpd/vsftpd.conf
Reiniciando servidor de FTP:
# /etc/init.d/vsftpd restart
Verifique se a conexão vai ocorrer normalmente:
# telnet IP_DO_SERVIDOR 21
Se tudo ocorreu bem, podemos ir para a próxima etapa.