Offlineimap 不明なSSLプロトコルエラー

Offlineimap 不明なSSLプロトコルエラー

offlineimap複数のIMAPサーバーからメールを取得するために使用しています。以前はこの方法は機能していましたが、現在offlineimapはメールを受信して​​いないため、次のエラーが発生します。

*** Processing account example
 Establishing connection to imap.gmail.com:993
 ERROR: Unknown SSL protocol connecting to host 'imap.gmail.com' for
 repository '<redacted>'. OpenSSL responded:
 [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590)
*** Finished account 'example' in 0:00

私の構成の関連部分は次のとおりです。

[Account example]
localrepository  =  local-example
remoterepository = remote-example

[Repository local-example]
type = Maildir
localfolders = ~/mail/example

[Repository remote-example]
maxconnections = 1
type = Gmail
remotehost = imap.gmail.com
remoteuser = [email protected]
remotepasseval = get_keychain_pass(account="[email protected]",
                                   server="imap.gmail.com")
ssl = yes
sslcacertfile = /usr/local/etc/openssl/certs/dummycert.pem

このsslcacertfile構成は、以下に応答して生成されます。この回答。このget_keychain_pass機能は以下で提供されます。このオフラインimapの設定

私はofflineimapOS X 10.10.4でHomebrewビルド6.5.7を使用しています。

答え1

Appleバージョンの代わりにPythonのHomebrewバージョンをインストールしたときに問題が始まりました。エラーは、以下を実行することで解決されました。

brew uninstall python

次の内容を読んで、これが解決策であることがわかりました。同様のエラーOS Xの他のPythonプログラムによって生成されます。

答え2

AppleバージョンとHomebrewバージョンのPythonをインストールする必要があります。 pipからいくつかのパッケージをインストールする必要がありますが、このタスクを展開するMacbook Proへの管理アクセス権はありません。したがって、私が使用できる唯一のポイントはHomebrewです。私がしたことは、オフラインimap.pyスクリプトを開始する前に、次のPYTHONPATHを設定することでした。

PYTHONPATH="/Library/Python/2.7/site-packages" exec "/Users/tblancher/homebrew/Cellar/offlineimap/7.0.7/libexec/offlineimap.py" "$@"

オフラインimap.pyスクリプト自体も修正しました。最初の行を変更しました。

#!/usr/bin/env python

これに関して:

#!/usr/bin/python

明らかに、envはそれがHomebrewにあることを知っていたので、Homebrew Pythonを使ってみました。 Offlineimapが正常に動作し、Homebrew-pipにインストールされているPythonパッケージ(気になる場合はmutt-ics)も動作します。

関連情報