Servidor FTP: Aprenda Como Instalar Um Servidor Seguro Com Linux

Ainda que você seja um iniciante em matéria de redes e servidores, estou quase certo de que já tenha ouvido falar em servidor FTP. Pois bem, o protocolo FTP é um dos mais importantes ao funcionamento da Internet como a conhecemos.

Não sei se você parou para pensar no assunto, mas a Web é constituída de um vasto conjunto de protocolos. Cada ação que tomamos online é executada e concluída graças a algum protocolo de rede, pois é assim que os computadores se comunicam com os servidores de serviços.

Por exemplo, quando navegar pelo browser é entendido como “usar a Internet”, na verdade, é o protocolo HTTP em ação. O mesmo ocorre com os emails, cuja transferência se dá pelos protocolos IMAP (ou POP3) e SMTP. Não obstante temos o protocolo TCP/IP, o qual nos concede um endereço de rede.

Seguindo essa linha de raciocínio, qual é a função do servidor FTP? Tendo em vista resolver as suas possíveis dúvidas, o presente conteúdo apresenta o conceito do protocolo e, de quebra, os procedimentos de instalação e configuração. Vamos dar o pontapé inicial?

APRENDA A DOMINAR O LINUX

Aprenda a dominar o LINUX de uma vez por todos, pegue sua cópia

  • Ferramentas para instalar softwares adicionais
  • Shell do LINUX passo a passo, e muito mais...

servidor ftp seguro no linux

O que é um servidor FTP?

O protocolo FTP (cuja sigla significa File Transfer Protocol) é um dos mais antigos ainda em uso no mundo. A sua função é sustentar a transferência de arquivos entre dispositivos — e o FTP cumpre a missão de maneira quase irretocável.

Na prática, o que o servidor FTP faz é fornecer acesso a diretórios, os quais são usados pelos usuários que se conectam a ele, e um cliente FTP fica autorizado a baixar os arquivos dos diretórios (ou fazer o upload) diretamente do servidor.

Leia também ...   Carreira de Administrador De Sistemas LINUX - Os TOP 4 Motivos Que Você Precisa Considerar Antes de Investir Seu Tempo e Dinheiro Nessa Área

Legal, mas como essa funcionalidade é aproveitada? Um dos serviços que mais utilizam do FTP é o desenvolvimento de páginas da Web. Antes da chegada da computação em nuvem, o FTP server era o método padrão para manter os arquivos online e à disposição dos usuários.

Embora a sua usabilidade seja prática e ainda esteja presente em muitos serviços por aí, não se pode ignorar o fato de que o protocolo existe desde os anos 70, o que faz da segurança um ponto bastante questionável. Você acha que há razão para isso? Vamos prosseguir com o assunto.

O protocolo FTP é seguro?

Em 1971, quando o FTP começou a ser implementado no mundo, a realidade do mundo tecnológico era diferente. Quem assistiu ao filme Piratas do Vale do Silício certamente se lembra de Steve Jobs encarando a programação como arte. Ou seja, muitos conceitos ficaram defasados desde aquela época.

Conforme a preocupação com a disseminação de vírus e malware, instrumentos usados pelos cibercriminosos para abrir brechas de segurança, houve a necessidade de otimizar a segurança do protocolo FTP — que até então carecia de mecanismos de segurança modernos.

Diante do avanço das ameaças digitais, como vírus e malwares, instrumentos primários dos cibercriminosos para abrir brechas de segurança, a Netscape desenvolveu um incrível recurso: o Secure Sockets Layer (vulgo SSL).

Logo, em 1996, o SSL foi incorporado ao FTP, dando origem ao FTPS, substancialmente mais robusto. O próprio HTTP começou a ser convertido para HTTPS, hoje considerado um requisito básico para sites que precisam de blindagem.

Posso entrar em mais detalhes sobre esse assunto futuramente, combinado? A questão é que, atualmente, dispomos de recursos suficientes para criar um servidor FTP seguro e de alto desempenho. Mas como fazê-lo? No próximo tópico apresento um passo a passo.

Leia também ...   Servidor VPS Linux - Tudo o que Você Precisa Saber para Iniciar

Como instalar um FTP server rápido e seguro no Linux?

Para instalar um servidor FTP Linux de alta performance e segurança, os especialistas costumam utilizar uma excelente ferramenta chamada vsftpd (Very Secure FTP Daemon).

Trata-se de um servidor para sistemas baseados em UNIX, distribuído sob licença GPL, e que oferece estabilidade, recursos avançados, proteção e muita velocidade. Sendo assim, o nosso primeiro passo é fazer a instalação e configuração do vsftpd no Linux.

Neste tópico, vamos aprender os procedimentos para a distribuição CentOS.

Instalação e configuração do servidor FTP no CentOS

Dando início ao procedimento, abra o terminal do CentOS e digite as linhas de comando, abaixo, para instalar o vsftpd, habilitá-lo e aplicar a sua inicialização automática.

yum install vsftpd
systemctl start vsftpd
systemctl enable vsftpd

Em seguida, acionando o firewall, libere o acesso de sistemas externos ao servidor FTP por meio da porta 21 (onde o FTP é instalado por padrão). Digite:

firewall-cmd --zone=public --permanent --add-port=21/tcp

firewall-cmd --zone=public --permanent --add-service=ftp

firewall-cmd –reload

Configurando o vsftpd

A partir de agora faremos a configuração do vsftpd no CentOS. No entanto, antes de prosseguir, faça o backup do arquivo de configuração original, localizado no diretório /etc/vsftpd/vsftpd.conf:

cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.orig

Pronto? Então vamos abrir o arquivo em questão e marcar os campos de configuração exatamente como no exemplo, a seguir:

anonymous_enable=NO # desabilita login anônimo

local_enable=YES # libera logins locais

write_enable=YES # habilita comandos FTP que modifiquem o sistema

local_umask=022 # regula a permissão dos usuários locais para criar arquivos

dirmessage_enable=YES # permite a exibição de mensagens quando usuários acessam um novo diretório pela primeira vez

xferlog_enable=YES # habilita o registro detalhado de downloads e uploads no servidor

connect_from_port_20=YES # usa a porta 20, reservada ao armazenamento de dados de FTP, no servidor para diferentes tipos de conexões

xferlog_std_format=YES # mantém o padrão de formato do arquivo de registros (log)

listen=NO # previne o vsftpd de executar o modo standalone

listen_ipv6=YES # faz com que o vsftpd atenda a sockets IPv6 em vez de IPv4

pam_service_name=vsftpd # concede nome ao modulo PAM (Pluggable Authentication Modules) a ser usado pelo serviço vsftpd

userlist_enable=YES # permite ao vsftpd carregar listas de usuários

tcp_wrappers=YES # ativa os empacotadores TCP

Permitindo userlist

Concluída a etapa anterior, passaremos a configurar o arquivo etc/vsftpd.userlist. O que faremos com ele? Simplesmente, alterar o seu ajuste padrão, o qual nega acesso à lista de usuários autorizados a fazer login no servidor FTP. Marque as opções conforme o exemplo:

userlist_enable=YES

userlist_file=/etc/vsftpd.userlist

userlist_deny=NO

Finalizando o processo, adicione as duas configurações abaixo para restringir os usuários FTP a seus respectivos diretórios home.

chroot_local_user=YES

allow_writable_crhoot=YES

Conclua salvando o arquivo e fechando-o.

Leia também ...   Distribuição Linux - Dicas para escolher a melhor e iniciar de uma vez por todas

Reforçando a segurança com o SELinux

Para efetivamente fazer do servidor FTP um ambiente seguro, vamos habilitar o SELinux para ler arquivos de diretórios home.

setsebool -P ftp_home_dir on

semanage boolean -m ftpd_full_access --on # o comando semanage concede permissão para o FTP ler e escrever nos arquivos de diretórios home
systemctl restart vsftpds

Gostou das dicas? Agora você pode colocá-las em prática na montagem do seu próprio servidor FTP e, dentro de pouco tempo, começar a aplicar o conhecimento profissionalmente.

Porém se a sua ideia é agilizar o processo de aprendizagem e tornar-se um profissional Linux de sucesso, conheça agora a página Profissionais Linux!

 

Sobre pedrodelfino

Trabalha a mais de 14 anos com administração de sistemas LINUX, dedicado em ensinar novos profissionais a atuar com servidores. Saiba mais aqui. "Caso queira participar de uma aula online comigo utilize o formulário Acima"

Você Precisa  { DOMINAR } O Sistema LINUX?