nginx配置ssl证书实现https访问

一,环境说明

服务器系统:centos7.2

服务器IP地址:4xxxx

域名:bjubi.com

二,域名解析到服务器

在阿里云控制台-产品与服务-云解析DNS-找到需要解析的域名点“解析”,进入解析页面后选择【添加解析】按钮会弹出如下页面:

主机记录这里选择@,记录值就是服务器ip地址,确认。

三,申请ca证书

在阿里云控制台-产品与服务-安全(云盾)-CA证书服务(数据安全),点击购买证书,

选择“免费版DV SSL”,点击立即购买:

然后点去支付:

最后确认支付:

就会回到管理界面:

点击“补全”,输入要解析的域名,点下一步:

说明:因为我们这里申请的是开发版免费证书,所以一个证书仅支持一个域名认证,不支持通配符。

等待几分钟,证书状态变为“已签发”后,证书就申请成功了。

四,下载证书

列表中找到已签发的证书,下载:

进入下载页面,找到ngin页签中nginx配置信息,并“下载证书 for Nginx”:

记录以下内容,为了一会儿配置nginx用:

下载的文件有两个:

1,214292799730473.pem

2,214292799730473.key

五,服务器安装,配置nginx

登录到服务器:

$ apt-get update // 更新软件
$ apt-get install nginx // 安装nginx

六,配置ca证书

1,nginx的安装目录为:/etc/nginx/。进入目录,增加cert/文件夹,把刚刚下载的两个文件上传到cert/文件夹中。

2,在/etc/nginx/sites-enabled/下,增加bjubi.com文件。内容如下:

说明:下面的配置是对443端口和80端口进行监听,443端口要启用ssl。监听443端口的server配置可以仿照上面ca认证页面的nginx配置示例进行配置。

root节点笔者创建了一个bjubi.com/的文件夹,专门存放来自这个域名的请求以示区分。

bjubi.com/文件夹下增加一个index.html文件,里面仅仅写了一行<h1>welcome。

server {
    listen 80;
    server_name bjubi.com;// 你的域名
    rewrite ^(.*)$ https://$host$1 permanent;// 把http的域名请求转成https
}

server {
    listen 443;
    server_name bjubi.com; // 你的域名
    ssl on;
    root /var/www/bjubi.com; // 前台文件存放文件夹,可改成别的
    index index.html index.htm;// 上面配置的文件夹里面的index.html
    ssl_certificate  cert/214292799730473.pem;// 改成你的证书的名字
    ssl_certificate_key cert/214292799730473.key;// 你的证书的名字
    ssl_session_timeout 5m;
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_prefer_server_ciphers on;
    location / {
        index index.html index.htm;
    }
}

配置完成后,检查一下nginx配置文件是否可用,有successful表示可用。

$ nginx -t // 检查nginx配置文件

配置正确后,重新加载配置文件使配置生效:

$ nginx -s reload // 使配置生效

至此,nginx的https访问就完成了,并且通过rewrite方式把所有http请求也转成了https请求,更加安全。

如需重启nginx,用以下命令:

$ service nginx stop // 停止
$ service nginx start // 启动
$ service nginx restart // 重启

七,访问效果

输入http:bjubi.com也会自动跳转至https页面。

说明:如果是云服务器比如阿里云ECS,需要到阿里云ECS的管理后台的安全组,修改端口过滤规则把80端口和443端口开放才能访问到。

原文地址:https://www.cnblogs.com/xy51/p/9816567.html

时间: 2024-10-11 06:01:54

nginx配置ssl证书实现https访问的相关文章

Nginx配置SSL证书部署HTTPS网站(转)

原文:http://www.lovelucy.info/nginx-ssl-certificate-https-website.html 一.什么是 SSL 证书,什么是 HTTPS SSL 证书是一种数字证书,它使用 Secure Socket Layer 协议在浏览器和 Web 服务器之间建立一条安全通道,从而实现: 1.数据信息在客户端和服务器之间的加密传输,保证双方传递信息的安全性,不可被第三方窃听: 2.用户可以通过服务器证书验证他所访问的网站是否真实可靠. (via百度百科) HTT

Nginx 配置 SSL 证书 + 搭建 HTTPS 网站教程

一.HTTPS 是什么? 根据维基百科的解释: 超文本传输安全协议(缩写:HTTPS,英语:Hypertext Transfer Protocol Secure)是超文本传输协议和SSL/TLS的组合,用以提供加密通讯及对网络服务器身份的鉴定.HTTPS连接经常被用于万维网上的交易支付和企业信息系统中敏感信息的传输.HTTPS不应与在RFC 2660中定义的安全超文本传输协议(S-HTTP)相混. HTTPS 目前已经是所有注重隐私和安全的网站的首选,随着技术的不断发展,HTTPS 网站已不再是

[转] Nginx 配置 SSL 证书 + 搭建 HTTPS 网站教程

一.HTTPS 是什么? 根据维基百科的解释: 超文本传输安全协议(缩写:HTTPS,英语:Hypertext Transfer Protocol Secure)是超文本传输协议和SSL/TLS的组合,用以提供加密通讯及对网络服务器身份的鉴定.HTTPS连接经常被用于万维网上的交易支付和企业信息系统中敏感信息的传输.HTTPS不应与在RFC 2660中定义的安全超文本传输协议(S-HTTP)相混. HTTPS 目前已经是所有注重隐私和安全的网站的首选,随着技术的不断发展,HTTPS 网站已不再是

nginx配置ssl证书后无法访问https

一直听说https更安全,要安装证书,一直没试过,今天终于试了试 首先得有个http的域名网站,服务器. 到阿里云的安全-ssl证书管理申请一个免费的,可以绑定一个域名  然后完善资料,照着例子配置一个ssl 重启nginx 具体流程阿里云有文档 下面是我的conf配置文件 server { listen 443 ssl http2; #listen [::]:443 ssl http2; server_name yeves.cn www.yeves.cn; index index.html i

Nginx配置SSL证书部署HTTPS网站

一.什么是 SSL 证书,什么是 HTTPSSSL 证书是一种数字证书,它使用 Secure Socket Layer 协议在浏览器和 Web 服务器之间建立一条安全通道,从而实现:1.数据信息在客户端和服务器之间的加密传输,保证双方传递信息的安全性,不可被第三方窃听:2.用户可以通过服务器证书验证他所访问的网站是否真实可靠. HTTPS 是以安全为目标的 HTTP 通道,即 HTTP 下加入 SSL 加密层.HTTPS 不同于 HTTP 的端口,HTTP默认端口为80,HTTPS默认端口为44

nginx配置ssl证书,允许ssl访问

官方参考文档,包括apache.nginx.IIS的ssl配置: http://www.wosign.com/Docdownload/ 实例一.配置http转发到https,一个虚拟主机内有两个server,部分内容使用**代替 Ngx01(10.66.**.**),Ngx02(10.66.**.**)1.在/etc/nginx添加sslkey文件夹,导入ssl证书到该文件夹下,参考附件2.修改虚拟主机upstream am*** { server 172.22.**.*:80; keepali

nginx配置ssl证书

申请的ssl证书的网址:https://www.pianyissl.com/ 由于是测试,所以选择免费的可试用 申请后会有个压缩包 里面有个nginx文件夹,把下面的 server.key server.pem 这两个文件上传到服务器上. 在这个我把这两个文件移动到/usr/local/nginx/conf 目录下 server 端编译nginx时需要加参数 ./configure --user=www --group=www --prefix=/usr/local/nginx --with-h

nginx 自建证书以https 访问

1.生成自签名ssl证书 mkdir /ssl创建个文件夹放ssl证书openssl genrsa -des3 -out domain.key 1024#生成RSA密钥(过程需要设置一个密码,记住这个密码)openssl rsa -in ylc520.key -out ylc520_nopass.key#拷贝一个不需要输入密码的密钥文件openssl req -new -key domain.key -out domain.csr#生成一个证书请求这里会提示输入国家,地区组织,email等信息.

Nginx 配置SSL证书

在nginx配置文件中改为如下 (以下属性中ssl开头的属性与证书配置有直接关系,其它属性请结合自己的实际情况复制或调整) : server { listen 80; server_name www.jado.vip jado.vip; return 301 https://www.jado.vip$request_uri; } server { listen 443; server_name www.jado.vip jado.vip; ssl on; ssl_certificate cert