Let's Encrypt: 为CentOS/RHEL 7下的nginx安装https支持-具体案例

环境说明:

centos 7
nginx 1.10.2

前期准备

软件安装

yum install -y epel-release
yum install -y certbot

创建目录及链接

方法1:在网站根目录下创建一个.well-known的目录
方法2:
mkdir -p /usr/local/nginx/cert/.well-known
ln -s /usr/local/nginx/cert/.well-known /data/www/example.com/.well-known
ln -s /usr/local/nginx/cert/.well-known /data/www/test.example.com/.well-known

命令执行

certbot certonly --webroot -w /usr/local/nginx/cert -d example.com -d test.example.com

根据提示进行操作,一般可以正常生产证书文件。
证书文件的目录存放在: ‘/etc/letsencrypt/live/example.com/‘
会有4个文件:
cert.pem
chain.pem
fullchain.pem
privkey.pem

特别要注意,这条命令只会将生成的证书放在这个目录,不会有一个/etc/letsencrypt/live/test.example.com/目录,test.example.com的证书和example.com的证书放在一起了,具体看后面的nginx配置。

nginx配置

server {
    listen  443 ssl http2;
    server_name example.com;
    index index.html index.htm index.php;
    root  /data/www/example.com;

    ssl_certificate       /etc/letsencrypt/live/example.com/fullchain.pem;
    ssl_certificate_key   /etc/letsencrypt/live/example.com/privkey.pem;

    ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH";
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_prefer_server_ciphers on;
    ssl_session_cache shared:SSL:10m;

    access_log  off;
}

server {
    listen  443 ssl http2;
    server_name test.example.com;
    index index.html index.htm index.php;
    root  /data/www/test.example.com;

    ssl_certificate       /etc/letsencrypt/live/example.com/fullchain.pem;
    ssl_certificate_key   /etc/letsencrypt/live/example.com/privkey.pem;

    ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH";
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_prefer_server_ciphers on;
    ssl_session_cache shared:SSL:10m;

    access_log  off;
}

定期更新


crontab -e # 新增如下定时任务
10 6 * * *  /bin/certbot renew --quiet &>/dev/null

Let‘s Encrypt 的证书有效期为90天,如果证书的有效期大于30天,则上面命令不会真的去更新证书的。

https测试

在浏览器输入 https://example.com 网址进行验证,一般Chrome会有一个绿色的锁以及Secure标示。

最后如果觉得所讲的东西能够帮助到你,并且希望了解更多的知识,进行更详细的深入的学习,欢迎加群632109190进行讨论和学习。

Let's Encrypt: 为CentOS/RHEL 7下的nginx安装https支持-具体案例

时间: 2024-10-26 02:56:04

Let's Encrypt: 为CentOS/RHEL 7下的nginx安装https支持-具体案例的相关文章

centos和redhat下,psycopg2安装

1. yum install postgresql-libs 2. yum install postgresql92-devel.i386 3. wget http://initd.org/psycopg/tarballs/PSYCOPG-2-5/psycopg2-2.5.1.tar.gz 4. tar zxvf psycopg2-2.5.1.tar.gz 5. cd psycopg2-2.5.1 6. python setup.py build_ext –pg-config /usr/pgsq

Linux(CentOS 7.0)下使用yum安装配置和使用svn.

Linux(CentOS 7.0)下使用yum安装配置和使用svn. 转载就标明原地址:  http://blog.csdn.net/u010587274/article/details/51015291 个人微信公众号:tanzi_888 (潭子技术圈) 一  安装说明 系统环境:CentOS-7.0安装方式:yum install (源码安装容易产生版本兼容的问题)安装软件:系统自动下载SVN软件 笔者用户:root 二 检查已安装版本 #检查是否安装了低版本的SVN[[email prot

CentOS 6.5下源码安装LAMP(Linux+Apache+Mysql+Php)环境

CentOS 6.5下源码安装LAMP(Linux+Apache+Mysql+Php)环境一. 系统环境:Linux系统版本: CentOS release 6.5Apache版本: httpd-2.2.24PHP 版本: php-5.6.11 二.安装前准备: 1.查看是否安装GCC ,GCC-C++编译器,如果没有则进行安装: 查看是否安装的命令: #gcc –v 若未安装在服务器联网情况下可以使用下列命令安装: #yum install gcc #yum install gcc-c++2.

CentOS 6.7下配置 yum 安装 Nginx

CentOS 6.7下配置 yum 安装 Nginx. 转载:http://www.linuxidc.com/Linux/2016-07/133283.htm 第一步,在/etc/yum.repos.d/目录下创建一个源配置文件nginx.repo: cd /etc/yum.repos.d/ vim nginx.repo 填写如下内容: [nginx]name=nginx repobaseurl=http://nginx.org/packages/centos/6/$basearch/gpgch

CentOS 7环境下Kafka的安装和基本使用

CentOS 7环境下Kafka的安装和基本使用 基础环境 Windows 10 X64 VMware-workstation-full-12.0.0-2985596 CentOS Linux release 7.4.1708 CentOS 7环境下安装Kafka 安装JDK 在CentOS上将JDK下载到本地.jdk-8u152-linux-x64.tar.gz 解压并将文件移动到/opt/java目录下 sudo tar -vxzf jdk-8u152-linux-x64.tar.gzsud

CentOS 7.4下源码安装 Apache HTTP Server(httpd-2.4.35)

CentOS 7.4下源码安装 Apache HTTP Server(httpd-2.4.35) 前提:确保安装了expat-devel, APR包 (apr-1.6.3.tar.gz 和 apr-util-1.6.1.tar.gz); 用YUM方式安装expat-devel 和 apr-util-devel yum -y install expat-devel yum -y install apr-util-devel 解压apr-1.6.3.tar.gz后进入该目录下,执行: ./confi

Linux下查看Nginx安装目录、版本号信息?

Linux环境下,怎么确定Nginx是以那个config文件启动的? 输入命令行: ps  -ef | grep nginx 摁回车,将出现如下图片: master process 后面的就是 nginx的目录. 怎么查看服务器上安装的nginx版本号,主要是通过ngix的-v或-V选项,查看方法如下图所示: -v 显示 nginx 的版本. -V 显示 nginx 的版本,编译器版本和配置参数. 查看服务器上安装的Nginx版本号 http://www.linuxidc.com/Linux/2

linux下的nginx安装

linux下的nginx安装 检查是否安装了g++.gcc. # rpm -qa | grep gcc 之后需要出现3个包.如果没有出现.需要安装g++.gcc. # yum install gcc-c++ 进入:/usr/java/nginx位置 下载nginx:    wget http://nginx.org/download/nginx-1.8.0.tar.gz 下载openssl : wget http://www.openssl.org/source/openssl-fips-2.0

centos/RHEL 7.6 使用yum安装php7.3(方便wordpress的php7.3需求,并解决了libphp7.so缺失问题)

我最近想安装一个wordpress, 但是官网介绍需要php7.3以上版本,但是百度了一下,都是要编译安装. 为此,我想,centos..., php... 两大当红辣子鸡没有yum安装方式,简直不可能. 为此,我搜寻了各种源,发现remi源有php73. 但是我yum install 以后,发现两个致命的问题: (1)php -v 不会显示任何东西,要php73 -v 才行 (2)建立一个phpinfo的测试页,没有任何反应,据研究是apache缺乏libphp7.so模块,各种教程都让我编译