Pidgin 2.10.10-3.fc20(libpurple 2.10.10)で次のエラーが表示されます。
無効な証明書を受け入れるように強制するにはどうすればよいですか?
( このバグレポート に対応しているはずです)。
これが私がやったことです:
seahorse
(gnome keyring GUI)に証明書をインポートしましたPidgin 2.10.10(libpurple 2.10.10)には 証明書のバグ があります:
バージョン2.10.10では、自己署名SSL証明書を使用するXMPPサーバーに接続できなくなりました。エラーメッセージ:の証明書を検証できませんでした。提示された証明書チェーンは無効です。
サーバー証明書が既にローカルキャッシュ(.purple\certificates\x509\tls_peers)にある場合、接続が可能です。証明書がまだキャッシュされていない場合(たとえば、新しいWindows/Pidginのインストール後)、接続は失敗します。
2.10.11にアップグレードすると、問題が修正されます。私のような古いUbuntuバージョンを使用している場合は、 PPA (12.04、14.04および14.10)を使用できます。
別の方法として、SSL証明書を手動でダウンロードできます。その後、Pidginは問題なく起動します。証明書をダウンロードするには、opensslコマンドラインユーティリティを使用できます。
~/.purple/certificates/x509/tls_peers$ openssl s_client -connect YOUR_SERVER:PORTNUMBER
上記のコマンドが「使用可能なピア証明書なし」で失敗した場合、サーバーはSSLではなくSTARTTLSを使用している可能性があります。この場合、次のコマンドを使用します。
~/.purple/certificates/x509/tls_peers$ openssl s_client -connect YOUR_SERVER:PORTNUMBER -starttls xmpp
「---- BEGIN CERTIFICATE ----」で始まる部分をコピーします。証明書ファイルの内容を印刷すると、次のようになります。
~/.purple/certificates/x509/tls_peers$ cat Jabber.ulm.ccc.de
-----BEGIN CERTIFICATE-----
MIIFXDCCA0QCCQCa5jxvwccm0DANBgkqhkiG9w0BAQUFADBwMQswCQYDVQQGEwJE
RTEMMAoGA1UEBxMDVWxtMRUwEwYDVQQLEwxDQ0MgRXJmYSBVbG0xGjAYBgNVBAMT
EWphYmJlci51bG0uY2NjLmRlMSAwHgYJKoZIhvcNAQkBFhFqYWJiZXJAdWxtLmNj
...
3EIpMVk3V1djyj0FEuDaG/o+6BTLCiIMiIUFtbpVz8YZChHbv8ObMJ5JpUIkDfKZ
si1YZKpUYwpVXgTCUml67lArx/sq95OQsDSO3fR1Ch0=
-----END CERTIFICATE-----
簡単な方法、
Windows: %appdata%\.purple
)(Linux:/home/<Username>/.purple/certificates/x509/tls_peers
)追伸:%appdata%
に慣れていないWindowsユーザーは、アドレスバーに%appdata%\.purple
と入力してEnterキーを押すだけです。
証明書をインポートする際に入力する名前は Tools→Certificates XMPPアカウント構成のconnect server
と一致します。これは、同じエラーに対して機能させるための唯一の方法です。
別の回避策は、myserver.chat.com
などのエラーで指定されたサーバーの名前をインポートすることです。例えば:
Firefoxブラウザーを開き、URLを入力します:HTTPS://mysever.chat.com
、エラーが表示されます:
Advanced
オプションを選択し、Add Exception
を選択します。証明書のポップアップが開きます。
次にAdvanced
-> Details
-> Export
をクリックします
証明書をどこかに保存します
Pidginを開き、Tools
-> Certificates
-> Add
に進みます。ここで、最初のエラーと同じ共通名で証明書を保存します。
最後に、再接続してみてください。
証明書の問題を、保存されたコピーで数回手動で置き換えることで回避できました。その後動作しなくなり、2.11へのアップグレードは役に立たなかったようです。
ソースからビルドする場合は、libpurple/certificates.cのソースコードを変更する必要があります。 PURPLE_CERTIFICATE_FATALS_MASKチェックをPURPLE_CERTIFICATE_NON_FATALS_MASKチェックの下に移動して、ユーザーにプロンプトを表示しますが、受け入れられた場合は証明書を許可します。おそらく最も安全なことではありませんが、私のために働いた。
Pidgin-developers PPA を使用して解決できます。そのソースからPidginパッケージとlibpurpleをインストールし、Lync 2013リソースへのアクセスに関する問題を解決しました。証明書を自動的に許可できるようになりました(ダイアログを表示して、不明な証明書を許可または拒否します)。試しましたか? 15.04を使用した場合は、いくつかのパッケージをダウンロードして古いパッケージを新しいものに置き換えるための回避策もあります。すでに15.04でテストしましたが、動作します。
Pidginに新しい証明書をダウンロードさせます。
rm ~/.purple/certificates/x509/tls_peers/*
Pidginを閉じて再度開きます。
ls ~/.purple/certificates/x509/tls_peers/*
これで、新しくダウンロードされた証明書がリストされます。