欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

Nginx单向认证的安装配置方法

程序员文章站 2022-06-13 19:31:11
首先系统要已经安装了openssl,以下是使用openssl安装配置单向认证的执行步骤与脚本: 复制代码 代码如下: #------------------------...

首先系统要已经安装了openssl,以下是使用openssl安装配置单向认证的执行步骤与脚本:

复制代码 代码如下:

#--------------------------------------------------------
# 单向认证,就是传输的数据加密过了,但是不会校验客户端的来源
# 单项ssl连接,也就是只是客户端验证服务器证书
#--------------------------------------------------------

#创建存储路径
rm -rf /usr/local/nginx/ca.1way
mkdir -p /usr/local/nginx/ca.1way/
cd /usr/local/nginx/ca.1way/

#建立服务器私钥(过程需要输入密码,请记住这个密码) 生成rsa密钥
/usr/local/openssl/bin/openssl genrsa -des3 -out server.key 2048

#------------------------------------------------------------------
enter pass phrase for server.key: zhoulf123
verifying - enter pass phrase for server.key: zhoulf123
#------------------------------------------------------------------

#生成一个证书请求
/usr/local/openssl/bin/openssl req -new -key server.key -out server.csr

#---------------------------------------------------------------------------------------------------------------
enter pass phrase for server.key: zhoulf123
country name (2 letter code) [xx]: cn                                           #国家
state or province name (full name) []: beijing                                  #区域或是省份
locality name (eg, city) [default city]: beijing                                #地区局部名字
organization name (eg, company) [default company ltd]: navinfo co.,ltd          #机构名称:填写公司名
organizational unit name (eg, section) []: gis                                  #组织单位名称:部门名称
common name (eg, your name or your server's hostname) []: vw.test.zhoulf.com    #网站域名
email address []: xxxxxx@163.com                                                #邮箱地址
a challenge password []:                                                        #输入一个密码
an optional company name []:                                                    #一个可选的公司名称
#---------------------------------------------------------------------------------------------------------------

#输入完这些内容,就会在当前目录生成server.csr文件
cp server.key server.key.org

#对于使用上面的私钥启动具有ssl功能的nginx
/usr/local/openssl/bin/openssl rsa -in server.key.org -out server.key

#---------------------------------
enter pass phrase for server.key.org: zhoulf123
#---------------------------------

#使用上面的密钥和csr对证书进行签名
/usr/local/openssl/bin/openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt

修改nginx.conf文件,添加https配置内容:

复制代码 代码如下:

#--------------------------------------------------------
# https server
server {
 listen 443;
 server_name localhost;

 ssl on;
 ssl_certificate      /usr/local/nginx/ssl.ca.1way/server.crt;
 ssl_certificate_key  /usr/local/nginx/ssl.ca.1way/server.key;

 ssl_session_timeout 5m;
 ssl_protocols sslv2 sslv3 tlsv1;
 ssl_ciphers all:!adh:!export56:rc4+rsa:+high:+medium:+low:+sslv2:+exp;
 ssl_prefer_server_ciphers on;

 location / {
  root /var/www/html;
  index index.html index.htm;
 }
}
#--------------------------------------------------------

#配置好后,重启nginx,采用 https打开网站,浏览器会提示证书错误,点击继续浏览即可