Proftpd
Obtendo e Instalando
Estive a algum tempo procurando e achei poucas coisas a respeito, achei apenas dois manuais que me ajudaram, porém não foram tão elucidativos.
Este arquivo será util para a configuração básica das seguintes ações em um servidor FTP:
* instalação * downloads e uploads
ProFTPd
É um software que provê serviço de FTP de forma bastante eficiente e tem como característica a segurança e flexibilidade.
Dentre as vantagens do ProFTPd podemos citar as principais:
* configuração fácil; * pode ser configurado em modo standalone ou através do inetd; * o PID é executado por um usuário desprivilegiado (nobody); * formato do arquivo de log extremamente configurável; * fácil administração do FTP, com relação a forma de restrição, acesso aos arquivos; * permite a configuração do número máximo de processos em execução, minimizando vulnerabilidades;
Onde Achar?
O download do ProFTPd poderá ser feito em:
* http://www.proftpd.org * http://rpmfind.net
Pré-instalação
Caso você já tenha o WU-FTPd instalado, siga os seguintes passos:
# rpm -q wu* ou # rpm -qa | grep wu*
Se a resposta for:
o pacote wu* não está instalado
Então prossiga para a instalação, porém se a resposta for:
wu-ftp-*****
Isso significa que o WU-FTPd está instalado no seu sistema. Para desinstalá-lo digite o seguinte comando:
# rpm -e wu-ftp
Instalando o ProFTPd
Uma vez que o WU-FTPd foi desinstalado, vá até o diretório em que você salvou o pacote do ProFTPd e digite:
Se ele for *.rpm:
# rpm -ivh proftp*.rpm
É possível que o inetd (ou o xinetd) esteja com algumas configurações do WU-FTPd. Ao editar /etc/inetd.conf podemos ter:
ftp stream tcp nowait root /usr/sbin/tcpd in.ftpd -l -a
Para eliminarmos o seu efeito devemos comentar esta linha colocando uma cerquilha (#) na frente da linha. Para que a modificação tenha efeito devemos iniciar o inetd:
# killall -HUP inetd
Iniciamos agora o ProFTPd utilizando o seu initscript:
# /etc/rc.d/init.d/proftpd start ou # /usr/local/sbin/./proftpd
Para verificar se o ProFTPd está rodando:
# ps auwx | grep proftpd
Se obtiver esta linha como resposta é porque ele esta rodando e aceitando conexões:
nobody 813 0.0 0.4 2264 556 ? S Sep15 0:00 [proftpd]
Se ele for .tar.bz2:
# tar -jxpvf proftp*
No diretório em quem os arquivos foram descarregados digite:
# ./configure --prefix=/usr/local/proftpd && make && make install
O uso do –prefix não é obrigatório, mas quem quiser está aí a configuração. Esse comando fará com que uma pasta com o nome de proftpd seja criada em /usr/local e dentro deverá conter os seguintes diretórios:
/usr/local/proftpd/etc /usr/local/proftpd/bin /usr/local/proftpd/sbin /usr/local/proftpd/var /usr/local/proftpd/man
Para quem não usou o –prefix:
/usr/local/etc /usr/local/bin /usr/local/sbin /usr/local/var /usr/local/man
Caso contenha a sua instalação foi feita com sucesso.
OBS: verificar se o sistema criou o usuário FTP, pois os arquivos ficarão no /home/ftp.
Entendendo a configuração do ProFTPd Como todo daemon, o ProFTPd é configurado através de um arquivo texto /etc/proftpd.conf. O ProFTPd lê o arquivo cada vez que é iniciado, portanto cada alteração feita neste arquivo só entrará em vigor após reiniciar o daemon.
No arquivo de configuração do ProFTPd é utilizado o conceito de contextos em sua configuração e em cada contexto temos as diretivas. Resumindo os contextos são opções globais de um comportamento e a diretiva seria um sub-comportamento.
Contextos
Os contextos são divididos em cinco categorias:
* contexto principal: contém as configurações default utilizadas por outros contextos; * contexto <Directory DIR>: determina o comportamento do ProFTPd no diretório. * contexto <Anonymous DIR>: determina o comportamento do ProFTPd quando o usuário anonymous se loga a partir de qual diretório(DIR) ele será servido; * contexto <Limit AÇÃO>: determina as ações no ProFTPd que são:
* LOGIN - usuário válido se logando. * READ - downloads de arquivos. * WRITE - uploads de arquivos. * STOR - upload de arquivos sem possibilidade de criação e deleção de diretórios.
* contexto <VirtualHost IP>: define a criação de ftp's virtuais;
Exemplo de Configuração
Este FTP eu montei e está rodando em um Red Hat 9.0. O pacote usado foi proftpd-1.2.9rc1.tar.bz2.
Nessa configuração você poderá realizar o download de arquivos na pasta PUB e o upload na pasta incoming. A pasta incoming deverá ser criada.
Para a configuração do webmin para quem gosta do padrão Windows seguem os caminhos:
* config file: /usr/local/"proftpd/"etc/proftpd.conf * executable: /usr/local/"proftpd/"sbin/proftpd * PID file: /usr/local/"proftpd/"var/proftpd.pid * ftpusers file: usr/local/"proftpd/"etc/ftpusers
“/”proftpd/” – é para quem usou o prefix la em cima na instalação.
proftpd.conf
# This is a basic ProFTPD configuration file.
# It establishes a single server and a single anonymous login.
# It assumes that you have a user/group "nobody" and "ftp"
# for normal/anonymous operation.
ServerName "Nome do seu Servidor"
ServerType standalone
ServerAdmin seuemail@dominio.com.br
ServerIdent off
DefaultServer on
RequireValidShell off
DefaultRoot ~
AllowLogSymlinks on
IdentLookups off
UseReverseDNS off
# Port 21 is the standard FTP port.
Port 21
# Umask 022 is a good standard umask to prevent new dirs and files
# from being group and world writable.
Umask 022
# To prevent DoS attacks, set the maximum number of child processes
# to 30. If you need to allow more than 30 concurrent connections
# at once, simply increase this value. Note that this ONLY works
# in standalone mode, in inetd mode you should use an inetd server
# that allows you to limit maximum number of processes per service
# (such as xinetd)
MaxInstances 60
# Set the user and group that the server normally runs at.
User nobody
Group nogroup
# This next option is required for NIS or NIS+ to work properly:
#PersistentPasswd off
SystemLog /var/log/proftpd.log
TransferLog /var/log/xferlog
# Normally, we want files to be overwriteable.
<Directory /*>
AllowOverwrite on
</Directory>
# A basic anonymous FTP server configuration.
# To enable this, remove the user ftp from /etc/ftpusers.
<Anonymous ~ftp>
RequireValidShell off
User ftp
Group ftp
# We want clients to be able to login with "anonymous" as well as "ftp"
UserAlias anonymous ftp
# Limit the maximum number of anonymous logins
MaxClients 50
# We want 'welcome.msg' displayed at login, and '.message' displayed
# in each newly chdired directory.
DisplayLogin welcome.msg
DisplayFirstChdir .message
# Limit WRITE everywhere in the anonymous chroot
<Limit WRITE>
DenyAll
</Limit>
</Anonymous>
<IfModule mod_tls.c>
TLSEngine off
TLSLog /var/log/proftpd-tls.log
TLSProtocol TLSv1
# Are clients required to use FTP over TLS when talking to this server?
TLSRequired on
# Server's certificate
TLSRSACertificateFile /etc/ssl/server.crt
TLSRSACertificateKeyFile /etc/ssl/server.key.unsecure
# CA the server trusts
TLSCACertificateFile /etc/ssl/ca.crt
# Authenticate clients that want to use FTP over TLS?
TLSVerifyClient off
</IfModule>
Instalando um servidor FTP
O servidor de FTP mais usado no Linux é o Proftpd, disponível em quase todas as distribuições. O funcionamento do FTP é bem mais simples que o do Samba ou SSH, por isso ele é usado como uma forma simples de disponibilizar arquivos na internet ou mesmo dentro da rede local, sem muita segurança.
A principal limitação do protocolo FTP é que todas as informações são transmitidas de forma não encriptada, como texto puro, incluindo os logins e senhas. Ou seja, alguém capaz de sniffar a conexão, usando um programa como o Ethereal, veria tudo que está sendo transmitido. Para aplicações onde é necessário ter segurança na transmissão dos arquivos, é recomendável usar o SFTP, o módulo do SSH que permite transferir arquivos de forma encriptada. Apesar disso, se você quiser apenas criar um repositório com alguns arquivos para download ou manter um servidor público como o Ibiblio.org, então o FTP é mais interessante, por ser mais simples de usar.
O servidor aceita conexões remotas usando os logins dos usuários cadastrados na máquina. Lembre-se de que, para adicionar novos usuários, você pode usar o comando adduser ou algum utilitário de administração incluído na distribuição, como o system-config-users, o users-admin ou o kuser.
Não é difícil instalar o Proftpd, basta procurar pelo pacote “proftpd” na distribuição usada, como em:
# apt-get install proftpd # yum install proftpd ou: # urpmi proftpd
No Debian, durante a instalação do pacote do Proftpd, geralmente são feitas algumas perguntas. A primeira é se você deseja deixar o servidor FTP ativo em modo standalone ou em modo inetd.
O standalone é mais seguro e mais rápido, enquanto o inetd faz com que ele fique ativo apenas quando acessado, economizando cerca de 400 KB de memória RAM (que fazem pouca diferença hoje em dia). O modo standalone é a opção recomendada.
Você terá também a opção de ativar o acesso anônimo, que permite acessos anônimos (somente leitura) na pasta “/home/ftp”, onde você pode disponibilizar alguns arquivos para acesso público. Nesse caso, os usuários fazem login no servidor usando a conta “anonymous” e um endereço de e-mail como senha. Caso prefira desativar o acesso anônimo, apenas usuários com login válido na máquina poderão acessar o FTP.
Depois de concluída a instalação, o servidor fica ativo por default, é inicializado automaticamente durante o boot e pode ser controlado manualmente através do serviço “proftpd”, como em “/etc/init.d/proftpd start”.
Você pode acessar outras máquinas da rede com servidores FTP ativos usando o GFTP, o Konqueror ou o próprio navegador. O FTP pode ser usado também como opção para transferência de arquivos na rede local. Uma das vantagens do FTP é que existem clientes para todas as plataformas, você pode baixar o Filezilla, um servidor e cliente de FTP for Windows, no http://filezilla.sourceforge.net/.
A configuração manual do servidor FTP é feita através do arquivo “/etc/proftpd/proftpd.conf”. Um arquivo configurado no CentOS pode ser usado no Mandriva (por exemplo), ou vice-versa; afinal, independentemente de estar usando o Debian, Fedora ou o Mandriva, o proftpd será sempre o mesmo.
Sempre que fizer alterações no arquivo, reinicie o servidor para que elas entrem em vigor. Para isso, use o comando “/etc/init.d/proftpd restart”.
No caso do Debian Etch e do Ubuntu 6.10 em diante, o servidor é configurado para utilizar endereços IPV6 por padrão, o que faz com que ele exiba uma mensagem de erro e aborte a inicialização caso você não tenha configurado a rede IPV6.
Para solucionar o problema, abra o arquivo “/etc/proftpd.conf” e substitua a linha:
UseIPv6 on
por:
UseIPv6 off
Uma das primeiras opções do arquivo é a opção Port, que permite alterar a porta usada pelo FTP. O padrão é usar a porta 21, mas muitos serviços de banda larga bloqueiam as portas 21 e 80 para que os usuários não rodem servidores. Nesse caso, você pode mudar para a porta 2121, por exemplo:
# Port 21 is the standard FTP port. Port 2121
Ao mudar a porta padrão do servidor, os usuários precisarão indicar manualmente a porta no cliente de ftp ou navegador, como em: ftp://200.234.213.23:2121.
Em seguida, vem a opção MaxClients, que limita o número de conexões simultâneas ao servidor FTP. Esta opção trabalha em conjunto com a limitação de banda (veja a seguir). Você pode limitar os downloads de cada usuário a um máximo de 10 KB/s e limitar o servidor a 3 usuários simultâneos, por exemplo. Assim, o FTP consumirá um máximo de 30 KB/s do link do servidor.
MaxClients 30
Se você quiser limitar o acesso dos usuários, prendendo-os em seus respectivos diretórios home, adicione a linha “DefaultRoot ~” no final do arquivo. Lembre-se de que no Linux o “~” é um curinga, que é automaticamente substituído pela pasta home do usuário que está logado:
DefaultRoot ~
Para ativar a limitação de banda, adicione a linha “TransferRate RETR 8:10″, onde o “8″ pode ser substituído pela taxa desejada, em KB/s, por usuário:
TransferRate RETR 8:10
A princípio, apenas os usuários que tiverem logins válidos no servidor poderão acessar o FTP. Caso você queira abrir um FTP público, adicione estas linhas no arquivo de configuração. Elas ficam comentadas no arquivo original:
<Anonymous ~ftp> User ftp Group nogroup UserAlias anonymous ftp DirFakeUser on ftp DirFakeGroup on ftp RequireValidShell off MaxClients 20 DisplayLogin welcome.msg DisplayFirstChdir .message <Directory *> <Limit WRITE> DenyAll </Limit> </Directory>
<Directory incoming> Umask 022 022 <Limit READ WRITE> DenyAll </Limit>
<Limit STOR> AllowAll </Limit> </Directory> </Anonymous>
A linha “MaxClients” determina o número máximo de usuários anônimos que poderão se logar simultaneamente no servidor. Essa opção é separada da MaxClients principal, que limita o número de usuários com login válido. Você pode permitir 30 usuários válidos e mais 20 anônimos, por exemplo.
A opção “DisplayLogin welcome.msg” indica a mensagem de boas-vindas que é mostrada quando os usuários fazem login no FTP. Por padrão, é exibido o conteúdo do arquivo “/home/ftp/welcome.msg”.
Os usuários anônimos têm acesso apenas aos arquivos dentro da pasta “/home/ftp”, que é visto pelo cliente FTP como o diretório raiz do servidor. Graças a isso, eles não têm como ver, muito menos alterar outros arquivos do sistema.
A seção “Directory incoming” mais abaixo cria uma pasta de upload (por padrão a “/home/ftp/incoming”), onde os anônimos poderão dar upload de arquivos. A idéia é que você veja periodicamente o conteúdo da pasta e mova o que for útil para a pasta “/home/ftp”, para que o arquivo fique disponível para download.
Por padrão, os anônimos não podem ver o conteúdo da pasta incoming, podem apenas dar upload. Se necessário, crie a pasta incoming usando os comandos:
# mkdir /home/ftp/incoming # chown nobody:nogroup /home/ftp/incoming
Para acessar o seu servidor, os clientes devem usar o login “anonymous” ou “ftp”, usando um endereço de e-mail qualquer como senha.
Uma medida comum ao ativar o upload para os usuários anônimos é usar uma partição separada para o FTP, para evitar que algum engraçadinho fique dando upload durante a madrugada até lotar o HD do servidor. Nesse caso, você precisa apenas adicionar uma linha no arquivo “/etc/fstab” para que a partição desejada seja montada durante o boot. Esta linha de exemplo montaria a partição /dev/hda3, formatada em ReiserFS na pasta /home/ftp:
/dev/hda3 /home/ftp reiserfs defaults 0 2
Criando usuários e ajustando as permissões de acesso
Imagine agora que você quer uma configuração um pouco mais complexa, com vários usuários, cada um tendo acesso a apenas uma pasta específica. Esta configuração pode ser usada em conjunto com os virtual hosts do Apache (permitindo que os responsáveis possam atualizar os arquivos do site), ou em situações em que seu servidor hospeda arquivos de diversos usuários ou projetos diferentes.
O responsável pelo projeto1 pode dar upload para a pasta “/home/ftp/projeto1″ (por exemplo), mas não deve ter acesso a outras pastas nem a outros arquivos do sistema. Os usuários anônimos terão acesso às pastas de todos os projetos, mas, naturalmente, apenas para leitura.
A forma mais simples de fazer isso é criar os usuários que terão acesso ao FTP, colocando a pasta a que terão acesso como seu diretório home e bloqueando o uso do shell, para que eles não possam acessar o servidor remotamente através de outros meios (via ssh, por exemplo).
Vamos começar adicionando no arquivo a opção que prende os usuários nos seus diretórios home. Abra o arquivo “/etc/proftpd.conf” e adicione (no final do arquivo) a linha:
DefaultRoot ~
Você vai precisar adicionar também a seção para liberar o acesso anônimo ao ftp, que vimos acima. Como queremos apenas que os mantenedores dos projetos possam dar upload de arquivos, remova a seção “<Directory incoming>”. A seção vai ficar:
<Anonymous ~ftp> User ftp Group nogroup UserAlias anonymous ftp DirFakeUser on ftp DirFakeGroup on ftp RequireValidShell off MaxClients 20 DisplayLogin welcome.msg DisplayFirstChdir .message <Directory *> <Limit WRITE> DenyAll </Limit> </Directory> </Anonymous>
O diretório padrão do FTP, onde os usuários anônimos terão acesso aos arquivos, é a “/home/ftp”. Em outras distribuições pode ser usada a pasta “/var/ftp”; dê uma olhada em como o arquivo vem configurado por padrão.
De volta à configuração, vamos começar criando subpastas para cada projeto:
# mkdir /home/ftp/projeto1 # mkdir /home/ftp/projeto2 # mkdir /home/ftp/projeto3 etc...
O próximo passo é ir adicionando os usuários no sistema, tendo o cuidado de fazer as alterações no diretório home e no shell padrão, para que eles tenham acesso somente via FTP e apenas à pasta desejada.
Para adicionar os usuários, use o comando “adduser”, como se estivesse criando uma conta normal:
# adduser projeto1
Acrescentando usuário projeto1... Acrescentando novo grupo projeto1 (1005). Acrescentando novo usuário projeto1 (1005) com grupo projeto1. Criando diretório pessoal /home/projeto1. Copiando arquivos de /etc/skel Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully
Veja que por padrão ele cria a pasta “/home/projeto1″, que passa a ser o diretório home do usuário criado. Entretanto, neste caso queremos que o home seja a pasta “/home/ftp/projeto1″, onde ele dará upload dos arquivos.
Para alterar isso, abra o arquivo “/etc/passwd”, onde ficam guardadas as informações dos usuários. Na última linha do arquivo você verá:
projeto1:x:1005:1005:,,,:/home/projeto1:/bin/bash
Vamos alterar o “/home/projeto1″ para “/home/ftp/projeto1″ (para trocar o home) e o “/bin/bash” para “/bin/false”, de forma a impedir que usuário tenha acesso ao shell do servidor e possa executar comandos (fazendo o que não deve no servidor). Se você preferir que, além do acesso via ftp, os usuários tenham acesso via ssh, então mantenha o “/bin/bash”. Depois das alterações, a linha ficará:
projeto1:x:1005:1005:,,,:/home/ftp/projeto1:/bin/false
Você pode aproveitar para remover a pasta /home/projeto1, já que não precisaremos mais dela:
# rm -rf /home/projeto1/
Na verdade, esse processo serve para que você entenda melhor o procedimento de criação destes usuários “falsos” no Linux. Estas alterações podem ser especificadas ao criar o usuário. Não é preciso sair editando todos os arquivos manualmente. O comando para criar o usuário “projeto1″, usando a pasta “/home/ftp/projeto1″ como home e o “/bin/false” como shell, seria:
# adduser --home /home/ftp/projeto1 --shell /bin/false --no-create-home projeto1
Não esqueça de acertar as permissões da pasta /home/ftp/projeto1:
# chown -R projeto1:projeto1 /home/ftp/projeto1/
Depois de concluir a configuração, falta só reiniciar o servidor FTP para que as configurações entrem em vigor:
# /etc/init.d/proftpd restart
Em distribuições derivadas do Debian, você vai precisar adicionar a linha “/bin/false” no final do arquivo /etc/shells para que ele possa ser usado:
# echo "/bin/false" >> /etc/shells
Feito isso, você já conseguirá se logar no servidor usando o login criado. O usuário não enxerga nada fora da pasta “/home/ftp/projeto1″ e todos os arquivos que ele der upload vão para lá.
A senha de acesso ao FTP é a mesma definida na hora de criar o usuário. O Proftpd simplesmente aproveita o sistema de autenticação do sistema. Se você precisar alterar a senha do usuário, use o comando “passwd projeto1″.
Para usar o Proftpd em conjunto com os virtual hosts do Apache, a configuração é a mesma, com exceção de que você não precisaria habilitar o acesso anônimo, já que o FTP seria usado apenas pelos webmasters dos sites hospedados.
Nesse caso, ao criar os usuários, use a pasta com os arquivos do site como home, como em:
# adduser --home /var/www/joao --shell /bin/false --no-create-home joao
A opção “–no-create-home” evita que o sistema copie os arquivos do diretório “/etc/skel” (como os arquivos .bashrc, .bash_history e outros) para dentro da pasta de arquivos, “sujando” o diretório. Ao terminar, não se esqueça de alterar as permissões da pasta, de forma que o usuário tenha permissão de escrita:
# chown -R joao:joao /var/www/joao
Graças ao uso da opção “DefaultRoot ~”, os usuários terão acesso apenas à pasta com os arquivos do site, sem acesso às pastas dos outros usuários ou às demais pastas do sistema. Esta é justamente a configuração usada na maioria dos serviços de shared hosting onde o acesso é feito via FTP. O sistema não é nada seguro e de vez em quando algumas das senhas são roubadas, mas, como ele é fácil de implementar e poucos usuários tem dificuldades em acessar as contas, a tradição continua.
FTP + TLS
É possível adicionar uma camada de segurança ao protocolo FTP ativando a encriptação via TLS. Nem todos os clientes de FTP suportam encriptação, de forma que a mudança criará dificuldades aos usuários menos técnicos, mas, por outro lado, elimina o grande risco do FTP, evitando que as senhas possam ser capturadas durante as conexões.
Presumindo que você já tenha instalado o pacote do Proftpd e feito a configuração básica, o próximo passo é instalar o pacote “openssl”. Ele é usado por diversos outros serviços, por isso é provável que já esteja instalado:
# apt-get install openssl
Em seguida, crie um diretório dentro da pasta “/etc/proftpd” para armazenar os certificados, como em:
# mkdir /etc/proftpd/cert
O próximo passo é gerar os certificados usando o comando “openssl”, como em:
# openssl req -new -x509 -days 3650 -nodes -out \ /etc/proftpd/cert/proftpd.cert.pem -keyout /etc/proftpd/cert/proftpd.key.pem
A opção “-days” especifica o tempo de validade do certificado. Nesse caso, estou gerando um certificado válido por 10 anos para evitar que os clientes passem a receber erros relacionados ao certificado caso ele expire antes que tenha tempo de atualizá-lo. Entretanto, do ponto de vista da segurança, o ideal é gerar certificados válidos por apenas um ano ou dois e substituí-los mais regularmente.
Depois de responder às perguntas feitas durante a geração do certificado (país, estado, cidade, nome da empresa, etc.), serão gerados os arquivos “proftpd.cert.pem” e “proftpd.key.pem” dentro da pasta “/etc/proftpd/cert”, que correspondem ao certificado.
O próximo passo é alterar a configuração do Proftpd de forma que ele ative o uso da encriptação. Abra o arquivo “/etc/proftpd/proftpd.conf” e procure pelas linhas:
<IfModule mod_tls.c> TLSEngine off </IfModule>
Para ativar o uso do TLS, você deve substituí-las por:
<IfModule mod_tls.c> TLSEngine on TLSLog /var/log/proftpd/tls.log TLSProtocol SSLv23 TLSOptions NoCertRequest TLSRSACertificateFile /etc/proftpd/cert/proftpd.cert.pem TLSRSACertificateKeyFile /etc/proftpd/cert/proftpd.key.pem TLSVerifyClient off TLSRequired on </IfModule>
Note que as opções “TLSRSACertificateFile” e “TLSRSACertificateKeyFile” indicam a localização dos dois arquivos com o certificado. Se você estiver usando uma pasta diferente da “/etc/proftpd/cert” para armazená-los, não esqueça de indicar a localização correta. Outra opção importante é a “TLSRequired”, que determina se o uso da encriptação será obrigatório ou não. Ao usar “TLSRequired on”, como no exemplo, apenas os clientes que tiverem ativado o uso do SSL poderão se conectar ao servidor, enquanto que ao usar “TLSRequired off” a encriptação passa a ser opcional.
Depois de salvar a configuração, reinicie o serviço:
# /etc/init.d/proftpd restart
Para ativar a encriptação no cliente, é necessário usar o protocolo “FTP over SSL”, em vez do protocolo FTP regular. No Filezilla, por exemplo, a opção aparece dentro do Site Manager, ao visualizar as propriedades da conexão:
Ao conectar a partir do cliente, você verá entradas similares a essas no arquivo “/var/log/proftpd/tls.log” (no servidor), sinal de que a encriptação está sendo usada:
Jun 30 12:54:46 mod_tls/2.1.1[2326]: TLSv1/SSLv3 connection accepted, using cipher DHE-RSA-AES256-SHA (256 bits) Jun 30 12:54:47 mod_tls/2.1.1[2326]: Protection set to Private Jun 30 12:54:47 mod_tls/2.1.1[2326]: starting TLS negotiation on data connection Jun 30 12:54:47 mod_tls/2.1.1[2326]: TLSv1/SSLv3 data connection accepted, using cipher DHE-RSA-AES256-SHA (256 bits) Jun 30 12:54:47 mod_tls/2.1.1[2325]: starting TLS negotiation on data connection
O grande problema é que o FTP over SSL não é suportado por todos os clientes de FTP, o que dificulta seu uso. Em geral, é mais fácil conseguir que os usuários migrem para o SFTP (veja detalhes sobre ele no capítulo sobre o SSH), que é suportado por um número maior de clientes de FTP do que conseguir fazer uma migração completa para o TLS.




Thanks a lot for that extremely cool post.