Linux下nginx配置https协议访问

简介:

一、配置nginx支持https协议访问,需要在编译安装nginx的时候添加相应的模块--with-http_ssl_module

查看nginx编译参数:/usr/local/nginx/sbin/nginx -V

如下所示:

configure arguments: --prefix=/usr/local/nginx --with-google_perftools_module --without-http_memcached_module --user=www --group=www --with-http_stub_status_module --with-http_sub_module --with-http_ssl_module --with-http_gzip_static_module --with-openssl=/usr/local/src/openssl-1.0.1h --with-zlib=/usr/local/src/zlib-1.2.8 --with-pcre=/usr/local/src/pcre-8.35

如果没有--with-http_gzip_static_module这个参数,需要重新编辑nginx

二、防火墙开启https协议默认端口443

vi /etc/sysconfig/iptables #编辑防火墙配置文件,添加以下代码

-A INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT

:wq! #保存退出

service iptables restart  #重启防火墙

三、创建https证书

确保机器上安装了openssl和openssl-devel

yum install openssl  openssl-devel  #CentOS使用yum命令安装

mkdir   /usr/local/nginx/conf/ssl   #创建证书存放目录

cd /usr/local/nginx/conf/ssl  #进入目录

创建服务器私钥:openssl genrsa -des3 -out server.key 1024  #根据提示输入证书口令

创建签名请求的证书(CSR):openssl req -new -key server.key -out server.csr  #输入上面设置的口令

#根据提示输入相应的信息

Country Name (2 letter code) [XX]:cn  #国家

State or Province Name (full name) []:zhejiang  #省份

Locality Name (eg, city) [Default City]:hangzhou  #城市

Organization Name (eg, company) [Default Company Ltd]:osyunwei  #公司

Organizational Unit Name (eg, section) []:sys  #部门

Common Name (eg, your name or your server's hostname) []:osyunwei   #主机名称

Email Address []:xxx@qq.com  #邮箱

Please enter the following 'extra' attributes

to be sent with your certificate request

A challenge password []:123456  #证书请求密钥,CA读取证书的时候需要输入密码

An optional company name []:osyunwei  #公司名称,CA读取证书的时候需要输入密码

openssl rsa -in server.key -out server_nopassword.key  #对key进行解密

openssl x509 -req -days 365 -in server.csr -signkey server_nopassword.key -out server.crt

#标记证书使用上述私钥和CSR

四、修改nginx配置文件,加载ssl证书

vi   /usr/local/nginx/conf/nginx.conf  #编辑

listen       80;

listen       443;

ssl on;

ssl_certificate /usr/local/nginx/conf/ssl/server.crt;

ssl_certificate_key /usr/local/nginx/conf/ssl/server_nopassword.key;

fastcgi_param HTTPS $https if_not_empty;  #有https协议时自动使用https,否则忽略这个参数。

:wq! #保存退出

service nginx restart #重启nginx

rewrite ^(.*) https://www.osyunwei.com$1 permanent;   #可以把http协议重定向到https上面

使用https协议打开网址,如下图所示:











本文转自 chengxuyonghu 51CTO博客,原文链接:http://blog.51cto.com/6226001001/1792318,如需转载请自行联系原作者
目录
相关文章
|
4天前
|
Web App开发 算法 应用服务中间件
nginx开启局域网https访问
【10月更文挑战第22天】为了调试WebRTC功能,需要在局域网内搭建HTTPS协议。具体步骤包括:在已部署Nginx和安装OpenSSL的环境中生成私钥、证书签名请求和自签名证书;将生成的文件放置到Nginx的证书目录并修改Nginx配置文件,最后重启Nginx服务。注意,自签名证书不受第三方机构认可,如需正式使用,需向CA申请签名。
|
16天前
|
Ubuntu 应用服务中间件 Linux
Linux下搭建Nginx环境的搭建
Linux下搭建Nginx环境的搭建
|
14天前
|
Java Linux 网络安全
NIFI在Linux服务区上的部署配置过程是什么?
【10月更文挑战第21天】NIFI在Linux服务区上的部署配置过程是什么?
35 2
|
27天前
|
Ubuntu Linux 编译器
Linux/Ubuntu下使用VS Code配置C/C++项目环境调用OpenCV
通过以上步骤,您已经成功在Ubuntu系统下的VS Code中配置了C/C++项目环境,并能够调用OpenCV库进行开发。请确保每一步都按照您的系统实际情况进行适当调整。
223 3
|
1月前
|
监控 安全 网络协议
快速配置Linux云服务器
【10月更文挑战第3天】快速配置Linux云服务器
|
1月前
|
应用服务中间件 Linux Shell
Linux 配置 Nginx 服务的详细步骤,绝对干货
Linux 配置 Nginx 服务的详细步骤,绝对干货
67 0
|
安全 网络协议 应用服务中间件
Nginx配置http跳转https
Nginx配置http跳转https
365 0
|
应用服务中间件 网络安全 nginx
Nginx学习研究-Nginx 安装 SSL 配置 HTTPS
Nginx学习研究-Nginx 安装 SSL 配置 HTTPS
387 0
|
1月前
|
安全 应用服务中间件 Shell
nginx配置https的ssl证书和域名
nginx配置https的ssl证书和域名
|
6月前
|
Ubuntu 应用服务中间件 Linux
nginx 配置代理ip访问https的域名配置
nginx 配置代理ip访问https的域名配置
1112 2