goo blog サービス終了のお知らせ 

Ekrino書簡

頭の整理&ひまつぶしに適当なことを書く

[SSL: CERTIFICATE_VERIFY_FAILED]の対処

2023年05月09日 | PC

あれやこれやでやたらと情報管理が厳しくなっているなかで、在宅勤務に対応することとなり、勤務先にもSSLインスペクション型のプロキシが導入された。
こいつは、HTTPSの通信を全数チェックするする奴で、エンドユーザーに届くのは漏れなく検閲済みのデータとなる。
まぁ平たく言えば、中国とかそんな辺の統制国家の人民のデジタルライフが体験できる感じのアレである。

職場の環境でエロサイトみるような間抜けは今時いないと思うし、バレて困るような秘密も…ないではないが、FANZAやDLsiteの購入履歴見られるよりはダメージは少ないとはおもう。

そんな中で困るのが、タイトルに書いた、Pythonやgitでのエラーである。
要は、SSLインスペクション型プロキシが取ってきたデータを片っ端からチェックするために、証明書が不整合になるのである。

まもなく在宅勤務は終わるが、情報統制は今後も続くんだろう…ということで真面目に対策を検討することにした。
pip installをコマンドで実行する場合は、--trusted-host ~ で無理矢理通すのが簡単だが、python実行中に取ってくる奴は、対応するのがめんどくさい。
構造を理解していれば、pyファイルで、ssl._create_default_https_context = ssl._create_unverified_contextと追記したり、コマンド手打ちでパッケージをインストールする方法もあるが
結局の所、SSLインスペクションに対応した証明書を持たせるというのが正攻法である。

二時間くらいググったが、ネットで書かれているのは色々とめんどくさい方法ばかりだったので、簡単な方法を書く。

pip install pip_system_certs --trusted-host pypi.org

これで、ホストOSの証明書がぜんぶpythonにぶち込まれるから、pemを取ってくるだのcrtを変換するだのといった作業は省略できる。
trusted hostはたぶんpypi.orgだったと思うが、pypi.python.orgやfiles.pythonhosted.orgだったかもしれない。適宜変えてくれ。 で、一回これ通したら、あとは多分いらない。最後のtrusted hostの感慨を込めてエンターキーを押して欲しい。

職場で自由にpythonをうごかせるようになったらすることはそう、faster-whisperのインストールだ。

こいつがあれば、音声ファイルから議事録が簡単に起こせる。
ローカル実行だから、情報漏洩がーと騒ぐアホを黙らせられる。
で、パソコンに頑張って貰ってる間、俺はソシャゲのデイリーを回す。実に効率的な時間の使い方といえる。


コメントを投稿