Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在配置了SSL的情况下安装Nginx服务器_Ssl_Nginx - Fatal编程技术网

在配置了SSL的情况下安装Nginx服务器

在配置了SSL的情况下安装Nginx服务器,ssl,nginx,Ssl,Nginx,我已经将Nginx配置为反向代理,每个客户端调用都使用证书进行验证。但是当我在客户端机器中浏览时,我得到“400个错误请求,没有发送所需的SSL证书” 我启用了错误日志,它显示“客户端在读取客户端请求头时未发送所需的SSL证书,客户端:x.x.x,服务器:localhost,请求:“GET/favicon.ico HTTP/1.1”,主机:“y.y.y.y”,引用方:” 我不明白它想说的是什么问题 我的Nginx配置更改 服务器{ 谢谢, Vinod G您的配置尝试使用客户端的证书对客户端进行身

我已经将Nginx配置为反向代理,每个客户端调用都使用证书进行验证。但是当我在客户端机器中浏览时,我得到“400个错误请求,没有发送所需的SSL证书”

我启用了错误日志,它显示“客户端在读取客户端请求头时未发送所需的SSL证书,客户端:x.x.x,服务器:localhost,请求:“GET/favicon.ico HTTP/1.1”,主机:“y.y.y.y”,引用方:”

我不明白它想说的是什么问题

我的Nginx配置更改 服务器{

谢谢,
Vinod G

您的配置尝试使用客户端的证书对客户端进行身份验证,但客户端似乎没有发送该证书。 **ssl\u client\u certificate**表示您希望根据所指向的受信任CA验证客户端证书。然后,服务器将要求客户端发送证书,当它没有收到证书时,必须失败

为了更好地理解,可以在此处阅读该过程的图形指南:

要进一步调试,请执行以下操作:

  • 像wireshark这样的工具可以用来检查客户端是否正在发送证书

  • 使用Postman之类的工具设置客户端证书,并检查服务器是否按预期响应

  • 这方面的常见问题及解决方法

    error_log "C:/Error/error.log" debug;
        listen       443 ssl; 
    server_name  localhost;

    #ssl_protocols           TLSv1 TLSv1.1;         
    ssl_certificate         "C:/Test/server.crt";
        ssl_certificate_key     "C:/Test/server.key";
    ssl_client_certificate  "C:/Test/ca.crt";       
    ssl_verify_client    on;
    #ssl_session_cache       off;


    #proxy_ssl_server_name on; 
    #proxy_ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    #proxy_ssl_session_reuse off;



        location / {
                root   html;
                index  index.html index.htm;
                proxy_pass https://10.10.10.10/webservice;
    }