August 17, 2011
TwitterのSSL証明書が更新されて、Ubuntu8.0.4からはXAuthやらapi通信やらでエラーが出て困ってる人のため自分のために対処法をメモしておきます。
ちなみに、中間証明書とかroot証明書のあたりが、あんまり理解できてないので、あくまでも、ざっくりとした解決法です。複数の証明書の繋がりのあたりがよくわかっていません。ということで、バッドノウハウだったらごめんなさい。
(もしそうなら是非、教えてください!)
■初期起動時のOAuth/XAuthが失敗する解決
方針:http://curl.haxx.se/ca/cacert.pem の中身を、
ubuntu内の「/etc/ssl/certs/ca-cerfiticates.crt 」の中身と入れ替える。
(追記:centOSのopenSSL0.9.8b以降は、openssl-0.9.8bでは、/etc/pki/tls/certs/ca-bundle.crt 」
cd /etc/ssl/certs
sudo mv ca-certificates.crt ca-certificates.crt.org
sudo vim ca-certificates.cr
■確認方法
Ubuntuのターミナルから
wget https://twitter.com
でエラーがでなければOK
上記で解決できたのだけど、以下にサイボウズライブに書いてあった、何のことか忘れてしまった関連メモがあるので、念のためコピペしておく。
■もしかしたら、ログイン後のAPIアクセスでSSL通信できないときはこっちも試す。
1.root証明書ファイルを作る
cd /etc/ssl/certs
sudo vim verisign_class_3_public_primary_certification_autority_g5.pem
g5のroot証明書 元データ:
http://www.verisign.com/support/roots.html
(上記URLからダウンロードする)
2.上記内容のハッシュファイルを作る
sudo ln -s verisign_class_3_public_primary_certification_autority_g5.pem `openssl x509 -noout -hash < verisign_class_3_public_primary_certification_autority_g5.pem`.0