- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
nginx ssl 双向认证.docx
nginx ssl 双向认证
2011-04-12 14:21:34
标签: HYPERLINK /tagindex.php?keyword=ssl+ \t _blank ssl HYPERLINK /tagindex.php?keyword=nginx \t _blank nginx
HYPERLINK /blog/569392 Nginx的浏览器/服务器双向SSL证书认证配置
文章分类: HYPERLINK /blogs/category/os 操作系统 最近的项目中需要安全性控制,而我又懒得改动后台的程序代码,故而想在反向代理层加入SSL证书验证。 一直在用Nginx做反向代理,但是其SSL的配置只用过普通的服务端单向证书。在Google,百度狂搜一通之后,一无所获,依旧是那老三样,只有单向认证的示例。浏览器端双向认证的配置好像从没人写过。 无奈之下,只好从OpenSSL的客户端证书开始学起,一点一点啃,大段大段的E文让我这半瓶子醋看的头晕眼晕。最后在 /blogs/securitymonkey/howto-securing-a-website-with-client-ssl-certificates-11500 的提示下终于把这个证书搞定,来秀一个。 这需要一下几个步骤: 1) 安装openssl用来做证书认证 2) 创建一个CA根证书 3) 创建一个自签名的服务器证书 4) 设置Nginx 5) 创建客户端证书 6) 安装客户端证书到浏览器 7) Profit. 1) 这一步我是在ubuntu下直接apt-get装的openssl, 配置文件安装在/etc/ssl/f 修改f的以下几段 [ ca ] default_ca = foo Openssl将会寻找名称为foo的配置段
Java代码 ?
[?foo?]??
dir?=?/etc/ssl/private??
database?=?$dir/index.txt??
serial?=?$dir/serial??
private_key?=?$dir/ca.key??
certificate?=?$dir/ca.crt??
default_days?=?3650??
default_md?=?md5??
new_certs_dir?=?$dir??
policy?=?policy_match??
[ foo ]
dir = /etc/ssl/private
database = $dir/index.txt
serial = $dir/serial
private_key = $dir/ca.key
certificate = $dir/ca.crt
default_days = 3650
default_md = md5
new_certs_dir = $dir
policy = policy_match
policy_match 我保持默认值没有改
Java代码 ?
[?policy_match?]??
countryName?=?match??
stateOrProvinceName?=?match??
organizationName?=?match??
organizationalUnitName?=?match??
commonName?=?supplied??
emailAddress?=?optional??
[ policy_match ]
countryName = match
stateOrProvinceName = match
organizationName = match
organizationalUnitName = match
commonName = supplied
emailAddress = optional
默认签发有效期为10年,你可以自己设置一个合适的值 2) 创建一个新的CA根证书 下面的几个脚本我都放在/etc/ssl目录下 new_ca.sh:
Java代码 ?
#!/bin/sh??
#?Generate?the?key.??
openssl?genrsa?-out?private/ca.key??
#?Generate?a?certificate?request.??
openssl?req?-new?-key?private/ca.key?-out?private/ca.csr??
#?Self?signing?key?is?bad...?this?could?work?with?a?third?party?signed?key...?registeryfly?has?them?on?for?$16?
文档评论(0)