web-dev-qa-db-ja.com

Debianでopensslを更新する

[ソースコード] [1]からDebianLenny(armv4アーキテクチャ)でOpenSSL-1.0.1eをコンパイルしました。 http://www.linuxfromscratch.org/blfs/view/svn/postlfs/openssl.html の指示に従って、ソースコードをコンパイルしました。 makemake testmake installは正常に完了しました。ただし、OpenSSLは、私がまだ古いバージョンを持っていることを示しています

OpenSSL> version
OpenSSL 0.9.8g 19 Oct 2007

OpenSSLを更新するにはどうすればよいですか?古いバイナリ(/usr/bin内)を新しくコンパイルされたopensslバイナリに置き換える必要がありますか?

編集:make test出力:すべてのテストが成功しました。

make[1]: Leaving directory `/home/openssl-1.0.1e/test'
OPENSSL_CONF=apps/openssl.cnf util/opensslwrap.sh version -a
OpenSSL 1.0.1e 11 Feb 2013
built on: Mon Jun 10 05:08:05 UTC 2013
platform: dist
options:  bn(32,32) rc4(ptr,int) des(idx,cisc,2,long) idea(int) blowfish(idx) 
compiler: cc -O
OPENSSLDIR: "/usr/local/ssl"

make install出力:

make[1]: Leaving directory `/home/openssl-1.0.1e/engines'
making install in apps...
make[1]: Entering directory `/home/openssl-1.0.1e/apps'
installing openssl
installing CA.sh
installing CA.pl
installing tsget
make[1]: Leaving directory `/home/openssl-1.0.1e/apps'
making install in test...
make[1]: Entering directory `/home/openssl-1.0.1e/test'
make[1]: Nothing to be done for `install'.
make[1]: Leaving directory `/home/openssl-1.0.1e/test'
making install in tools...
make[1]: Entering directory `/home/openssl-1.0.1e/tools'
make[1]: Leaving directory `/home/openssl-1.0.1e/tools'
installing libcrypto.a
installing libssl.a
cp libcrypto.pc /usr/local/ssl/lib/pkgconfig
chmod 644 /usr/local/ssl/lib/pkgconfig/libcrypto.pc
cp libssl.pc /usr/local/ssl/lib/pkgconfig
chmod 644 /usr/local/ssl/lib/pkgconfig/libssl.pc
cp openssl.pc /usr/local/ssl/lib/pkgconfig
chmod 644 /usr/local/ssl/lib/pkgconfig/openssl.pc

----------------------------------------- ----------------------------

EDIT2:古いバージョンを削除するためにすでにapt-get --purge remove opensslを実行しました。ターミナル出力-bash: /usr/bin/openssl: No such file or directoryopensslを実行します。 /usr/local/ssl/bin/opensslを実行すると、opensslが正しいバージョンで実行されます。

どのファイルをどこにリンクするかわかりませんか?私はまだLinuxを学ぼうとする初心者です。私が使用しているデバイスは、デバイスのプロセッサに問題があるため、squeezeまたはWheezyをサポートしていないため、手動でコンパイルする必要があります。次の2つの質問に答えることができれば、問題は解決すると思います。

1)/usr/local/ssl/bin/openssl/usr/bin/opensslにコピーすると機能しますか?しかし、それは問題を引き起こすのでしょうか、それとも `/ usr/local/ssl/*上のファイルを別の場所に移動する必要がありますか?

または2)次のようなドキュメントを読みました。

 This will build and install OpenSSL in the default location, which is (for
 historical reasons) /usr/local/ssl. If you want to install it anywhere else,
 run config like this:

  $ ./config --prefix=/usr/local --openssldir=/usr/local/openssl

Debian用に定義する必要のあるディレクトリ(--prefixとopenssldir用)を教えてください。その後、ソースを再度コンパイルできます。以前は次を使用していました。

./config --prefix=/usr         \
         --openssldir=/etc/ssl \
         shared                \
         linux-armv4           \
         zlib-dynamic
2
user177439

OpenSSLは、セキュリティ機能を提供するために他の多くのユーザーによって使用されているため、コアパッケージと見なされることがよくあります。潜在的な影響を特によく理解していない限り、コアパッケージを手動でローリングすることはお勧めしません。手作業でロールする場合は、提供されたパッケージの上にインストールすることをお勧めします。代わりに、/usr/localまたはユーザーのホームにインストールして、必要なものをコンパイルします。必要なものはすべて、更新されたライブラリが必要です。ビルド手順-これは、opensslに依存する他のバイナリパッケージを中断しないことでした。 opensslをハンドロールする場合は、更新がリリースされるたびに再構築する必要があります(また、変更によっては、他の依存パックも毎回再構築する必要がある場合があります)。

代わりに、Debianインストールを最新のStableに更新することは可能でしょうか?これにはデフォルトでv1.0.1eが含まれ( http://packages.debian.org/search?suite=wheezy&searchon=names&keywords=openssl を参照)、余分な労力なしで将来のアップデートを取得できることを意味します。

2
David Spillett