MacでSSL CA(認証局)証明書インストールする方法が解らない。（2020年に解決）

2018年4月頃　作成
2020-08-12　更新

MacOSX 10.8.5
HomeBrewをインストール不可能なMacOSX 10.8.5マシンがある。

OpenSSL 1.0.2o  27 Mar 2018
ruby 2.4.4p296 (2018-03-28 revision 63013) [x86_64-darwin12.6.0]
curl 7.59.0 (x86_64-apple-darwin12.6.0) libcurl/7.59.0 OpenSSL/1.0.2o zlib/1.2.11
Release-Date: 2018-03-14

#１. HomeBrewインストールコマンドを実行しても、エラーになる。

```
$ /usr/local/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
curl: (60) SSL certificate problem: unable to get local issuer certificate
More details here: https://curl.haxx.se/docs/sslcerts.html

curl failed to verify the legitimacy of the server and therefore could not
establish a secure connection to it. To learn more about this situation and
how to fix it, please visit the web page mentioned above.
```

#２. opensslの証明書を更新。

ruby -ropenssl -e "p OpenSSL::X509::DEFAULT_CERT_FILE"
に出力されるディレクトリを
/usr/local/xxxxxxxxxx/xxxxxx/cert.pem
だとすると、
sudo wget -O /usr/local/xxxxxxxxxx/xxxxxx/cert.pem http://curl.haxx.se/ca/cacert.pem
としても１のエラーは変わらない。

#３. （追記）エラーが変わった。

時間を変えてやってみたところエラーが変わった。
sudo wget -O /usr/local/xxxxxxxxxx/xxxxxx/cert.pem http://curl.haxx.se/ca/cacert.pem
今まではなんだったのか？更新されていなかったのか？

```
--2018-04-09 xx:xx:16--  http://curl.haxx.se/ca/cacert.pem
Resolving curl.haxx.se... 151.101.74.49, 2a04:4e42:11::561
Connecting to curl.haxx.se|151.101.74.49|:80... connected.
HTTP request sent, awaiting response... 301 Moved Permanently
Location: https://curl.haxx.se/ca/cacert.pem [following]
--2018-04-09 xx:xx:17--  https://curl.haxx.se/ca/cacert.pem
Connecting to curl.haxx.se|151.101.74.49|:443... connected.
ERROR: cannot verify curl.haxx.se's certificate, issued by 'CN=GlobalSign CloudSSL CA - SHA256 - G3,O=GlobalSign nv-sa,C=BE':
  Unable to locally verify the issuer's authority.
To connect to curl.haxx.se insecurely, use `--no-check-certificate'.
```

wget　に　--no-check-certificateを付けろとでている。

```
$ sudo wget --no-check-certificate /usr/local/xxxxxxxxxx/xxxxxx/cert.pem http://curl.haxx.se/ca/cacert.pem
/usr/local/xxxxxxxxxx/xxxxxx/cert.pem: Scheme missing.
--2018-04-09 xx:xx:55--  http://curl.haxx.se/ca/cacert.pem
Resolving curl.haxx.se... 151.101.74.49, 2a04:4e42:11::561
Connecting to curl.haxx.se|151.101.74.49|:80... connected.
HTTP request sent, awaiting response... 301 Moved Permanently
Location: https://curl.haxx.se/ca/cacert.pem [following]
--2018-04-09 xx:xx:55--  https://curl.haxx.se/ca/cacert.pem
Connecting to curl.haxx.se|151.101.74.49|:443... connected.
WARNING: cannot verify curl.haxx.se's certificate, issued by 'CN=GlobalSign CloudSSL CA - SHA256 - G3,O=GlobalSign nv-sa,C=BE':
  Unable to locally verify the issuer's authority.
HTTP request sent, awaiting response... 200 OK
Length: 215556 (211K) [application/x-pem-file]
Saving to: 'cacert.pem'

cacert.pem                   100%[=============================================>] 210.50K  --.-KB/s    in 0.02s   

2018-04-09 16:00:55 (8.60 MB/s) - 'cacert.pem' saved [215556/215556]

FINISHED --2018-04-09 16:00:55--
Total wall clock time: 0.8s
Downloaded: 1 files, 211K in 0.02s (8.60 MB/s)
```

これで更新されたようだ。#4以降は未だに不明。



#4. 【質問】Macで、SSL CA(認証局)証明書インストールする方法が解らない。

SSL CA(認証局)証明書が古くてcurl がエラーになる件
<a href="http://hogem.hatenablog.com/entry/20120705/1340284071">サーバのSSL CA(認証局)証明書が古くてcurl がエラーになる件 - うまいぼうぶろぐ</a>

上記URLの内容をMacで行うにはどうすれば良いのかが解らない。








参考URL

<a href="https://orebibou.com/2016/11/%E3%83%97%E3%83%A9%E3%82%A4%E3%83%99%E3%83%BC%E3%83%88%E8%AA%8D%E8%A8%BC%E5%B1%80%E3%81%AEca%E8%A8%BC%E6%98%8E%E6%9B%B8%E3%82%92%E8%BF%BD%E5%8A%A0%E3%81%99%E3%82%8Bwindows%E3%83%BBmac-os-x%E3%83%BBce/#2Mac_OS_X">プライベート認証局のCA証明書を追加する(Windows・Mac OS X・CentOS 7・Ubuntu Server16.04) | 俺的備忘録 〜なんかいろいろ〜</a>

<a href="https://orebibou.com/2016/11/%e3%83%97%e3%83%a9%e3%82%a4%e3%83%99%e3%83%bc%e3%83%88%e8%aa%8d%e8%a8%bc%e5%b1%80%e3%82%92%e6%a7%8b%e7%af%89%e3%81%97%e3%81%a6lan%e5%86%85%e3%81%a7%e5%88%a9%e7%94%a8%e3%81%99%e3%82%8b%e8%a8%bc/">プライベート認証局を構築してLAN内で利用する証明書を発行する | 俺的備忘録 〜なんかいろいろ〜</a>

<a href="https://www.websec-room.com/2016/05/15/2647">Mac OS X にインストールされているルート証明書の確認方法 | Webセキュリティの小部屋</a>

<a href="http://mofuken.blogspot.jp/2012/12/ruby-open-uri-https-certificate-verify.html">[Ruby] open-uri の HTTPS リクエストで certificate verify failed | mofu犬blog</a>