Ubuntu 12.04 LTS, SSL, IRC: Não é possível construir com o OpenSSL

4

Eu tenho um pequeno servidor rodando o Ubuntu 12.04 LTS. Nele eu queria configurar o IRC com suporte a SSL. Parece que o híbrido-irid é mais popular. Eu não sou casado para usá-lo para que outras opções sejam bem-vindas. No entanto, não vejo outras opções.

Eu instalei usando o apt-get. Esse não é o problema. O problema é que a versão do apt-get install não habilita o SSL. Tente se conectar à porta SSL 6697 usando SSL e isso não funcionará. Daí o trabalho para construí-lo sozinho. Se você realmente seguir a fonte do pacote ircd-hybrid, a configuração requer que você o edite e adicione a opção "USE_OPENSSL = 1".

Como o híbrido não suporta o OpenSSL por padrão, você precisa fazer um patch manual para que ele funcione.

De qualquer forma, eu segui as instruções (listei um casal no final) e instalei o híbrido-irid sem problemas. Está realmente correndo agora. No entanto, notei que o SSL não está funcionando. A porta nunca está sendo ouvida. Indo mais fundo, olho para o processo de construção e percebo que o OpenSSL não está sendo incluído.

Então eu tenho tentado construir e só para esclarecer, aqui está a saída ./configure:

Compiling ircd-hybrid 7.2.2

Installing into: /usr
Ziplinks ................ yes
**OpenSSL ................. no**
Modules ................. shared
IPv6 support ............ yes
Net I/O implementation .. sigio
EFnet server ............ no (use example.conf)
Halfops support ......... yes
Small network ........... no
G-Line voting ........... yes

Alguns alinham-se na saída do script ./configure, noto que parece que todos os algos de criptografia estão indisponíveis!

checking for OpenSSL... /usr
checking for OpenSSL 0.9.6 or above... found
checking for RSA_free in -lcrypto... yes
checking for EVP_bf_cfb... no
checking for EVP_cast5_cfb... no
checking for EVP_idea_cfb... no
checking for EVP_rc5_32_12_16_cfb... no
checking for EVP_des_ede3_cfb... no
checking for EVP_des_cfb... no

Se você analisar o script de configuração, verá que pelo menos uma das bibliotecas de criptografia precisa ser ativada. Este é um palpite, já que não estou inteiramente certo sobre isso. Parece que o OpenSSL desativou o RC5 e alguns outros algos.

Eu reconstruí e instalei o OpenSSL com o enable-rc5 e outros flags, mas sem dados.

Isso está no Ubuntu 12.04. Socorro? Alguém? Gostaria de ativar o SSL no IRC no meu servidor pessoal. Não precisa ser híbrido-irid.

Eu tenho procurado nos fóruns no Ubuntu e geralmente seguindo estes instruções .

Obrigado!

EDITAR Eu tenho conversado com o cara que descobriu a solução no primeiro link que eu postei acima. Ele conseguiu criar e executar com êxito o SSL em uma instalação 12.04 limpa usando o pacote OpenSSL padrão e o pacote híbrido pircd com patches. O sistema em que eu estou foi originalmente construído usando 10.x. Gostaria de saber se fazer essas atualizações no 12.04 LTS de alguma forma quebrou alguma coisa ao longo do caminho. Por exemplo, sua execução da configuração de híbrido-irid gera estes na parte crypto da instalação:

checking for OpenSSL... /usr
checking for OpenSSL 0.9.6 or above... found
checking for RSA_free in -lcrypto... yes
checking for EVP_bf_cfb... yes
checking for EVP_cast5_cfb... yes
checking for EVP_idea_cfb... no
checking for EVP_rc5_32_12_16_cfb... no
checking for EVP_des_ede3_cfb... yes
checking for EVP_des_cfb... yes

Estou executando o último SSL aberto:

$ openssl version
OpenSSL 1.0.1 14 Mar 2012

Não tenho certeza porque o script de configuração não está vendo esses algos de cifra.

EDIT 2: Acabou de instalar uma VM na minha caixa ESXi. Nova marca de 32 bits instalar 12.04 LTS. Mesmo problema. Instala bem via apt-get, mas o SSL não está ativado. Tentei o patch e também está faltando os algos como eu listei acima.

    
por mhradek 03.01.2013 / 04:04

2 respostas

1

Existe algum motivo para você mesmo criar esses pacotes? O Ubuntu já tem esses pacotes prontos para você.

apt-get install ircd-hybrid

Ou se preferir ver quais outras opções estão disponíveis:

apt-cache search ircd
    
por Chris 13.01.2013 / 22:32
1

Eu só consegui fazer isso depois de muito trabalho. Infelizmente, eu não acho que vou ser capaz de fornecer um "como fazer", mas pretendo enviar um relatório de bug. Além disso, meu entendimento é incompleto, então me desculpe se eu usar a terminologia errada.

Basicamente, o problema é uma incompatibilidade entre ircd-hybrid e libssl1.0.0 . Onde ele está procurando por cyphers como EVP_bf_cfb , em libssl1.0.0 ele precisa estar usando EVP_bf_cfb64 , etc. Fiz algumas falsificações e as compilei com as cifras sendo detectadas, mas elas ainda não se conectaram a outras servidores.

Infelizmente, embora libssl0.9.8 esteja disponível no Ubuntu 12.04 LTS, libssl-dev está disponível apenas no 1.0.0 flavor. Instalei os pacotes 0.9.8 de 10.04 LTS (não recomendado, tenho certeza), mas depois houve vários problemas de compilação em ircd-hybrid relacionados a um problema diferente. Eu os consertei e finalmente consegui um ircd-hybrid em execução em 64 bits 12.04 LTS.

Meu palpite é que, como o SSL não é habilitado por padrão em ircd-hybrid , quando outras coisas mudam e quebra somente a compilação SSL, ele não é detectado pelos mantenedores do pacote.

Como eu digo, agora vou tentar arquivar um relatório de bug contra o 12.04 LTS e ver se isso está em algum lugar.

    
por Dave 13.07.2013 / 22:03