Authentication 具有签名根证书和中间证书的nginx ssl客户端证书

Authentication 具有签名根证书和中间证书的nginx ssl客户端证书,authentication,ssl,nginx,ssl-certificate,Authentication,Ssl,Nginx,Ssl Certificate,我正在尝试设置ssl客户端身份验证。我使用startssl作为CA,如果这有什么不同的话。我从startssl获得了根证书、中间证书和客户端证书。我还有几个s/mime证书,用于针对startssl网站进行身份验证。我试图实现的是为我自己的站点提供客户端证书身份验证。一切都使用自签名证书,但使用签名证书我感到困惑 我从startssl获得了以下文件: root.crt intermediate.crt ssl.crt ssl.key ---------------- user@host-clie

我正在尝试设置ssl客户端身份验证。我使用startssl作为CA,如果这有什么不同的话。我从startssl获得了根证书、中间证书和客户端证书。我还有几个s/mime证书,用于针对startssl网站进行身份验证。我试图实现的是为我自己的站点提供客户端证书身份验证。一切都使用自签名证书,但使用签名证书我感到困惑

我从startssl获得了以下文件:

root.crt
intermediate.crt
ssl.crt
ssl.key
----------------
user@host-client.crt <- for authenticating against startssl
然后在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;
    }
}
服务器{
听443;
ssl-on;
server_name example.com;
ssl_certificate/etc/nginx/certs/unified.crt;
ssl\u certificate\u key/etc/nginx/certs/ssl.key;
ssl_客户端_证书/etc/nginx/certs/;
在客户端上验证ssl;
地点/{
root/var/www/example.com/html;
}
}
如果我想使用startssl s/mime证书,或者如果这是可能的,我不确定作为
ssl\u客户端\u证书使用什么

如果我不能使用startssl s/mime证书:在像ca.key和ca.crt这样的教程中,我会使用什么(可能是统一的ssl?)


在这两种情况下,我如何确定
ssl\u verify\u depth
?我已经找到了许多使用自签名密钥的例子,但就使用签名密钥链而言,我的理解开始滞后。谢谢你的帮助

我不确定你是否已经弄明白了,但我也有同样的问题,startssl的howto帮助我正确地设置了一切:我不会通过复制和粘贴文章来回答你的问题。
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;
    }
}