ejabberd starttls_required em c2s / s2s e desabilita Cifras SSLv3 + não seguras

5

Estou usando o ejabberd no Ubuntu. Minha configuração é assim:

  {5269, ejabberd_s2s_in, [
                       {shaper, s2s_shaper},
                       {max_stanza_size, 131072},
                       starttls_required
                      ]},
  {5222, ejabberd_c2s, [
                    {access, c2s},
                    {shaper, c2s_shaper},
                    {max_stanza_size, 65536},
                    starttls_required,
                    starttls, {certfile, "./xmpp.pem"}
                   ]},
  {s2s_use_starttls, true}.
  {s2s_certfile, "./xmpp.pem"}.

Ainda o xmpp.net está mostrando que o s2s TLS não é "obrigatório", mas apenas "permitido". Além disso SSLv3 está habilitado para c2s e s2s e algumas cifras inseguras como RC4.

Como posso desabilitar SSLv3 e RC4 e forçar starttls em todas as conexões?

Obrigado!

    
por pythonimus 26.02.2014 / 02:47

2 respostas

3

Requerendo StartTLS:

{s2s_use_starttls, require}. em vez de {s2s_use_starttls, true}. (lembre-se de que isso fará com que você não consiga se conectar ao gmail.com e a todos os domínios que hospedam).

cifras fracas:

Consulte o link . Acho que isso significa fazer algo como adicionar {ciphers, "..."} às opções ejabberd_c2s . Verifique com openssl ciphers -V '...' para ver quais cifras serão ativadas por uma cadeia de caracteres.

Tanto quanto eu posso dizer, não é possível desativar o SSLv3 sem recompilar o ejabberd você mesmo. Veja alguma discussão aqui .

    
por 30.04.2014 / 12:44
7

Essa é uma pergunta antiga, mas eu queria adicionar uma resposta atualizada para qualquer pessoa que pesquisar e encontrar isso, mas usando uma versão mais moderna do ejabberd (14.12 no momento da redação deste texto). As opções a seguir (no novo formato de configuração do YAML) devem tornar os starttls necessários, alterar a lista de cifras para algo decente e desabilitar o suporte SSL legado para conexões s2s:

s2s_use_starttls: required
s2s_ciphers: "HIGH:!3DES:!aNULL:!SSLv2:@STRENGTH"
s2s_protocol_options:                                                            
  - "no_sslv2"                                                                   
  - "no_sslv3" 

para conexões c2s, você pode fazer algo semelhante, exceto que ele está sob a diretiva de escuta c2s:

-
  port: 5222
  module: ejabberd_c2s
  protocol_options:                                                            
    - "no_sslv2"                                                               
    - "no_sslv3" 
  ciphers: ...                                                              
    
por 18.12.2014 / 21:02