回答編集履歴
1
追記
answer
CHANGED
@@ -6,4 +6,30 @@
|
|
6
6
|
```
|
7
7
|
|
8
8
|
**/etc/httpd/conf/.htpasswd** ファイルに DN が登録されていることを確認ください。
|
9
|
-
また、httpd プロセス実行ユーザー(CentOS なら apache ユーザー)で、/etc/httpd/conf/.htpasswd ファイルを読み込めるよう、パーミッションも確認ください。
|
9
|
+
また、httpd プロセス実行ユーザー(CentOS なら apache ユーザー)で、/etc/httpd/conf/.htpasswd ファイルを読み込めるよう、パーミッションも確認ください。
|
10
|
+
|
11
|
+
---
|
12
|
+
**(2019/07/01 17:37) 追記**
|
13
|
+
クライアント証明書に原因があるのか、Apache httpd やブラウザに原因があるのか、切り分けるといいと思います。
|
14
|
+
|
15
|
+
###クライアント証明書の verify
|
16
|
+
```
|
17
|
+
CA証明書: /etc/pki/CA/cacert.pem
|
18
|
+
クライアント証明書: newcert.pem
|
19
|
+
|
20
|
+
$ openssl verify -CAfile /etc/pki/CA/cacert.pem ./newcert.pem
|
21
|
+
./newcert.pem: OK
|
22
|
+
```
|
23
|
+
|
24
|
+
###curl コマンドでクライアント証明書認証
|
25
|
+
```
|
26
|
+
CA証明書: /etc/pki/CA/cacert.pem
|
27
|
+
クライアント秘密鍵: newkey.pem
|
28
|
+
クライアント証明書: newcert.pem
|
29
|
+
|
30
|
+
$ curl -v --cacert /etc/pki/CA/cacert.pem --key ./newkey.pem --cert ./newcert.pem (URL)
|
31
|
+
|
32
|
+
・応答コードが 200 OK →クライアント証明書で接続できた
|
33
|
+
・応答コードが 401 Unauthorized →クライアント証明書が .htpasswd に登録されていない
|
34
|
+
・「curl: (56) Peer does not recognize and trust the CA that issued your certificate.」→クライアント証明書の Issuer が CA証明書(SSLCACertificateFile)と合っていない
|
35
|
+
```
|