Ubuntu 12.04システムでOpenSSLを1.0.1にアップグレードしたかった。 apt-get upgrade openssl
がOpenSSLをアップグレードしないことに気付きました。新しいOpenSSLはUbuntuでサポートされていますか?
また、ソースからコンパイルしようとしました。コンパイルは機能しますが、組み込みのOpenSSL(1.0.0)を新しいもの(1.0.1)に置き換える方法がわかりません。ソースからコンパイルすると、新しいバージョンが古いバージョンと共に動作します。古いバージョンを新しいバージョンに置き換える必要があります。この必要性の背後にある私の理由は、FreeSWITCHソースがOpenSSL 1.0.0と互換性がなく、FreeSWITCHに新しいOpenSSLのパスを指すmake構成がないため、FreeSWITCHを新しいバージョンでコンパイルすることです。 (したがって、それは頑固に古いバージョンを使用し続け、動作に失敗します!)
よろしくお願いします。どんな助けも大歓迎です。
注:この質問と回答は、OpenSSLバグHeartbleedより前の日付です。
最初に古いインストールを完全に削除する必要があります:(これはほとんどのシステムを破壊します!注意してください!ほとんどの人はこれを後悔するでしょう)apt-get purge openssl
次を実行して、家を掃除したい場合があります。
apt-get autoremove && apt-get autoclean
次に、必要なバージョンをダウンロードしてコンパイルする必要があります( full list )
wget https://www.openssl.org/source/openssl-1.0.1g.tar.gz
1.0.1は、執筆時点ではUbuntu 12.04の一部です。ただし、それに対してコンパイルするには、開発パッケージ(libssl-dev
)もインストールする必要があります!
最初にパッケージ一覧の更新を行います
Sudo apt-get update
次に、開発パッケージをインストールし、ライブラリ自体を一度にアップグレードします。
Sudo apt-get install openssl libssl-dev
ここで、1.0.1は12.04の一部であることがわかります。 http://packages.ubuntu.com/precise-updates/openssl
システムにまだ1.0.0がインストールされている場合は、他のリポジトリがセットアップされているか、パッケージ管理の何かが変更されてこのエラーが発生します。その場合は、1.0.0でピン留めする原因を調べてください。
apt-cache policy openssl libssl-dev
http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/ からlibssl
およびopenssl
の最新バージョンをダウンロードして、両方をインストールしてみてください。
警告:これにより、OpenSSLの自動セキュリティ更新が中断されます。