Segurança Servidor · 4 min read · Nov 29, 2025
Como proteger seu servidor ISPConfig 3 contra o ataque SSL poodle
Versão 1.2
Autor: Till Brehm
Siga o howtoforge no Twitter
Publicado 2014-10-16
No guia a seguir, descreverei os passos para proteger seu servidor contra o recente ataque SSL poodle. Usarei um servidor perfeito ISPConfig 3 no Debian 7 para meus exemplos, mas os mesmos passos funcionarão em qualquer outra distribuição Linux também. Um servidor de hospedagem ISPConfig padrão executa os seguintes serviços: Servidor Web (Nginx ou apache), Servidor de Email (Postfix e Dovecot / Courier), Servidor FTP (pure-ftpd) que oferecem conexões SSL / TLS e são alvos potenciais para um ataque poodle.
Assumo que você está logado em seu servidor como usuário root. Se você estiver trabalhando no Ubuntu e não estiver logado como root, então acrescente “sudo” a todos os comandos ou execute “sudo -“ para se tornar o usuário root.
Servidor Web Apache
Para proteger um servidor web apache, a linha
SSLProtocol all -SSLv2 -SSLv3
deve ser adicionada em cada vhost SSL no servidor. Se a configuração SSLProtocol não estiver definida explicitamente em um vhost, então a configuração global será aplicada. No caso de um servidor ISPConfig 3, a configuração SSLProtocol pode ser definida globalmente, pois os vhosts não substituem essa configuração. Em um servidor Debian ou Ubuntu, abra o arquivo /etc/apache2/mods-available/ssl.conf em um editor
nano /etc/apache2/mods-available/ssl.conf
role para baixo até ver as linhas:
SSLProtocol all -SSLv2
e altere-as para:
SSLProtocol all -SSLv2 -SSLv3
Então reinicie o apache
service apache2 restart
Servidor Web Nginx
Para um servidor web nginx, a linha
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
deve ser adicionada em cada seção SSL server { }. Se a configuração SSLProtocol não estiver definida explicitamente em uma seção server { }, então a configuração global da seção http { } será aplicada. No caso de um servidor ISPConfig 3, a configuração SSLProtocol pode ser definida globalmente na seção http { } já que as seções server { } não substituem essa configuração. Em um servidor Debian ou Ubuntu, abra o arquivo /etc/nginx/nginx.conf em um editor
nano /etc/nginx/nginx.conf
e adicione a linha:
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
depois da linha:
http {
então reinicie o nginx:
service nginx restart
Servidor de Email Postfix
Para forçar o postfix a não fornecer os protocolos SSLv2 e SSLv3, execute estes comandos:
postconf -e ‘smtpd_tls_mandatory_protocols=!SSLv2,!SSLv3’
postconf -e ‘smtpd_tls_protocols=!SSLv2,!SSLv3’
postconf -e ‘smtp_tls_protocols=!SSLv2,!SSLv3’
Isso adicionará as linhas:
smtpd_tls_mandatory_protocols = !SSLv2,!SSLv3
smtpd_tls_protocols = !SSLv2,!SSLv3
smtp_tls_protocols = !SSLv2,!SSLv3
no arquivo /etc/postfix/main.cf. Então execute este comando para aplicar a nova configuração:
service postfix restart
Servidor Dovecot IMAP / POP3
Dovecot suporta configurações de protocolo SSL na versão 2.1 e superior. Portanto, o primeiro passo é descobrir qual versão do dovecot você está usando. O comando é:
dovecot –version
no meu servidor eu obtive o seguinte resultado:
root@server1:~# dovecot –version
2.1.7
root@server1:~#
o que indica que meu servidor suporta configurações ssl_protocol.
Edite o arquivo de configuração do dovecot
nano /etc/dovecot/dovecot.conf
e adicione a linha
ssl_protocols = !SSLv2 !SSLv3
depois da linha ssl_key, então seu arquivo deve ficar assim:
ssl_key = ssl_protocols = !SSLv2 !SSLv3
E finalmente reinicie o dovecot para aplicar as alterações:
service dovecot restart
Servidor Courier POP3 / IMAP
O servidor courier imap e pop3 oferece conexões sobre o protocolo SSLv3 por padrão, então precisamos reconfigurá-lo também. Os arquivos de configuração do courier estão na pasta /etc/courier/. Primeiro começamos com o arquivo de configuração do daemon IMAP:
nano /etc/courier/imapd-ssl
Adicione ou substitua as seguintes linhas:
IMAPDSTARTTLS=YES
IMAP_TLS_REQUIRED=1
TLS_PROTOCOL=TLS1
TLS_STARTTLS_PROTOCOL=TLS1
Então edite o arquivo de configuração do daemon POP3:
nano /etc/courier/pop3d-ssl
Adicione ou substitua as seguintes linhas:
POP3STARTTLS=YES
POP3_TLS_REQUIRED=1
TLS_PROTOCOL=TLS1
TLS_STARTTLS_PROTOCOL=TLS1
Finalmente reinicie os daemons courier:
service courier-imap-ssl restart
service courier-pop-ssl restart
FTP com pure-ftpd
Proteger o pure-ftpd no Debian e Ubuntu é um pouco mais complicado, pois o script /usr/sbin/pure-ftpd-wrapper do Debian não suporta a opção -J que é usada pelo pure-ftpd para definir os protocolos ssl. Portanto, o primeiro passo é que adicionamos suporte para a opção -J no script wrapper. Isso não funcionará no Debian 6, pois a versão do pure-ftpd no Debian 6 é muito antiga e não possui uma configuração para protocolos SSL. Portanto, a única opção para os usuários do Debian 6 será atualizar para o Debian 7. Abra o arquivo
nano /usr/sbin/pure-ftpd-wrapper
e role para baixo até a linha
‘TLS’ => [‘-Y %d’, \&parse_number_1], e adicione esta nova linha logo após:
‘TLSCipherSuite’ => [‘-J %s’, \&parse_string],
Finalmente, criamos um arquivo de configuração que contém os protocolos SSL que queremos permitir:
echo ‘HIGH:MEDIUM:+TLSv1:!SSLv2:!SSLv3’ > /etc/pure-ftpd/conf/TLSCipherSuite
para aplicar as alterações, reinicie o pure-ftpd. No meu servidor, uso pure-ftpd com mysql, então o nome do daemon é pure-ftpd-mysql em vez de apenas pure-ftpd.
service pure-ftpd-mysql restart
o resultado deve ser semelhante a isso:
root@server1:~# service pure-ftpd-mysql restart
Reiniciando o servidor ftp: Executando: /usr/sbin/pure-ftpd-mysql-virtualchroot -l mysql:/etc/pure-ftpd/db/mysql.conf -l pam -Y 1 -8 UTF-8 -H -J HIGH:MEDIUM:+TLSv1:!SSLv2:!SSLv3 -D -b -O clf:/var/log/pure-ftpd/transfer.log -E -u 1000 -A -B
root@server1:~#
então a opção -J foi adicionada com sucesso à sequência de inicialização do daemon.
Links
- Ataque poodle SSL
- ISPConfig
Receba novas postagens na sua caixa de entrada
Sem spam. Cancele a assinatura a qualquer momento.