Servidor FTP: Aprenda Como Instalar Um Servidor Seguro Com Linux

JUNTE-SE A MAIS DE 110.000 PESSOAS QUE JÁ TEM UMA CÓPIA

Ubuntu: Iniciando com Linux de maneira prática e rápida

servidor ftp seguro no linux

Compartilhe este post

Share on facebook
Share on linkedin
Share on twitter
Share on email

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?

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.

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.

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.

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!

 

Compartilhe este post

Share on facebook
Share on linkedin
Share on twitter
Share on email

Artigos Recentes

Aprenda a dominar o Linux de uma vez por todas

Aprenda a dominar o Linux de uma vez por todas