/usr/localでOpenSSLを強制する方法

/usr/localでOpenSSLを強制する方法

私は64ビットARM CPUとAES命令セットを備えたシングルボードコンピュータを持っています。提供されたDebian 8 Jessie Mate DesktopイメージはOpenSSLバージョン1.0.1kを使用しており、このアクセラレーションは使用できません。

アクセラレーションが有効なソースからOpenSSL 1.0.2nをビルドし、/usr/localにインストールしました。

この回答コマンドラインからアクセスする方法を説明しましたが、うまくいきますが、どうすればよいですか?すべてのプログラムとデーモンの強制実行この/usr/localバージョンを使用しますか?

元のOpenSSLパッケージは、依存関係(=シンボリックリンクなし)のため削除できません。それでは、2つを共存させ、/usr/localのいずれかを使用する正しい方法は何ですか?

注:私は/ usr / local OpenSSLを最新の状態に保つことが私の責任であることを理解しています。

ベストアンサー1

アプリケーションがまだこの機能を使用していませんか?出力を調べると、ldconfig -vどのOpenSSLライブラリが出力に最初に表示されますか?

デフォルトでは、Debianベースのシステム(および他のほとんどのFHS準拠のLinuxシステム)は次のものを/usr/local/lib検索します。/usr/libしなければならないのバージョンより前に使用してください/usr/lib

lddOpenSSLに接続されたバイナリを使用してこれを確認できます。たとえば、

$ ldd /usr/sbin/nginx
...
        libssl.so.1.1 => /usr/lib/x86_64-linux-gnu/libssl.so.1.1 (0x00007fd50f80b000)
...

パスを書き留めますlibssl。システムに複数のコピーがある場合でも、このバージョンが使用されます。

OpenSSLのカスタムバージョンが以下のディレクトリ/usr/local/lib(たとえば/usr/local/lib/ssl)にあり、見つからない場合は、ldそのディレクトリを新しいファイルに追加し/etc/ld.so.conf.dて再実行できます。定義された検索パス名が表示されるように、対応するldconfigオプションを使用する必要があります。-v.)のすべてのライブラリの1つです。

おすすめ記事