走啊走
来学wordpress建站吧

CentOS 7.4 实例配置 Nginx + HTTPS 服务

基于 TCP(以及UDP)协议的 HTTPS(Hyper Text Transfer Protocol Secure)服务,相比 HTTP(Hyper Text Transfer Protocol)服务更安全的原因,在于 HTTPS 的通信协议是由 TLS (Transport Layer Security)或者 SSL(Secure Sockets Layer)加密完成的。因此,使用 HTTPS 服务部署网络服务更加安全可靠。

本文介绍了如何在 CentOS 7.4 实例环境中安装配置 Nginx 的 HTTPS 服务。若您的 ECS 实例为其他 Linux 发行版,操作有部分差异。


前提条件

配置 HTTPS 服务时,您需要预先在 ECS 实例所在的安全组开启 TCP 443 通信端口。参阅 添加安全组规则

若您需要同时测试 HTTP 访问模式,您需要预先在 ECS 实例所在的安全组开启 TCP 80 通信端口。参阅 添加安全组规则

配置 Nginx + HTTPS 服务

根据以下步骤配置 Nginx + HTTPS 服务:

  1. 远程连接 并登录到 Linux 实例。

  2. 运行 cd /usr/local 切换目录。

  3. 运行以下命令安装 PCRE 和 zlib 库。

    			
    1. yum -y install pcre pcre-devel
    2. yum install -y zlib-devel

  4. 前往 https://nginx.org/download/ 下载 Nginx。如示例中 nginx-1.9.9.tar.gz 的下载地址为 http://nginx.org/download/nginx-1.9.9.tar.gz

    运行 wget http://nginx.org/download/nginx-1.9.9.tar.gz 下载 Nginx。

    NginxDownload

  5. 运行 tar -xvzf nginx-1.9.9.tar.gz 解压安装包。

  6. 前往 https://www.openssl.org/source 下载 OpenSSL。如示例中 openssl-1.1.0g.tar.gz 的下载地址为 https://www.openssl.org/source/openssl-1.1.0g.tar.gz

    运行 wget https://www.openssl.org/source/openssl-1.1.0g.tar.gz 下载 OpenSSL。

    OpenSSLDownload

  7. 运行 tar -xvzf openssl-1.1.0g.tar.gz 解压安装包。

  8. 运行 cd nginx-1.9.9 切换目录。

  9. 依次运行以下命令配置 Nginx。

    			
    1. ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_gzip_static_module --with-http_ssl_module --with-openssl=/usr/local/openssl-1.1.0g
    2. make && make install

    注意
    您需要根据自己下载的 OpenSSL 版本号更改命令中的 /usr/local/openssl-1.1.0g。

    Configure

  10. 运行 openssl req -new -x509 -nodes -out server.crt -keyout server.key 生成证书,并根据您的需要填写信息。

    GenerateCertificate

  11. 运行 vi /usr/local/nginx/conf/nginx.conf 修改 Nginx 配置文件,示例使用了 vi /usr/local/nginx-1.9.9/conf/nginx.conf 命令。

    按下 i 键进入编辑,复制并粘贴以下内容后,按 Esc 并输入 :wq 保存退出。

    			
    1. server {
    2. listen 443 ssl;
    3. server_name localhost;
    4. ssl_certificate server.crt;
    5. ssl_certificate_key server.key;
    6. ssl_session_cache shared:SSL:1m;
    7. ssl_session_timeout 5m;
    8. ssl_ciphers HIGH:!aNULL:!MD5;
    9. ssl_prefer_server_ciphers on;
    10. location / {
    11. root html;
    12. index index.html index.htm;
    13. }
    14. }

    Edit

  12. 运行 /usr/local/nginx/sbin/nginx 启动 Nginx。

测试结果

打开浏览器测试配置结果:

  • 使用 ECS 实例的公网 IP 地址 测试。

    Test1

  • 使用 HTTPS + ECS 实例的公网 IP 地址 测试。

    Test2

微信订阅号:wordpress8—WordPress建站吧 » CentOS 7.4 实例配置 Nginx + HTTPS 服务

评论 4

#快捷签到点我#

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
  1. #2

    知识在测试中积累,快乐无比

    点滴记录1年前 (2018-12-07)回复
    • 对的 ,长知识很快的

      smartcim1年前 (2018-12-07)回复
  2. #1

    没用过nginx,一直用的apache。
    刚开始的虚拟主机,后来的vps。
    没用过面板,从自己部署环境,到lamp一键包。最后还是觉得,直接用一键包省事

    枂下1年前 (2018-12-07)回复
    • 现在宝塔面板很火的

      smartcim1年前 (2018-12-07)回复


走啊走—【WordPress建站吧,轻松学建站!关注微信订阅号:wordpress8】

wordpress建站安装》联系我们