Nginx实现https单向认证,在CentOS系统下
Nginx实现https单向认证,在CentOS系统下
1、安装
Nginx要安装http_ssl_module
模块,需要OpenSSL库和相关的开发包,因此在安装前,必须安装这些支持。在CentOS系统下,直接用yum安装即可
# yum install openssl openssl-devel
编译nginx
# tar -zxvf pcre-8.12.tar.gz # cd pcre-8.12 # ./configure –prefix=/usr/local # make # make install # tar -zxvf nginx-1.0.0.tar.gz # cd nginx-1.0.0 # ./configure –prefix=/usr/local/nginx –user=www –group=www –with-http_ssl_module –with-pcre # make # make install
2、制作密匙(单项认证)
# mkdir /usr/local/nginx/ssl # cd /usr/local/nginx/ssl # openssl genrsa -des3 -out server.key 1024 (建立服务器私钥,在这个过程中需要输入密码短语,需要记住这个密码) # openssl req -new -key server.key -out server.csr
输入命令以后,需要填写如下内容:
Country Name(国家:中国填写CN) State or Province Name(区域或是省份:CHONGQING) Locality Name(地区局部名字:CHONGQING) Organization Name(机构名称:填写公司名) Organizational Unit Name(组织单位名称:部门名称) Common Name(网站域名) Email Address(邮箱地址) A challenge password(输入一个密码) An optional company name(一个可选的公司名称)
输入万这些内容,就会在当前目录生成server.csr
文件
# cp server.key server.key.org # openssl rsa -in server.key.org -out server.key (对于使用上面的私钥启动具有SSL功能的NGINX) # openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt (使用上面的密钥和CSR对证书进行签名)
3、配置NGINX
编辑需要使用HTTPS的域名的NGINX配置文件(上面填写的Common Name网站域名)
server { listen 443; server_name www.xxx.com; ssl on; ssl_certificate /usr/local/nginx/ssl/server.crt; ssl_certificate_key /usr/local/nginx/ssl/server.key; }
保存,重启NGINX这样就搭建了一个简单的https服务的网站(单项认证)。
评论暂时关闭