SSL クライアント認証をセットアップしようとしています。違いがある場合は、startssl を CA として使用しています。startssl からルート証明書、中間証明書、クライアント証明書を取得しました。また、startssl Web サイトに対する認証用の s/mime 証明書もいくつか持っています。私が達成しようとしているのは、自分のサイトにクライアント証明書認証を持たせることです。自己署名証明書を使用するとすべてが機能しますが、署名付き証明書を使用すると混乱します。
私はstartsslから次のファイルを持っています:
root.crt
intermediate.crt
ssl.crt
ssl.key
----------------
user@host-client.crt <- for authenticating against startssl
次に、nginx の場合、次を実行します。
cat ssl.crt intermediate.crt root.crt > unified.crt
次にnginxで:
server {
listen 443;
ssl on;
server_name example.com;
ssl_certificate /etc/nginx/certs/unified.crt;
ssl_certificate_key /etc/nginx/certs/ssl.key;
ssl_client_certificate /etc/nginx/certs/<WHAT GOES HERE>;
ssl_verify_client on;
location / {
root /var/www/example.com/html;
}
}
ssl_client_certificate
startssl s/mime 証明書を使用する場合、またはそれが可能である場合、何を使用すればよいかわかりません。
startssl s/mime cert を使用できない場合:このようなチュートリアルでは、ca.key および ca.crt として何を使用しますか (おそらく統合 ssl?)。
どちらの場合でも、どのように判断するのssl_verify_depth
ですか? 自己署名鍵でこれを行う方法の例をたくさん見つけましたが、署名付き鍵チェーンを使用する限り、私の理解は遅れ始めています。助けてくれてありがとう!