Centos7.x下Nginx安装及SSL配置与常用命令详解

  

CentOS 7.x下Nginx安装及SSL配置与常用命令详解完整攻略主要包含以下几个步骤:

  1. 安装Nginx
  2. 配置SSL证书
  3. 配置Nginx支持SSL
  4. 常用命令详解

1. 安装Nginx

在CentOS中,通过yum可以很方便的安装Nginx,步骤如下:

sudo yum install epel-release
sudo yum install nginx

安装完成后,执行以下命令启动Nginx并设置自启动:

sudo systemctl start nginx
sudo systemctl enable nginx

此时在浏览器中输入服务器地址,可以看到Nginx默认欢迎页面,说明Nginx已经安装成功。

2. 配置SSL证书

为了保证网站的安全,必须配置SSL证书。这里以Let's Encrypt免费SSL证书为例。

首先安装Certbot:

sudo yum install certbot python2-certbot-nginx

使用Certbot获取证书:

sudo certbot --nginx -d example.com

这个命令将会自动检查证书是否过期并创建一个新的证书,之后会让你输入一些信息,包括你的邮箱地址(需要提醒你证书有效期接近结束,以期你能及时更新证书),询问是否同意同意证书提供商的条款。

3. 配置Nginx支持SSL

在安装完SSL证书之后,需要修改Nginx的配置文件以支持SSL。打开Nginx的默认配置文件:

sudo nano /etc/nginx/conf.d/default.conf

在server区块中添加以下代码:

listen 443 ssl;
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
ssl_protocols TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_ciphers 'EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH';

其中listen指定了Nginx在443端口监听SSL请求,ssl_certificate和ssl_certificate_key分别指定了证书和私钥的位置,这两个文件是之前使用Certbot获取证书时生成的。ssl_protocols指定了支持的传输协议类型,使用的是TLSv1.2。ssl_prefer_server_ciphers和ssl_ciphers指定了使用的加密算法。

修改完毕后保存退出,执行以下命令重新加载Nginx配置文件:

sudo systemctl reload nginx

此时访问https://example.com,即可通过SSL访问网站。

4. 常用命令详解

  • 启动Nginx:sudo systemctl start nginx
  • 停止Nginx:sudo systemctl stop nginx
  • 重启Nginx:sudo systemctl restart nginx
  • 设置Nginx自启动:sudo systemctl enable nginx
  • 停用Nginx自启动:sudo systemctl disable nginx
  • 查看Nginx状态:sudo systemctl status nginx

以上是CentOS 7.x下Nginx安装及SSL配置与常用命令详解的完整攻略,请按照步骤执行即可。

相关文章