CygwinでSSL関連がエラーになり困っていました。githubからCloneしてもエラー。CurlでHTTPSしてもエラー、Wgetもエラー。SSLチェックで落ちました。
wget/curlに関してはca-certificatesを指定すれば行けました
FireFoxからルート証明書取り出して、コマンドオプションや、環境変数で参照設定すればエラー無く通信できました。しかし、アプリ毎に設定しているので、gitには反映されない。
curlだけ動いたって気に入らないのでさらに調べた
そもそも証明書が古いのか。不足があるのが原因だと思う。libcurlで行けてもRubyやPythonから使うにはまた証明書エラーが出そうなのでちゃんと更新しておきたかった。
ルート証明書全体を更新する方法を見つけた
git - SSL certificate rejected trying to access GitHub over HTTPS behind firewall - Stack Overflow
cd /usr/ssl/certs
curl http://curl.haxx.se/ca/cacert.pem \
| awk 'split_after==1{n++;split_after=0}\
/-----END CERTIFICATE-----/ {split_after=1} {print > "cert" n ".pem"}'
c_rehashをすればいいと書いてありました。