GNU/Linux >> Linux の 問題 >  >> Linux

OpenSSLサポートを使用してPythonをコンパイルおよびインストールする方法は?

PythonインストールはSSLをサポートしていませんか? Setup.dist を編集した後、再度コンパイルする必要があります Pythonソースディレクトリにあるファイル。その方法を見てみましょう。

始める前に、以下に示すように、既存のPythonインストールがOpenSSLをサポートしているかどうかを確認してください。

 $ python 

Pythonプロンプトで、「importssl」と入力します

>>> import ssl 

以下のようなエラーが表示された場合、PythonはSSLをサポートしていません。

 $ pythonPython 2.4.3(#1、2013年1月9日、06:47:03)[GCC 4.1.2 20080704(Red Hat 4.1.2-54)] on linux2Type "help"、 "copyright"、 "credits詳細については、"または"license"を参照してください。 

注: 古いバージョンのPythonでは、「 hasattr」を使用してみてください。 ‘は以下のように機能します:

>>> import socket>>> hasattr(socket、 "SSL")False>>> 

False 「その場合、PythonはSSLをサポートしません。

OpenSSLサポートを使用してソースからPythonをコンパイルする方法

前提条件:

OpenSSLはデフォルトでインストールされているはずですが、インストールされていない場合は、以下に示すようにインストールしてください。

OpenSSLとその開発パッケージをインストールする 以下のように:

 $ yum install openssl 
 $ yum install openssl-devel 

(または)

ソースからOpenSSLをインストールします:

 $ wget http://www.openssl.org/source/openssl-1.0.2e.tar.gz 
 $ ./config --prefix =/ usr / local / openssl --openssldir =/ usr / local / openssl 

注: デフォルトでは、opensslは/ usr / local / sslの下にインストールされます。 。既存のSSLインストールを台無しにしたくない場合は、別のディレクトリにインストールしてください。

 $ make $ make test $ make install 

OpenSSLのインストールが完了しました。 Pythonをコンパイルしましょう。

Pythonソースのダウンロード:

 $ wget https://www.python.org/ftp/python/3.5.1/Python-3.5.1.tgz 
 $ tar xvzf Python-3.5.1.tgz 
 $ vim Modules / Setup.dist 

SSL」を検索します 」と入力し、以下に示すようにコードのコメントを解除します(バージョン3.5では、203行目から210行目まで):

  _socket socketmodule.c  #SSLサポート用のソケットモジュールヘルパー。上記の他の#ソケット行をコメントアウトし、SSL変数を編集する必要があります:#SSL =/ usr / local / ssl  _ssl _ssl.c \   -DUSE_SSL -I $(SSL)/ include -I $(SSL)/ include / openssl \   -L $(SSL)/ lib -lssl -lcrypto  

注: 非標準の場所にOpenSSLをインストールした場合は、「 SSL」を変更する必要があります ‘上記のコードで正しいパスを参照します。

例:

 _socket socketmodule.c#SSLサポート用のソケットモジュールヘルパー。上記の他の#ソケット行をコメントアウトし、SSL変数を編集する必要があります: SSL =/ usr / local / openssl  _ssl _ssl.c \ -DUSE_SSL -I $(SSL)/ include -I $(SSL)/ include / openssl \ -L $(SSL)/ lib -lssl -lcrypto 

完了したら

 $ ./configure$ make $ make install 

PythonでOpenSSLサポートを確認する

 $ / usr / local / bin / python3.5 

Pythonプロンプトで、「 import ssl 」と入力します 」

>>> import ssl 

エラーが表示されない場合、PythonはSSLをサポートしています。以上です!


Linux
  1. Python2とPython3をFedora35にインストールする方法

  2. SSL を使用して Ubuntu 22.04 に Elasticsearch をインストールする方法

  3. OpenSSL を含む .c ファイルをコンパイルするには?

  1. SCLを使用してCentOS7にPython3をインストールする方法

  2. Ubuntu 20.04および18.04にPythonをインストールするにはどうすればよいですか?

  3. Linux に SSL を使用して Apache 2 をインストールする方法 (mod_ssl、openssl を使用)

  1. Ubuntu18.04および20.04にPythonPipをインストールする方法

  2. Ubuntu 15.10にNginx、PHP-FPM、SSLを使用してDrupal8をインストールする方法

  3. Ubuntu 15.10にApache、MySQL、SSLを使用してDrupal8をインストールする方法