pythonで発生したエラーのまとめ。
python2.7.5で SNIMissingWarning、InsecurePlatformWarning
python 2.7.5で以下のエラーが発生しました。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
# gitlab user list /usr/lib/python2.7/site-packages/urllib3-1.22-py2.7.egg/urllib3/util/ssl_.py:339: SNIMissingWarning: An HTTPS request has been made, but the SNI (Subject Name Indication) extension to TLS is not available on this platform. This may cause the server to present an incorrect TLS certificate, which can cause validation failures. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings SNIMissingWarning /usr/lib/python2.7/site-packages/urllib3-1.22-py2.7.egg/urllib3/util/ssl_.py:137: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings InsecurePlatformWarning |
このエラーは何でしょうか?
解決策はどうすればよいのでしょうか?
Python-2.7.5のSSLモジュールが古い
このエラーは、gitlab-python が利用しているurllib3が出しています。
urllib3はHTTPS通信でPythonのSSLモジュールを使用していますが、Python-2.7.5に組み込まれているSSLモジュールは古いので、この InsecurePlatformWarning 警告が表示されているようです。
警告で提示されているURLの先を読むと、2つのことが書かれています。
- Python-2.7.9 以降を使おう
- pyOpenSSLをインストールしよう: pip install urllib3[secure]
このどちらか、または両方を行う必要があります。
私の場合、とりあえず、
# yum update -y python
を実行すると、警告メッセージが消えました。
コメント