Habilitando FTP à uma Instância EC2
FTP (File Transfer Protocol) é um protocolo de rede amplamente utilizado para transferência de arquivos entre sistemas computacionais. Ele permite o envio e o recebimento de arquivos de um computador para outro através de uma conexão FTP.
O FTP é uma das formas mais antigas e tradicionais de transferência de arquivos na Internet. Ele utiliza uma arquitetura cliente-servidor, onde o cliente se conecta a um servidor FTP para acessar e transferir arquivos.
No FTP, o cliente pode navegar pelos diretórios do servidor remoto, fazer upload (enviar) de arquivos para o servidor ou fazer download (baixar) de arquivos do servidor para o seu próprio computador. Além disso, é possível renomear, excluir e mover arquivos e diretórios remotamente.
Para estabelecer uma conexão FTP, são necessárias as informações de host (endereço do servidor FTP), porta de conexão, nome de usuário e senha. Existem diversos programas de cliente FTP disponíveis, tanto em modo gráfico como em linha de comando, que permitem aos usuários se conectarem a servidores FTP e realizar as operações de transferência de arquivos.
Embora o FTP seja amplamente utilizado, é importante ressaltar que ele não é um protocolo seguro, pois as informações de login, senhas e os próprios arquivos são transmitidos em texto simples. Para cenários em que a segurança é uma preocupação, é recomendado o uso de protocolos como o SFTP (SSH File Transfer Protocol) ou FTPS (FTP Secure), que criptografam as comunicações entre o cliente e o servidor, garantindo uma transferência segura de arquivos.
Pré-requisitos:
- Já ter uma Instância criada,
(https://marcomapa.com/artigos/criando-uma-instancia-ec2-na-aws/); - Conectar-se à Instância por SSH,
(https://marcomapa.com/artigos/acessando-uma-instancia-ec2-por-ssh/) - Liberar as Portas no Grupo de Segurança apenas para IPs confiáveis:
(https://marcomapa.com/artigos/configurando-portas-no-grupo-de-seguranca-firewall-de-uma-instancia-ec2/)
Instalando FTP
1-) Conectado em sua Instância execute:
sudo yum install vsftpd
2-) Configurando o serviço FTP:
sudo nano /etc/vsftpd/vsftpd.conf
a-) Localize a instrução:
anonymous_enable=YES
e altere-a para:
anonymous_enable=NO
b-) adicione as seguintes linhas ao final do arquivo:
pasv_enable=YES
pasv_min_port=1024
pasv_max_port=1048
pasv_address=
c-) Salve o arquivo (ctrl+o) e feche o arquivo (ctrl+x)
3-) Reinicie o serviço FTP:
sudo
systemctl restart vsftpd
4-) Crie um novo usuário:
adduser ftpuser
5-) Defina uma senha para ele:
passwd
ftpuser
6-) Atribua permissões para poder gerenciar os arquivos de seus sites:
sudo usermod -d /var/www/html/ ftpuser
sudo usermod -a -G root ftpuser
sudo systemctl restart vsftp
7-) Configure-o para iniciar automaticamente após reinicilizações:
sudo chkconfig --level 345 vsftpd on
sudo systemctl restart vsftpd
8 -) Por fim, configure seu cliente FTP, no exemplo abaixo utilizamos o Filezilla:
a-) Clique em Novo Site;
b-) Coloque o IP público de sua Instância;
c-) Porta, de acordo com o configurado em Seu Grupo de S
egurança
;
d-) Usuário, conforme definido no passo
passo
nº
4
e-) Senha, conforme definido no passo
passo
nº
5