注意!!首先在nginx安装时添加--with-http_ssl_module模块,否则将会报错,只能从头开始了

自建证书:

通过openssl命令(软件包:openssl ;openssl-devel)

1)创建私钥:

openssl genrsa -out server.key 1024

2)证书请求:

openssl req -new -out server.csr -key server.key       //填写信息,注意!!将Common Name (eg, your name or your server's hostname行填写成服务器的IP地址)

3)自签署证书:

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

4)将证书变成浏览器支持的.p12格式

openssl pkcs12 -export -clcerts -in server.crt -inkey server.key -out server.p12

修改nginx配置文件

server {
listen 80;

listen 443 default ssl;  //这样可以设置一个虚拟主机同时支持HTTP和HTTPS

server_name localhost;  //由于我是根据IP访问,所以这里不做修改

ssl_certificate /root/server.crt;  //指定证书文件
ssl_certificate_key /root/server.key;  //指定密钥文件

ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_protocols SSLv2 SSLv3 TLSv1;  //指定密码为openssl支持的格式

ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;

  location {

    略

  }

}

将自建证书加入到浏览器中(以Chrome为例)

路径:设置-设置-设置-高级-隐私设置和安全性-管理证书-导入

注意,这时候可能还会提示安全问题,点击 高级,选择继续即可进入

补充:由于创建私钥后,每次开启nginx都需输入密码,用以下命令即可无需输入

1 cp server.key server.key.org

openssl rsa -in server.key.org -out server.key

LInux基于nginx与OpenSSL实现https访问的更多相关文章

  1. 基于Nginx和openssl实现https

    [root@localhost ssl]# yum -y install openssl [root@localhost ssl]# mkdir /usr/local/nginx/conf/ssl/ ...

  2. 基于nginx结合openssl实现https

    [root@localhost ~]#systemctl stop firewalld[root@localhost ~]#setenforce 0[root@localhost ~]#iptable ...

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

    Vincent.李   Windows下Nginx配置SSL实现Https访问(包含证书生成) Windows下Nginx配置SSL实现Https访问(包含证书生成) 首先要说明为什么要实现https ...

  4. Centos7.2下Nginx配置SSL支持https访问(站点是基于.Net Core2.0开发的WebApi)

    准备工作 1.基于nginx部署好的站点(本文站点是基于.Net Core2.0开发的WebApi,有兴趣的同学可以跳http://www.cnblogs.com/GreedyL/p/7422796. ...

  5. ubuntu安装nginx和设置网站https访问

    安装nginx 在控制台 输入 sudo apt-get install nginx 等待安装成功之后.可以打开浏览器.输入你的域名或者ip地址会出现"Welcome to nginx!&q ...

  6. docker安装nginx并配置通过https访问

    1. 下载最新的nginx的docker image docker pull nginx:latest 创建挂载路径 2.准备nginx需要的文件 nginx的配置文件 首先是nginx.conf文件 ...

  7. 为了解决linux配置Nginx 只能关闭防火墙才能访问的问题

    使用Nginx和iptables做访问权限控制(IP和MAC)     之前配置的服务器,相当于对整个内网都是公开的,而且,除了可以通过80端口的nginx来间接访问各项服务,也可以绕过nginx,直 ...

  8. Nginx配置SSL实现HTTPS访问

    nginx配置文件如下: server { listen 443 ssl; server_name www.domain.com; root /www/web; index index.html in ...

  9. linux下nginx配置ssl证书(https)

    nginx配置ssl很简单,首先需要两个文件,一个是crt文件,另一个是key文件,如下所示: xxx.crt;  #(证书公钥)xxx.key; #(证书私钥) 把这两个文件放到nginx的conf ...

随机推荐

  1. java1.7新特性:try-with-resources

    转载:https://blog.csdn.net/fanxiaobin577328725/article/details/53067163 首先看代码: import org.junit.Test; ...

  2. yii findAll方法

    $users = $this->user->find(array( 'select'=>array('id','username','email'), 'order' => ' ...

  3. How to remove duplicate lines in a large text file?

    How would you remove duplicate lines from a file that is  much too large to fit in memory? The dupli ...

  4. curl指令的坑

    今天使用curl指令构造一个docker api访问,一直得不到预期的结果.调试了半天,发现是网址没加引号. token=$(curl -v -XGET -H >& 由于网址跟了一串参数 ...

  5. 关于Java新手开发配置各种环境可能会遇到的的坑

    一.软件的安装 虽然国内的软件都支持中文目录安装,部分国外软件也支持,但是作为一名合格的程序开发者,必须做到以下几点 Windows下开发软件的安装目录和环境变量中永远不要包含中文字符,包括汉字[]. ...

  6. 【JulyEdu-Python基础】第 8 课:Python第三方库

    outline 数值计算 numpy 数据处理分析 pandas 可视化 matplotlib/seaborn 机器学习 Sklearn / keras 交互 pygame 网络 Selen ...

  7. Leetcode之动态规划(DP)专题-123. 买卖股票的最佳时机 III(Best Time to Buy and Sell Stock III)

    Leetcode之动态规划(DP)专题-123. 买卖股票的最佳时机 III(Best Time to Buy and Sell Stock III) 股票问题: 121. 买卖股票的最佳时机 122 ...

  8. python手撸桌面计算器

    网上有一些许多关于计算器的源码,但我似乎不太care 一直寻思着自己手撸一个才有意思,于是这就开始了 实现功能: 1.基本的两个数 +-x÷ 运算以及取反,百分之,平方等 2.支持连续运算 3.暂不支 ...

  9. MySQL_约束条件

    目录 八个约束条件 1.非空约束NOT NULL 2.主键约束PRIMARY KEY 3.多字段联合主键(复合主键) 4.唯一约束UNIQUE 5.默认约束DEFAULT 6.外键约束FOREIGN ...

  10. (5.13)mysql高可用系列——1主3从复制(SSL)

    目录: [0]需求 目前使用Mysql数据库,100GB+数据量,需要实现1主3从环境. 需要实现SSL安全复制,同时需要测试异常宕机切换演练 [1]实验环境 数据库架构:主从复制,基于主库搭建3个从 ...