web-dev-qa-db-ja.com

Ubuntu 12.04 LTS、SSL、IRC:OpenSSLでビルドできません

Ubuntu 12.04 LTSを実行している小さなサーバーがあります。その上で、IRCをSSLサポートで設定したかった。ircd-hybridが最も人気があるようだ。私はそれを使うことに結婚していないので、他のオプションを歓迎する。他のオプション。

Apt-getを使用してインストールしました。それは問題ではありません。問題は、apt-getインストールバージョンではSSLが有効になっていないことです。 SSLを使用してSSLポート6697に接続してみてください。動作しません。したがって、それを自分で構築する作業。実際にircd-hybridパッケージのソースを追跡する場合、設定では編集して「USE_OPENSSL = 1」オプションを追加する必要があります。

ハイブリッドはデフォルトでOpenSSLをサポートしていないため、手動でパッチを適用して機能させる必要があります。

とにかく、私は指示に従って(最後にカップルをリストしました)、問題なくircd-hybridをインストールしました。実際に実行されています。しかし、SSLが機能していないことに気付きました。ポートはリッスンされていません。さらに掘り下げて、構築プロセスを振り返ると、OpenSSLが含まれていないことがわかります。

だから私はビルドしようとしており、明確にするために、ここに./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

./configureスクリプトの出力にいくつかの行が並んでいますが、すべての暗号化アルゴリズムは使用できないようです。

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

Configureスクリプトを調べると、少なくとも1つの暗号化ライブラリを有効にする必要があることがわかります。私はこれについて完全に前向きではないので、これは予感です。 OpenSSLがRC5と他のいくつかのアルゴリズムを無効にしているようです。

Enable-rc5およびその他のフラグを使用してOpenSSLを再構築およびインストールしましたが、サイコロは使用しません。

これはUbuntu 12.04にあります。助けて?誰でも?私の個人サーバーでIRCでSSLを有効にします。ircd-hybridである必要はありません。

bunt のフォーラムを見ており、一般的にこれらの 指示 をフォローしています。

ありがとう!

[〜#〜] edit [〜#〜]上記の最初のリンクで解決策を見つけたファラとおしゃべりしています。彼は、デフォルトのOpenSSLパッケージとパッチが適用されたpircd-hybridパッケージを使用して、クリーンな12.04インストールでSSLを正常にビルドおよび実行できました。私が使用しているシステムは、元々10.xを使用して構築されました。 12.04 LTSへのアップグレードを行うと、途中で何かが壊れたのではないかと思います。たとえば、ircd-hybrid構成を実行すると、セットアップの暗号化部分で次の結果が得られます。

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

私は最新のオープンSSLを実行しています:

$ openssl version
OpenSSL 1.0.1 14 Mar 2012

Configureスクリプトでこれらの暗号アルゴリズムが表示されない理由はわかりません。

EDIT 2:ESXiボックスにVMをインストールしました。真新しい32ビットインストール12.04 LTS。同じ問題apt-getで問題なくインストールできますが、SSLはnot有効です。パッチを試してみましたが、上記のアルゴリズムもありません。

4
mhradek

たくさんの手間をかけて、なんとかこれを実現することができました。悲しいことに、私は「それを行う方法」を提供できるとは思いませんが、バグ報告を提出するつもりです。また、私の理解は大ざっぱですので、間違った用語を使用した場合は失礼します。

基本的に、問題はircd-hybridlibssl1.0.0の間の非互換性です。 EVP_bf_cfbのような暗号を探している場合、libssl1.0.0EVP_bf_cfb64などを使用する必要があります。他のサーバーに接続しませんでした。

悲しいことに、libssl0.9.8はUbuntu 12.04 LTSで利用可能ですが、libssl-dev1.0.0フレーバーでのみ利用可能です。 0.9.8パッケージを10.04 LTSからインストールしました(お勧めしませんが、確信しています)が、ircd-hybridには別の問題に関連するさまざまなコンパイルの問題がありました。これらを修正し、ついに64ビット12.04 LTSで動作するircd-hybridが動作するようになりました。

私の推測では、SSLはircd-hybridでデフォルトで有効になっていないため、他のものが変更され、SSLビルドがonly壊れると、パッケージメンテナーに発見されません。

私が言うように、私は12.04 LTSに対してバグレポートを提出しようとし、それがどこにでも到達するかどうかを確認します。

1
Dave

これらのパッケージを自分で構築する理由はありますか? Ubuntuにはすでにこれらのパッケージが事前に作成されています。

apt-get install ircd-hybrid

または、他にどのような選択肢があるかを確認したい場合:

apt-cache search ircd
1
Chris