HomeTECHComo configurar um servidor FTP Linux para transferências rápidas de arquivos –...

Como configurar um servidor FTP Linux para transferências rápidas de arquivos – CloudSavvy IT

FTP, ou File Transfer Protocol, é um protocolo padrão para enviar e receber arquivos de servidores remotos. É mais fácil de usar do que alternativas de linha de comando como scp, especialmente com interfaces GUI como FileZilla.

O que é FTP?

Antigamente, os servidores FTP públicos eram uma forma muito comum de disponibilizar arquivos para um grande número de pessoas. Hoje, o FTP ainda existe e é amplamente utilizado para tarefas administrativas.

Como configurar um servidor FTP Linux para transferências rápidas de arquivos – CloudSavvy IT

Embora alguma forma de FTP CLI seja enviada com a maioria dos principais sistemas operacionais, os clientes GUI gostam FileZilla torne o processo de mover arquivos entre servidores tão simples quanto arrastar e soltar do armazenamento local para o armazenamento remoto ou vice-versa. Todo o tráfego subjacente é tratado usando FTP.
A configuração requer que você instale e configure um servidor FTP, como vsftpd, na máquina remota que você deseja acessar.

Deve-se observar que usuários logados via FTP terão acesso ao seu sistema, assim como você. Existem etapas que você pode realizar para atenuar esses riscos, como colocar o acesso na lista de permissões e bloquear os usuários em seus diretórios pessoais.

Instalando vsftpd
Para começar, instale vsftpd do gerenciador de pacotes da sua distribuição. Para sistemas baseados em Debian como o Ubuntu, isso seria de apt:

sudo apt-get install vsftpd
Em seguida, você terá que iniciar o serviço e configurá-lo para ser executado no momento da inicialização:
systemctl start vsftpd
systemctl enable vsftpd

O FTP tem dois métodos principais de autenticação:

  • FTP anônimo, onde qualquer pessoa pode fazer login sem senha. Isso é usado para compartilhamento público de arquivos e está desabilitado por padrão.
  • Login de usuário local, que permite a qualquer usuário em /etc/passwd para acessar o FTP usando um nome de usuário e senha.

Você provavelmente desejará habilitar o login de usuário local e manter o acesso anônimo desabilitado. O login no FTP usando sua conta de usuário lhe dará acesso a qualquer coisa que sua conta possa acessar.

Abra /etc/vsftpd.conf em seu editor de texto favorito e altere a seguinte linha para YES:

local_enable=YES
Se você quiser fazer upload de arquivos, mude write_enable para YES também:

write_enable=YES
Com um reinício de vsftpd (systemctl restart vsftpd), agora você deve conseguir fazer login no FTP usando um cliente como o FileZilla ou a CLI em sua máquina pessoal.

Se você deseja habilitar o FTP apenas para usuários específicos, pode colocar o acesso na lista de permissões. Abra /etc/vsftpd.userliste adicione os nomes de cada conta que deseja ativar em linhas separadas.

 

nano /etc/vsftpd.userlist
Em seguida, adicione as seguintes linhas para /etc/vsftpd.conf:

userlist_enable=YES
userlist_file=/etc/vsftpd.userlist
userlist_deny=NO
Isso restringirá o acesso apenas aos usuários definidos no arquivo de lista de usuários e negará todos os outros.

Se você não quiser que os usuários acessem arquivos fora de seu diretório pessoal, você pode colocá-los em uma jaula chroot, o que os impedirá de interagir com quaisquer diretórios de nível superior. Você pode ativar isso removendo o comentário da seguinte linha em /etc/vsftpd.conf:

chroot_local_user=YES
Reiniciar vsftpd com systemctl restart vsftpd para aplicar as alterações.

 

Configurando FTPS
O tráfego FTP padrão é enviado não criptografado como HTTP. Isso obviamente não é bom, então você deve configurar vsftpd para criptografar o tráfego com TLS.

Publicidade

Para fazer isso, gere uma nova chave e assine uma solicitação com openssl:

openssl genrsa -des3 -out FTP.key

openssl req -new -key FTP.key -out certificate.csr
vsftpd precisa que a senha seja removida desta chave, então copie a chave e passe-a de volta para openssl:

cp FTP.key FTP.key.orig

openssl rsa -in FTP.key.orig -out ftp.key
Por fim, gere um certificado TLS usando esta chave:

openssl x509 -req -days 365 -in certificate.csr -signkey ftp.key -out mycertificate.crt
Copie a chave e o certificado para /etc/pki/tls/certs/:

cp ftp.key /etc/pki/tls/certs/

cp mycertificate.crt /etc/pki/tls/certs
Agora que todos os certificados estão configurados, você pode abrir mais uma vez /etc/vsftpd.confe adicione as seguintes linhas:

ssl_enable=YES
allow_anon_ssl=YES
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO
rsa_cert_file=/etc/pki/tls/certs/mycertificate.crt
rsa_private_key_file=/etc/pki/tls/certs/ftp.key
ssl_ciphers=HIGH
require_ssl_reuse=NO
Reiniciar vsftpd com systemctl restart vsftpd para aplicar as alterações.

 

RELATED ARTICLES

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Most Popular

Recent Comments