lnmp1.3下注册Let’s Encrypt证书并开启全站HTTPS

为什么说是在lnmp1.3下进行呢?

       lnmp1.4已经自带Let’s Encrypt的证书生成工具了。以下便是本站配置Let’s Encrypt启用https的过程/方法。

 

HTTPS

HTTPS(全称:Hyper Text Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。 它是一个URI scheme(抽象标识符体系),句法类同http:体系。用于安全的HTTP数据传输。https:URL表明它使用了HTTP,但HTTPS存在不同于HTTP的默认端口及一个加密/身份验证层(在HTTP与TCP之间)。这个系统的最初研发由网景公司(Netscape)进行,并内置于其浏览器Netscape Navigator中,提供了身份验证与加密通讯方法。现在它被广泛用于万维网上安全敏感的通讯,例如交易支付方面

开始

在centos7.0下进行的操作,并且lnmp已经安装。

1.首先安装git

yum install git

2.安装Let’s Encrypt

git clone https://github.com/letsencrypt/letsencrypt
cd letsencrypt

3. 

   ./letsencrypt-auto certonly –standalone –email admin@ruanun.com -d ruanun.com -d www.ruanun.com

-d后面可加子域名,email邮箱。

在完成Let’s Encrypt证书的生成之后,我们会在”/etc/letsencrypt/live/yourdomain/“域名目录下有4个文件就是生成的密钥证书文件。

cert.pem  – Apache服务器端证书
chain.pem  – Apache根证书和中继证书
fullchain.pem  – Nginx所需要ssl_certificate文件
privkey.pem – 安全证书KEY文件

4,配置Nginx

修改usr/local/nginx/conf/yourdomain.conf文件
在server{}段下面,加上第二个server{}。

例子

server
{
listen 443 ssl http2;
#listen [::]:443 ssl http2;
server_name ruanun.com ;
index index.html index.htm index.php default.html default.htm default.php;
root /home/wwwroot/ruanun.com;
ssl on;
ssl_certificate /etc/letsencrypt/live/ruanun.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/ruanun.com/privkey.pem;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_ciphers “EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5”;
ssl_session_cache builtin:1000 shared:SSL:10m;
# openssl dhparam -out /usr/local/nginx/ssl/dhparam.pem 2048
ssl_dhparam /usr/local/nginx/ssl/dhparam.pem;

include wordpress.conf;
#error_page 404 /404.html;

# Deny access to PHP files in specific directory
#location ~ /(wp-content|uploads|wp-includes|images)/.*\.php$ { deny all; }

include enable-php.conf;

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
expires 30d;
}

location ~ .*\.(js|css)?$
{
expires 12h;
}

location ~ /.well-known {
allow all;
}

location ~ /\.
{
deny all;
}

access_log /home/wwwlogs/ruanun.com.log;
}

最后重启Nginx

service nginx restart

注意:使用LNMP自动安装Let’s Encrypt ,因为涉及到要验证域名,所以请提前将你的域名解析到你的VPS主机上,这样才可以成功使用LNMP自动安装Let’s Encrypt 。

点赞

发表评论

电子邮件地址不会被公开。 必填项已用*标注