Como instalar e configurar o servidor FTP no Ubuntu

FTP (File Transfer Protocol) é um protocolo de rede padrão relativamente antigo e mais usado usado para carregar/descarregar ficheiros entre dois computadores através de uma rede. No entanto, FTP por sua insegura original, porque transmite dados juntamente com credenciais de usuário (nome de usuário e senha) sem criptografia.aviso: se planeia usar FTP, pense em Configurar a ligação FTP com SSL / TLS (irá cobrir no próximo artigo). Caso contrário, é sempre melhor usar FTP seguro, como SFTP.,

Sugeriu Leia: Como Instalar e Secure FTP Server CentOS 7

neste tutorial, vamos mostrar como instalar, configurar e proteger um servidor de FTP (VSFTPD em pleno “Very Secure FTP Daemon”) no Ubuntu, para ter uma segurança poderosa contra FTP vulnerabilidades.

Passo 1: Instalar o servidor VsFTP no Ubuntu

1. Primeiro, precisamos atualizar a lista de fontes de pacotes do sistema e, em seguida, instalar o pacote binário VSFTPD da seguinte forma:

$ sudo apt-get update$ sudo apt-get install vsftpd

2., Uma vez concluída a instalação, o serviço será desativado inicialmente, portanto, é necessário iniciá-lo manualmente para o tempo médio e também habilitá-lo para iniciar automaticamente a partir da próxima inicialização do sistema:

3., Seguinte, se você tiver firewall UFW enabled ( não ativada por padrão) no servidor, você tem que abrir as portas de 21 e 20, onde o FTP daemons estão a ouvir, a fim de permitir o acesso a serviços de FTP de máquinas remotas, em seguida, adicionar as novas regras de firewall da seguinte forma:

$ sudo ufw allow 20/tcp$ sudo ufw allow 21/tcp$ sudo ufw status

Passo 2: Configurar e Proteger VsFTP Server no Ubuntu

4. Vamos agora executar algumas configurações para configurar e proteger o nosso servidor FTP, primeiro vamos criar uma cópia de segurança do arquivo de configuração original /etc/vsftpd/vsftpd.,conf assim:

$ sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.orig

a seguir, vamos abrir o ficheiro de configuração do vsftpd.

$ sudo vi /etc/vsftpd.confOR$ sudo nano /etc/vsftpd.conf

Adicionar/modificar as seguintes opções com estes valores:

anonymous_enable=NO # disable anonymous loginlocal_enable=YES# permit local loginswrite_enable=YES# enable FTP commands which change the filesystemlocal_umask=022 # value of umask for file creation for local usersdirmessage_enable=YES # enable showing of messages when users first enter a new directoryxferlog_enable=YES# a log file will be maintained detailing uploads and downloadsconnect_from_port_20=YES # use port 20 (ftp-data) on the server machine for PORT style connectionsxferlog_std_format=YES # keep standard log file formatlisten=NO # prevent vsftpd from running in standalone modelisten_ipv6=YES # vsftpd will listen on an IPv6 socket instead of an IPv4 onepam_service_name=vsftpd # name of the PAM service vsftpd will useuserlist_enable=YES # enable vsftpd to load a list of usernamestcp_wrappers=YES # turn on tcp wrappers

5. Agora, configure VSFTPD para permitir / negar o acesso FTP aos usuários com base no arquivo de Lista de usuários /etc/vsftpd.userlist.

Note que, por padrão, os usuários listados no userlist_ file= / etc / vsftpd.userlist é negado acesso ao login com userlist_deny=YESopção seuserlist_enable=YES.,

But, the option userlist_deny=NO twists the meaning of the default setting, so only users whose username is explicitly listed in userlist_file=/etc / vsftpd.o userlist poderá entrar no servidor FTP.

importante: quando os utilizadores se autenticam no servidor FTP, são colocados numa cadeia chrooted, este é o directório raiz local que irá actuar como o seu directório pessoal apenas para a sessão FTP.

em seguida, vamos olhar para dois cenários possíveis de como definir o diretório chrooted jail (raiz local), como explicado abaixo.6., Neste ponto, vamos adicionar/modificar / descomentar estas duas opções seguintes para restringir os usuários de FTP para suas diretorias Home.

chroot_local_user=YESallow_writeable_chroot=YES

a opção chroot_local_user=YES o que é importante significa que os utilizadores locais serão colocados numa prisão chroot, a sua pasta pessoal por omissão após o início da sessão.

E devemos também entender que VSFTPD não permite a jaula de diretório para ser gravado, por padrão por razões de segurança, no entanto, podemos usar a opção allow_writeable_chroot=SIM para desativar essa configuração.

Salve o arquivo e feche-o., Então temos que reiniciar os Serviços VSFTPD para que as mudanças acima façam efeito:

------------- On SystemD ------------- # systemctl restart vsftpd------------- On SysVInit ------------- # service vsftpd restart

Step 3: Testando o servidor VsFTP no Ubuntu

7. Agora vamos testar o servidor de FTP através da criação de um usuário de FTP com o comando useradd da seguinte forma:

$ sudo useradd -m -c "Aaron Kili, Contributor" -s /bin/bash aaronkilik$ sudo passwd aaronkilik

Então, temos que listar explicitamente o usuário aaronkilik no arquivo /etc/vsftpd.userlist with the echo command and tee command as below:

$ echo "aaronkilik" | sudo tee -a /etc/vsftpd.userlist$ cat /etc/vsftpd.userlist

8. Agora é hora de testar nossas configurações acima estão funcionando conforme necessário., Vamos começar por testar logins anônimos; podemos ver claramente a partir da saída abaixo que logins anônimos não são permitidos no servidor FTP:

9. Em seguida, vamos testar se um usuário não está listado no arquivo /etc/vsftpd.o userlist terá permissão para se autenticar, o que não é verdadeiro a partir da saída que se segue:

10. Agora vamos realizar um teste final para determinar se um usuário listado no arquivo /etc/vsftpd.userlist, é realmente colocado em seu diretório pessoal após o login., E esta é a verdade desde a saída abaixo:

Verificar FTP Login no Ubuntu

Aviso: a Definição da opção allow_writeable_chroot=YES pode ser tão perigoso, tem possíveis implicações de segurança, especialmente se os usuários têm permissão de upload, ou ainda mais, do acesso ao shell. Usa-o apenas se souberes exactamente o que estás a fazer.

devemos notar que estas implicações de segurança não são específicas do VSFTPD, eles também podem afetar todos os outros daemons FTP que se oferecem para colocar usuários locais em cadeias chroot.,

Por esta razão, na secção abaixo, explicaremos um método mais seguro de definir um directório raiz local diferente e não passível de escrita para um utilizador.

Passo 4: Configurar as pastas Home do utilizador FTP no Ubuntu

11. Agora, abra o arquivo de configuração VSFTPD mais uma vez.,

$ sudo vi /etc/vsftpd.confOR$ sudo nano /etc/vsftpd.conf

e comente a unsecure opção usando o # caractere, como mostrado abaixo:

#allow_writeable_chroot=YES

em seguida, criar a alternativa de raiz local do diretório para o usuário (aaronkilik, é seu, é, possivelmente, não é a mesma) e defina as permissões necessárias desabilitar permissões de escrita para todos os outros usuários para este diretório:

$ sudo mkdir /home/aaronkilik/ftp$ sudo chown nobody:nogroup /home/aaronkilik/ftp$ sudo chmod a-w /home/aaronkilik/ftp

12., Em seguida, crie uma pasta sob a raiz local com as permissões apropriadas onde o Utilizador irá guardar os seus ficheiros:

Depois, adicione/modifique as opções abaixo no ficheiro de configuração do VSFTPD com os seus valores correspondentes:

Salve o ficheiro e feche-o. E reinicie os Serviços VSFTPD com as configurações recentes:

------------- On SystemD ------------- # systemctl restart vsftpd------------- On SysVInit ------------- # service vsftpd restart

13. Agora, vamos realizar uma verificação final e certificar-nos de que o diretório raiz local do Usuário é o diretório FTP que criamos em seu diretório Home.,

FTP User Home Directory Login

Share

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *