web-dev-qa-db-ja.com

無効な証明書を受け入れるようにPidginを強制する

Pidgin 2.10.10-3.fc20(libpurple 2.10.10)で次のエラーが表示されます。

無効な証明書を受け入れるように強制するにはどうすればよいですか?

このバグレポート に対応しているはずです)。

enter image description here

これが私がやったことです:

  • firefoxでドメインにアクセスし、証明書をエクスポートしました
  • pidginに証明書をインポートしましたtools->certificates
  • seahorse(gnome keyring GUI)に証明書をインポートしました
23

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)を使用できます。

11

別の方法として、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-----
13
Martin

簡単な方法、

  1. ピジンを閉じる
  2. 証明書フォルダーを見つけます(Win­dows: %appdata%\.purple)(Linux:/home/<Username>/.purple/certificates/x509/tls_peers
  3. 証明書フォルダー内のすべてを削除します。
  4. Pid­ginを再起動すると、最終的には動作する新しい証明書を取得するはずです。

追伸:%app­data%に慣れていないWindowsユーザーは、アドレスバーに%appdata%\.purpleと入力してEnterキーを押すだけです。

2
Nullpointer

証明書をインポートする際に入力する名前は ToolsCertificates XMPPアカウント構成のconnect serverと一致します。これは、同じエラーに対して機能させるための唯一の方法です。

Connect server and certificate hostname should match

2
tobigue

別の回避策は、myserver.chat.comなどのエラーで指定されたサーバーの名前をインポートすることです。例えば:

  1. Firefoxブラウザーを開き、URLを入力します:HTTPS://mysever.chat.com、エラーが表示されます:

    Invalid certificate error

  2. Advancedオプションを選択し、Add Exceptionを選択します。証明書のポップアップが開きます。

  3. 次にAdvanced-> Details-> Exportをクリックします

    Certificate Viewer

  4. 証明書をどこかに保存します

  5. Pidginを開き、Tools-> Certificates-> Addに進みます。ここで、最初のエラーと同じ共通名で証明書を保存します。

最後に、再接続してみてください。

2
Y Melo

証明書の問題を、保存されたコピーで数回手動で置き換えることで回避できました。その後動作しなくなり、2.11へのアップグレードは役に立たなかったようです。

ソースからビルドする場合は、libpurple/certificates.cのソースコードを変更する必要があります。 PURPLE_CERTIFICATE_FATALS_MASKチェックをPURPLE_CERTIFICATE_NON_FATALS_MASKチェックの下に移動して、ユーザーにプロンプ​​トを表示しますが、受け入れられた場合は証明書を許可します。おそらく最も安全なことではありませんが、私のために働いた。

1
user591856

Pidgin-developers PPA を使用して解決できます。そのソースからPidginパッケージとlibpurpleをインストールし、Lync 2013リソースへのアクセスに関する問題を解決しました。証明書を自動的に許可できるようになりました(ダイアログを表示して、不明な証明書を許可または拒否します)。試しましたか? 15.04を使用した場合は、いくつかのパッケージをダウンロードして古いパッケージを新しいものに置き換えるための回避策もあります。すでに15.04でテストしましたが、動作します。

1
user3417815

Pidginに新しい証明書をダウンロードさせます。

rm ~/.purple/certificates/x509/tls_peers/*

Pidginを閉じて再度開きます。

ls ~/.purple/certificates/x509/tls_peers/*

これで、新しくダウンロードされた証明書がリストされます。

0
Binoy