nginx配置ssl证书实现https访问

7人阅读 评论(0) 收藏 举报
分类:

一,环境说明

服务器系统:ubuntu16.04LTS

服务器IP地址:47.89.12.99

域名: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 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;
    }
}
server {
    listen 80;
    server_name bjubi.com;// 你的域名
    rewrite ^(.*)$ https://$host$1 permanent;// 把http的域名请求转成https
}
复制代码

配置完成后,检查一下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端口开放才能访问到。

 

查看评论

链家网堡垒机实现以及用户访问权限设计

SDCC秉承干货实料的原则,旨在为技术人提供高品质的交流平台。在新的2017年春天,SDCC 2017之线上互联网应用架构峰会再次启航,将于2017年3月25日隆重开启,邀请了百度、微博、58同城、当当网、美团点评等一线互联网公司的技术总监、架构师、技术经理等,一同讨论高可用系统、消息队列、直播系统、电商、数据库、微服务等热门架构议题和实践案例,为架构师、开发者提供一个良好的学习晋升平台。
  • 2017年03月25日 17:32

Windows下Nginx配置SSL实现Https访问(包含证书生成)

Windows下Nginx配置SSL实现Https访问(包含证书生成) Windows下Nginx配置SSL实现Https访问(包含证书生成)   首先要说明为什么要实现https?   H...
  • oufua
  • oufua
  • 2017-01-12 10:26:29
  • 3498

nginx配置ssl证书

最近项目中所有的http请求都要升级到https,实践了一把配置nginx的ssl证书。 由于我们的证书是公司下发的,所以省略了申请证书的体验,关于申请免费证书可以自行搜索。 拿到的证书分两个文件,一...
  • u013542229
  • u013542229
  • 2016-12-19 16:25:12
  • 5005

阿里云免费DV证书Nginx配置https

首先去阿里云申请一个证书, 这里说是购买,支付0元, 选择免费型DV证书购买既可,然后可以看到证书列表里面有个空的证书,补全信息即可 接下来输入个人...
  • rosekissyou
  • rosekissyou
  • 2017-05-02 21:07:50
  • 3062

Nginx配置SSL实现Https访问

步骤: 1. 安装Openssl   下载地址:http://slproweb.com/products/Win32OpenSSL.html (根据系统选择32位或者64位版本下载安装)。   ...
  • ZJin_Hua
  • ZJin_Hua
  • 2016-12-24 16:16:16
  • 3570

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

自行颁发不受浏览器信任的SSL证书 xshell登录服务器,使用openssl生成RSA密钥及证书# 生成一个RSA密钥 $ openssl genrsa -des3 -out tfjybj.ke...
  • kwy15732621629
  • kwy15732621629
  • 2017-08-03 07:56:45
  • 979

腾讯云服务器申请SSL证书, 配置Nginx, 实现HTTPS

1,首先去腾讯云,申请SSL证书。我们这里申请的是免费的SSL,免费的可以用一年。收费的有点贵,5000起。2,按步骤申请后,得到四种主流web服务器的证书,如下:这里我们使用的是Nginx的证书:3...
  • chenggong2dm
  • chenggong2dm
  • 2017-03-14 11:01:02
  • 6561

nginx配置ssl证书实现https和http共存访问

由于自己生成的证书不受浏览器信任,所以需要到第三方ssl证书提供商处购买,在购买ssl证书时,需要提供一个自己的web服务器生成的csr密码。 生成csr的步骤: ①:生成RSA密钥:  openss...
  • eclothy
  • eclothy
  • 2015-05-23 10:29:30
  • 12861

nginx使用阿里云的免费ssl证书

阿里云提供免费的ssl证书,可以拿来装一回B,看我的网站也是HTTPS的。 重点内容:服务器要把443端口打开!!! 重点内容:服务器要把443端口打开!!! 重点内容:服务器要把443端口打开...
  • qq_25925973
  • qq_25925973
  • 2017-08-27 21:49:42
  • 2388

一个主机nginx绑定多个SSL证书(https)

一个nginx主机绑定多个SSL证书(https)的方法
  • zzpuser
  • zzpuser
  • 2017-05-04 18:45:16
  • 4792
    个人资料
    等级:
    访问量: 1万+
    积分: 269
    排名: 29万+
    最新评论