关于Nginx配置ssl证书实现https安全访问

目录
  • 一、Nginx的安装与配置
    • 安装步骤
  • 二、SSL证书获取
  • 三、Nginx配置

前题条件,拥有服务器与可以解析到该服务器的自己的域名。

一、Nginx的安装与配置

若已安装好了Nginx,则需查看自己的Nginx是否开启了SSL的模块功能:

./nginx -V

显示如上,则代表ssl功能已开启,否则可能出现以下错误提示:

nginx: [emerg] the "ssl" parameter requires ngx_http_ssl_module in /usr/local/nginx.conf:%

安装步骤

1.官网下载nginx压缩包nginx: download
我们先去官网下载一个最新稳定版的nginx

然后使用xftp或者rz上传到我们的服务器

# 解压压缩包

tar -zxvf nginx-1.22.1.tar.gz

然后进入到目录里面,查看是否有可执行权限(是不是绿色的),没有赋予执行权限

# 赋予执行权限

chmod +x configure

2.安装nginx所需要的环境

在安装之前先安装nginx所需要的一些环境

# c编译器
yum -y install gcc gcc-c++ autoconf automake make
# 解析正则的pcre库
yum install -y pcre pcre-devel
# 添加对gzip的支持
yum install -y zlib zlib-devel
# SSL
yum -y install pcre  pcre-devel zlib  zlib-devel openssl openssl-devel

3、开始安装

./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
make

二、SSL证书获取

可以使用openssl.cn获取免费的证书:

百度安全验证

三、Nginx配置

将获取的ssl证书放到服务器上,配置相应的路径。

    server {
        listen       80;
        #填写绑定证书的域名
        server_name  dragonwu.xyz;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        #强制将http的URL重写成https
        return 301 https://$host$request_uri;
    }

    server {
        listen       443 ssl;
        server_name  dragonwu.xyz; #你的域名

        ssl_certificate      /usr/local/ssl/dragonwu.xyz_cert_chain.pem; #证书
        ssl_certificate_key  /usr/local/ssl/dragonwu.xyz_key.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 -s reload

注意事项:443端口一定要打开,之前我就是因为443端口被防火墙保护,一直访问不到,开放443端口即可!

到此这篇关于关于Nginx配置ssl证书实现https安全访问的文章就介绍到这了,更多相关Nginx配置ssl证书安全访问内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 详解Nginx配置SSL证书实现Https访问

    背景 由于项目需求,安全起见,需要将之前的http接口访问变成https访问,所以需要配置SSL证书.项目的架构是这样的: 基本架构是硬负载(ReadWhere)+ 软负载(Nginx)+ Tomcat集群,现在的问题是SSl证书要配置在哪里,直接配置在硬负载上?还是分别配置在Nginx和Tomcat上?还是其他的配置方法呢? 首先在硬负载上配置放弃了,然后通过在网上查找资料,发现可以只在Nginx上配置证书,就是说Nginx接入使用Https,而Nginx与Tomcat之间使用Http进行衔接

  • nginx配置ssl证书实现https访问的示例

    一,环境说明 服务器系统:ubuntu16.04LTS 服务器IP地址:47.89.12.99 域名:bjubi.com 二,域名解析到服务器 在阿里云控制台-产品与服务-云解析DNS-找到需要解析的域名点"解析",进入解析页面后选择[添加解析]按钮会弹出如下页面: 主机记录这里选择@,记录值就是服务器ip地址,确认. 三,申请ca证书 在阿里云控制台-产品与服务-安全(云盾)-CA证书服务(数据安全),点击购买证书, 选择"免费版DV SSL",点击立即购买: 然

  • Nginx服务器的SSL证书配置以及对SSL的反向代理配置

    Nginx的SSL证书配置 1.使用openssl实现证书中心 由于是使用openssl架设私有证书中心,因此要保证以下字段在证书中心的证书.服务端证书.客户端证书中都相同 Country Name State or Province Name Locality Name Organization Name Organizational Unit Name Country Name State or Province Name Locality Name Organization Name Or

  • Nginx配置SSL证书监听443端口

    一.准备证书文件 我使用的是阿里云Symantec 免费版 SSL证书.将证书文件下载后解压得到如下文件 在nginx–>cert目录中建一个ssl目录,将上面的所有文件拷贝到ssl目录中 二.修改nginx.conf文件 在nginx.conf的http{}中填下如下内容 server { listen 443; server_name www.httpstest.com; ssl on; root html; index index.html index.htm; #这里的.pem/.key

  • Nginx配置SSL自签名证书的方法

    生成自签名SSL证书 生成RSA密钥(过程需要设置一个密码,记住这个密码) $ openssl genrsa -des3 -out domain.key 1024 拷贝一个不需要输入密码的密钥文件 $ openssl rsa -in domain.key -out domain_nopass.key 生成一个证书请求 $ openssl req -new -key domain.key -out domain.csr 这里会提示输入国家,地区组织,email等信息.最重要的一个是"common

  • 关于Nginx配置ssl证书实现https安全访问

    目录 一.Nginx的安装与配置 安装步骤 二.SSL证书获取 三.Nginx配置 前题条件,拥有服务器与可以解析到该服务器的自己的域名. 一.Nginx的安装与配置 若已安装好了Nginx,则需查看自己的Nginx是否开启了SSL的模块功能: ./nginx -V 显示如上,则代表ssl功能已开启,否则可能出现以下错误提示: nginx: [emerg] the "ssl" parameter requires ngx_http_ssl_module in /usr/local/ng

  • nginx配置SSL证书实现https服务的方法

    在前面一篇文章中,使用openssl生成了免费证书后,我们现在使用该证书来实现我们本地node服务的https服务需求.假如我现在node基本架构如下: |----项目 | |--- static # 存放html文件 | | |--- index.html # index.html | |--- node_modules # 依赖包 | |--- app.js # node 入口文件 | |--- package.json | |--- .babelrc # 转换es6文件 index.htm

  • Nginx配置SSL证书部署HTTPS网站的方法(颁发证书)

    自行颁发不受浏览器信任的SSL证书 手动颁发 xshell登录服务器,使用openssl生成RSA密钥及证书 # 生成一个RSA密钥 $ openssl genrsa -des3 -out tfjybj.key 1024 # 拷贝一个不需要输入密码的密钥文件 $ openssl rsa -in dmsdbj.key -out tfjybj_nopass.key # 生成一个证书请求 $ openssl req -new -key tfjybj.key -out tfjybj.csr 这里会提示输

  • Nginx配置ssl证书(https)的全过程

    如果有防火墙的话,记得开通443端口 安装nginx请看我的另一篇文章 < Nginx安装配置详解> 准备材料: 1.申请ssl证书,这个如何申请可以到百度搜一下,因为域名服务商不同,这里不做过多赘述: 2.服务器上已安装nginx,并可以正常访问. 开始配置: 1.进入到nginx目录,查看有没有http_ssl_module模块 ./nginx -V 2.如果没有,找到源码,输入以下命令进行安装(如果有,跳转到第6步) #prefix后面的路径是你安装nginx的路径 ./configur

  • Nginx配置SSL证书出错解决方案

    一.引言 当我们的Linux服务器上当中发布了web项目,有时候需要配置一个SSL证书,这样表示你这个网站还比较正式哈哈哈.当我把证书下载好,把nginx.conf配置好,简直就是万事俱备,只欠重启.结果一重启,duang~出错了. nginx:[emerg]unknown directive ssl,就是这个错误提示 因为我们配置这个SSL证书需要引用到nginx的中SSL这模块,然而我们一开始编译的Nginx的时候并没有把SSL模块一起编译进去,所以导致这个错误的出现. 二.错误解决步骤 既

  • Linux Nginx下SSL证书安装方法及WordPress CDN配置

    一.Nginx安装SSL证书 需要两个配置文件 (温馨提示:安装证书前请先备份您需要修改的服务器配置文件) 1_root_bundle.crt: 2_domainname.com.key. 注:这三个证书文件都在文件夹for Nginx.zip中,例:1_root_bundle.crt是根证书链(公钥),2_ domainname.com.key为私钥. (其中:证书公钥.私钥文件一般以您的域名命名:证书后缀名crt和cer的性质是一样的). 二.Nginx证书代码修改 1.打开Nginx安装目

  • Nginx 下配置SSL证书的方法

    1.Nginx 配置 ssl 模块 默认 Nginx 是没有 ssl 模块的,而我的 VPS 默认装的是 Nginx 0.7.63 ,顺带把 Nginx 升级到 0.7.64 并且 配置 ssl 模块方法如下: 下载 Nginx 0.7.64 版本,解压 进入解压目录: 复制代码 代码如下: wget http://sysoev.ru/nginx/nginx-0.7.64.tar.gz tar zxvf nginx-0.7.64.tar.gz cd nginx-0.7.64 如果要更改heade

随机推荐