nginx 配置ssl
2024-08-31 12:15:37
单向SSL配置实例:
server{
listen ssl;
server_name www..com;
root /data/wwwroot/www..com/ ;
index index.html ;
ssl_certificate server.crt;
ssl_certificate_key server.key;
ssl_protocols TLSv1 TLSv1. TLSv1.;
ssl_ciphers ALL:!DH:!EXPORT:!RC4:+HIGH:+MEDIUM:!eNULL;
ssl_prefer_server_ciphers on;
location / {
}
}
配置说明:
. 443端口为ssl监听端口。
. ssl on表示打开ssl支持。
. ssl_certificate指定crt文件所在路径,如果写相对路径,必须把该文件和nginx.conf文件放到一个目录下。
. ssl_certificate_key指定key文件所在路径。
. ssl_protocols指定SSL协议。
. ssl_ciphers配置ssl加密算法,多个算法用:分隔,ALL表示全部算法,!表示不启用该算法,+表示将该算法排到最后面去。
. ssl_prefer_server_ciphers 如果不指定默认为off,当为on时,在使用SSLv3和TLS协议时,服务器加密算法将优于客户端加密算法。
注意:
nginx在源码安装的时候,默认没有开启ssl模块,需要重新编译安装,安装命令如下:
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
make && make install
然后重启nginx
双线SSL配置示例
server{
listen ssl;
server_name www..com;
root /data/wwwroot/www..com/ ;
index index.html ;
ssl_certificate server.crt;
ssl_certificate_key server.key;
ssl_protocols TLSv1 TLSv1. TLSv1.;
ssl_ciphers ALL:!DH:!EXPORT:!RC4:+HIGH:+MEDIUM:!eNULL;
ssl_prefer_server_ciphers on;
ssl_client_certificate ca.crt; //这里的ca.crt是根证书公钥文件
ssl_verify_client on;
location / {
}
}
说明:
就是比单向多了加粗的俩行,但是配置了双向后,服务器还要对客户端的证书进行认证,一般情况下,我们单向SSL使用较为普遍。
注:
因为我们的证书为自建CA签发的证书,浏览器并不信任该证书,所以在访问的时候会提示“证书不受信任”。
这种情况,只需要把CA的根证书导入到浏览器中 “受信任的根证书颁发机构” 中就不会再提示 “证书不受信任”。
导出为windows可用的证书方式如下:
[root@localhost root_ca]# openssl pkcs12 -export -inkey private/ca.key -in ca.crt -out ca.pfx
导出的证书复制到windows上,双击安装,按照向导导入到 “受信任的根证书颁发机构” ,即可。
最新文章
- Linux Svn 安装过程及配置
- log4j2 使用
- 养只爬虫当宠物(Node.js爬虫爬取58同城租房信息)
- Open vSwitch FAQ (三)
- 【转】maven POM.xml 标签详解
- WEB的相关知识总结
- Android开发UI之补间动画-布局添加动画
- telnet的使用
- 反射给对象赋值遇到的问题——类型转换[转http://blog.csdn.net/xiaohan2826/article/details/8536074]
- mac osx 10.9 ftp server端口
- git 拉取远程分之到本地
- Linux内存管理之slab分配器
- 解读java同步类CountDownLatch
- WPF ----在UserControl的xaml里绑定依赖属性
- Linux的硬盘分区
- ajax请求json中的数据
- log4j2使用入门(二)——与不同日志框架的适配
- C++ code:string stream(string流)
- 对比flash与ajax哪个好?
- OpenVAS应用实例