随着网络应用的普及,越来越多的服务和应用开始运行在互联网上。这些服务和应用需要保护用户数据的机密性、完整性和可用性。HTTPS作为一种可防止中间人攻击的加密通信协议,可以有效地保护用户数据的安全性和隐私性。同时,对于在局域网内部运行的服务和应用,也需要确保其安全性。因此,配置NGINX以支持HTTPS和局域网访问具有重要的实际意义。
一、安装Nginx
本文以windows系统为例,直接到官网下载即可,其他操作系统或者docker部署也可以参考本文配置,需要替换对应的路径。(安装Nginx直接解压便可以用)
二、安装Openssl
1、下载地址http://slproweb.com/products/Win32OpenSSL.html,必须下载1.0版本,不要下载1.1以及1.1以上的版本。
2、一直点下一步直接安装到C盘即可。
3、在C盘的根目录下建立以下文件路径:/usr/local/ssl,将文件openssl.cnf放到上面路径的ssl文件夹里面。openssl.cnf文件的内容可以网上搜索。
三、生成密钥
安装完成Openssl后运行OpenSSL\bin下的openssl.exe文件执行下列命令:
1、genrsa -des3 -out *.key 1024
2、req -new -key *.key -out *.csr
3、rsa -in *.key -out *_nopass.key
4、req -new -x509 -days 3650 -key *_nopass.key -out *.crt
(说明:*是你自己起的文件名,第一个文件会提示设个密码,必须是4位,后面会用到这个密码。
第二个文件需要提供一些参数,像国家、省市、公司、域名等,如果不在意的话随便填都可以。
总共会生成四个文件。)
四、nginx和openssl融合
将OpenSSL\bin下新生成的文件名为*.crt和*_nopass.key的两个文件,移动到nginx-1.7.1\conf文件夹下。
五、配置nginx.conf文件
找到nginx-1.7.1\conf下的nginx.conf文件编辑:
把HTTPS server注释部分释放出来,注意更改ssl_certificate和ssl_certificate_key对应的文件,其中名为*.crt和*_nopass.key的文件是上一步放到nginx-1.7.1\conf文件夹下的两个文件。
# HTTPS server
server {
listen 443 ssl;
server_name localhost;
ssl_certificate *.crt;
ssl_certificate_key *_nopass.key;
# ssl_session_cache shared:SSL:1m;
# ssl_session_timeout 5m;
# ssl_ciphers HIGH:!aNULL:!MD5;
# ssl_prefer_server_ciphers on;
location / {
root html;
index index.html index.htm;
}
}
六、nginx局域网访问(可选)
如果要让nginx服务器能够通过局域网访问,则只需要在nginx-1.7.1\conf文件内容中,复制粘贴server内的内容,并且把server_name的“localhost”改为服务器所在主机的IP地址,重启nginx,即可。文章来源:https://www.toymoban.com/news/detail-838093.html
** 欢迎关注 **文章来源地址https://www.toymoban.com/news/detail-838093.html
到了这里,关于Nginx开启https和局域网访问配置攻略的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!