Admin Linux - Instalar FTP Anônimo

Antes de nos aprofundarmos na instalação do FTP no CentOS, precisamos aprender um pouco sobre seu uso e segurança. FTPé um protocolo realmente eficiente e bem refinado para a transferência de arquivos entre os sistemas de computador. O FTP tem sido usado e refinado há algumas décadas. Para transferir arquivos de forma eficiente em uma rede com latência ou para velocidade absoluta, o FTP é uma ótima escolha. Mais do que SAMBA ou SMB.

No entanto, o FTP possui alguns problemas de segurança. Na verdade, alguns problemas graves de segurança. O FTP usa um método de autenticação de texto simples muito fraco. É por esse motivo que as sessões autenticadas devem contar com sFTP ou FTPS, onde TLS é usado para criptografia ponta a ponta das sessões de login e transferência.

Com as advertências acima, o FTP simples e antigo ainda tem seu uso no ambiente de negócios hoje. O principal uso é, repositórios de arquivos FTP anônimos. Esta é uma situação em que nenhuma autenticação é garantida para fazer download ou upload de arquivos. Alguns exemplos de uso de FTP anônimo são -

  • Grandes empresas de software ainda usam repositórios de ftp anônimos, permitindo que os usuários da Internet baixem shareware e patches.

  • Permitir que usuários da Internet carreguem e baixem documentos públicos.

  • Alguns aplicativos enviarão automaticamente logs criptografados e arquivados ou arquivos de configuração para um repositório via FTP.

Portanto, como um administrador CentOS, ser capaz de instalar e configurar FTP ainda é uma habilidade projetada.

Estaremos usando um daemon FTP chamado vsFTPou Daemon FTP Muito Seguro. O vsFTP tem sido usado em desenvolvimento há algum tempo. Ele tem a reputação de ser seguro, fácil de instalar e configurar e é confiável.

Step 1 - Instale o vsFTPd com o gerenciador de pacotes YUM.

[[email protected]]# yum -y install vsftpd.x86_64

Step 2 - Configure o vsFTP para iniciar na inicialização com systemctl.

[[email protected]]# systemctl start vsftpd 
[[email protected]]# systemctl enable vsftpd 
Created symlink from /etc/systemd/system/multi-
user.target.wants/vsftpd.service to /usr/lib/systemd/system/vsftpd.service.

Step 3 - Configure o FirewallD para permitir o controle de FTP e sessões de transferência.

[[email protected]]# firewall-cmd --add-service=ftp --permanent 
success 
[[email protected]]#

Certifique-se de que nosso daemon de FTP esteja em execução.

[[email protected]]# netstat -antup | grep vsftp 
tcp6       0       0 :::21       :::*       LISTEN       13906/vsftpd         
[[email protected]]#

Step 4 - Configure vsFTPD para acesso anônimo.

Crie um diretório raiz de FTP

[[email protected]]# mkdir /ftp

Altere o proprietário e o grupo da raiz do FTP para ftp

[[email protected]]# chown ftp:ftp /ftp
Set minimal permissions for FTP root:

[[email protected]]# chmod -R 666 /ftp/

[[email protected]]# ls -ld /ftp/
drw-rw-rw-. 2 ftp ftp 6 Feb 27 02:01 /ftp/

[[email protected]]#

Nesse caso, fornecemos aos usuários acesso de leitura / gravação a toda a árvore raiz do FTP.

Configure /etc/vsftpd/vsftpd.conf "

[[email protected]]# vim /etc/vsftpd/vsftpd.conf
# Example config file /etc/vsftpd/vsftpd.conf
#
# The default compiled in settings are fairly paranoid. This sample file
# loosens things up a bit, to make the ftp daemon more usable.
# Please see vsftpd.conf.5 for all compiled in defaults.
#
# READ THIS: This example file is NOT an exhaustive list of vsftpd options.
# Please read the vsftpd.conf.5 manual page to get a full idea of vsftpd's
# capabilities.

Queremos alterar as seguintes diretivas no arquivo vsftp.conf .

  • Habilite o upload anônimo descomentando anon_mkdir_write_enable = YES

  • chown arquivos carregados para propriedade do usuário ftp do sistema

    chown_uploads = SIM

    chown_username = ftp

  • Altere o usuário do sistema usado pelo vsftp para o usuário ftp: nopriv_user = ftp

  • Defina o banner personalizado para o usuário ler antes de fazer login.

    ftpd_banner = Bem-vindo ao nosso repositório de FTP anônimo. Todas as conexões são monitoradas e registradas.

  • Vamos definir apenas conexões IPv4 -

    ouvir = SIM

    listen_ipv6 = NÃO

Agora, precisamos reiniciar ou HUP o serviço vsftp para aplicar nossas alterações.

[[email protected]]# systemctl restart vsftpd

Vamos nos conectar ao nosso host FTP e ter certeza de que nosso daemon FTP está respondendo.

[[email protected] rdc]# ftp 10.0.4.34 
Connected to localhost (10.0.4.34). 
220 Welcome to our Anonymous FTP Repo. All connections are monitored and logged. 
Name (localhost:root): anonymous 
331 Please specify the password. 
Password: 
'230 Login successful. 
Remote system type is UNIX. 
Using binary mode to transfer files. 
ftp>