New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
smartdns作为tls服务端指派证书链,签发者证书被丢弃 #1324
Comments
#343 可能也是这个问题,服务端 subjet alt name 是通配符域名 |
CN是IP地址吗? |
common name 不能是IP,IP记录在subjet alt name中的IP Address= |
举个例子吧,访问域名,cn是什么 |
|
错误码20: X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLY: unable to get local issuer certificate the issuer certificate could not be found: this occurs if the issuer certificate of an untrusted certificate cannot be found. |
怎么一夜之间问题更严重了?服务端也是smartdns的 |
换绑定口到835了。。。853会被打 |
你给的那个log里面,错误码20 |
考虑这一行下面一行的错误,还是怀疑服务端用的subject alt name,但是只识别了common name。 |
这个错误是openssl返回的。你最好用openssl命令远程链接下看看是否正常。 |
还有,你本地的CA证书路径是否正确设置到smartdns中,最新代码增加了subject alt name的处理。 |
更新后似乎无改善。
客户端报错行变化了,但内容没有变化
证书是可信CA签发的,已经更新了本地 ca-certificates 包 |
我说了,不是san问题 unable to get local issuer certificate 这个错误导致证书校验失败 看看本地证书安装是否正确吧 apt-get install ca-certificates |
curl https://jpn2n.com:835 curl failed to verify the legitimacy of the server and therefore could not 感觉是服务端的证书问题 |
那么问题就变成,smartdns指定证书,但客户端报错的问题了。 |
smartdns没有把这个证书作为证书链处理,而当成是CA证书了 |
Line 6661 in 2e3e03b
替换为
|
还有一个修改验证点是,保留原有代码6671行,增加加载CA中介证书 |
这个可行,一切都正常了。 |
问题现象
smartdns tls 服务作为 smartdns 的上游,服务端配置有效证书(阿里云购买)。其中主域名(common name)是www.(some domain).com,备用域名(subjet alt name)是(some domain).com。
域名注册商配置服务端IP指向(some domain).com(www.(some domain).com 指向其他的IP)。
客户端配置
server-tls (some domain).com:853 -tls-host-verify (some domain).com
时报错verify failed
。由于服务端使用nginx反代需要识别TLS SNI,不能将 -tls-host-verify 配置为 www.(some domain).com。
运行环境
无关
smartdns来源以及版本
最新版自编译
涉及的配置(注意去除个人相关信息)
服务端
客户端
重现步骤
信息收集
日志
The text was updated successfully, but these errors were encountered: