文档章节

Ubuntu 16.04 上的 NGINX Web 服务器!

l
 linux-tao
发布于 2017/08/22 23:27
字数 1099
阅读 1
收藏 0
点赞 0
评论 0

特别地,该软件可在可以使用 shell 的服务器上使用:换句话说,它可以通过 SSH 连接使用。

在本教程中,我们将看到如何使用 certbot 获取免费的 SSL 证书,并在 Ubuntu 16.04 服务器上使用 Nginx。

安装 Certbot

第一步是安装 certbot,该软件客户端可以几乎自动化所有的过程。 Certbot 开发人员维护自己的 Ubuntu 仓库,其中包含比 Ubuntu 仓库中存在的软件更新的软件。

添加 Certbot 仓库:

# add-apt-repository ppa:certbot/certbot

接下来,更新 APT 源列表:

# apt-get update

此时,可以使用以下 apt 命令安装 certbot:

# apt-get install certbot

Certbot 现已安装并可使用。

获得证书

有各种 Certbot 插件可用于获取 SSL 证书。这些插件有助于获取证书,而证书的安装和 Web 服务器配置都留给管理员。

我们使用一个名为 Webroot 的插件来获取 SSL 证书。

在有能力修改正在提供的内容的情况下,建议使用此插件。在证书颁发过程中不需要停止 Web 服务器。

配置 NGINX

Webroot 会在 Web 根目录下的 .well-known 目录中为每个域创建一个临时文件。在我们的例子中,Web 根目录是 /var/www/html。确保该目录在 Let’s Encrypt 验证时可访问。为此,请编辑 NGINX 配置。使用文本编辑器打开 /etc/nginx/sites-available/default:

# $EDITOR /etc/nginx/sites-available/default

在该文件中,在 server 块内,输入以下内容:

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

保存,退出并检查 NGINX 配置:

# nginx -t

没有错误的话应该会显示如下:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

重启 NGINX:

# systemctl restart nginx

使用 Certbot 获取证书

下一步是使用 Certbot 的 Webroot 插件获取新证书。在本教程中,我们将保护示例域 www.example.com。需要指定应由证书保护的每个域。执行以下命令:

# certbot certonly --webroot --webroot-path=/var/www/html -d www.example.com

在此过程中,Cerbot 将询问有效的电子邮件地址,用于进行通知。还会要求与 EFF 分享,但这不是必需的。在同意服务条款之后,它将获得一个新的证书。

最后,目录 /etc/letsencrypt/archive 将包含以下文件:

  • chain.pem:Let’s Encrypt 加密链证书。
  • cert.pem:域名证书。
  • fullchain.pem:cert.pem和 chain.pem 的组合。
  • privkey.pem:证书的私钥。

Certbot 还将创建符号链接到 /etc/letsencrypt/live/domain_name/ 中的最新证书文件。这是我们将在服务器配置中使用的路径。

在 NGINX 上配置 SSL/TLS

下一步是服务器配置。在 /etc/nginx/snippets/ 中创建一个新的代码段。 snippet 是指一段配置,可以包含在虚拟主机配置文件中。如下创建一个新的文件:

# $EDITOR /etc/nginx/snippets/secure-example.conf

该文件的内容将指定证书和密钥位置。粘贴以下内容:

ssl_certificate /etc/letsencrypt/live/domain_name/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/domain_name/privkey.pem;

在我们的例子中,domain_name 是 example.com。

编辑 NGINX 配置

编辑默认虚拟主机文件:

# $EDITOR /etc/nginx/sites-available/default

如下:

server {
listen 80 default_server;
listen [::]:80 default_server;
server_name www.example.com
return 301 https://$server_name$request_uri;
# SSL configuration
#
listen 443 ssl default_server;
listen [::]:443 ssl default_server;
include snippets/secure-example.conf
#
# Note: You should disable gzip for SSL traffic.
# See: https://bugs.debian.org/773332
# ...
}

这将启用 NGINX 加密功能。

保存、退出并检查 NGINX 配置文件:

# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

重启 NGINX:

# systemctl restart nginx

总结

按照上述步骤,此时我们已经拥有了一个安全的基于 NGINX 的 Web 服务器,它由 Certbot 和 Let’s Encrypt 提供加密。这只是一个基本配置,当然你可以使用许多 NGINX 配置参数来个性化所有东西,但这取决于特定的 Web 服务器要求。

via: https://www.unixmen.com/encryption-secure-nginx-web-server-ubuntu-16-04/

作者:Giuseppe Molica 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

原文来自:https://linux.cn/article-8747-1.html

本文地址:http://www.linuxprobe.com/ubuntu-nginx-web.html

© 著作权归作者所有

共有 人打赏支持
l
粉丝 9
博文 565
码字总数 640167
作品 0
深圳
运维
如何在Nginx上正确启用HTTPS,Let’s Encrypt在Ubuntu 16.04 / 17.10上进行加密

如何在Nginx上正确启用HTTPS,Let’s Encrypt在Ubuntu 16.04 / 17.10上进行加密 IMCN 29分钟前暂无评论 阅读 15 次 本教程将向您展示如何在Ubuntu 16.04 / 17.10上使用Let’s Encrypt在Nginx...

IMCN ⋅ 2017/12/28 ⋅ 0

为什么 Chrome 又不支持我的 HTTP/2 网站了?

昨晚偶尔清理 Chrome 插件时发现我的 “HTTP/2 and SPDY indicator”插件好像好久没亮了。这个插件在你访问到一个支持 HTTP/2 (或之前的 SPDY 协议)的网站时会点亮,而我明明记得之前专门让...

局长 ⋅ 2016/11/13 ⋅ 14

2018年给你选择7个最好的Linux服务器发行版

2018年给你选择7个最好的Linux服务器发行版 IMCN 2小时前暂无评论 阅读 36 次 选择Linux的服务器? 当谈到不同操作系统的普及时,Linux在服务器市场上占有绝对的头把交椅。 由于稳定性、安全...

IMCN ⋅ 2017/12/25 ⋅ 3

怎样在 Ubuntu 下安装 Moodle(“魔灯”)

这是一篇关于如何在 Ubuntu 16.04 上安装 Moodle (“魔灯”)的逐步指南。Moodle (模块化面向对象动态学习环境Modular-object-oriented dynamic learning environment的缩写)是一种自由而...

作者: Rosehosting ⋅ 01/07 ⋅ 0

Nginx 学习笔记(一)如何配置一个安全的HTTPS网站服务器

一、系统环境 1、系统:Ubuntu 16.04.2 LTS 2、WEB服务器:Openresty11.2.5 二、开始配置 1、获取certbot客户端 wget https://dl.eff.org/certbot-autochmod a+x certbot-auto 2、停止Nginx...

tinywan1227 ⋅ 2017/09/18 ⋅ 0

在 ubuntu 搭建需要签名认证的私有 docker registry 仓库

前言 在前面的一篇博客《在 ubuntu 搭建 docker registry 私有仓库》介绍了一种简单的搭建 docker 私有仓库了的方法。但是当时使用的是修改“--insecure-registry”参数的办法,这种办法在局...

hello_cjq ⋅ 02/23 ⋅ 0

Ubuntu 使用经验

这是我在Ubuntu 上写的第一篇博客,折腾两三个星期的时间,总结出来一点经验,喜欢的朋友支持下。 首先使用软碟通刻录Ubuntu U盘启动盘, http://jingyan.baidu.com/article/19020a0a396b6e5...

slagga ⋅ 2016/12/17 ⋅ 0

LNMP/LEMP(PHP7.0.04+mysql5.7.12+nginx1.10.0)

预览: Installing Nginx with PHP 7 and MySQL 5.7 (LEMP) on Ubuntu 16.04 LTS This tutorial exists for these OS versions Ubuntu 15.10 (Wily Werewolf) Ubuntu 14.04 LTS (Trusty Tahr)......

_Mr_Computer_ ⋅ 2016/05/27 ⋅ 0

在Ubuntu 16.04 LTS安装Mattermost(二)

在Ubuntu 16.04 LTS安装Mattermost(一) 在Ubuntu 16.04 LTS安装Mattermost(二) 配置Mattermost 创建系统管理员用户,设置Mattermost的一般用途 .打开浏览器,导航到Mattermost实例.比如:Matter...

二郎神六号 ⋅ 2017/07/29 ⋅ 0

Nginx ---- Installing Prebuilt Ubuntu Packages

NGINX provides packages for the following Ubuntu operating systems: Version Codename Supported Platforms 12.04 precise x86_64, i386 14.04 trusty x86_64, i386, aarch64/arm64 16.0......

wangdy ⋅ 04/10 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Spring Boot整合模板引擎thymeleaf

项目结构 引入依赖pom.xml <!-- 引入 thymeleaf 模板依赖 --><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId......

yysue ⋅ 19分钟前 ⋅ 0

ConstraintLayout使用解析

AndroidStudio3.0创建Project默认的布局就是ConstraintLayout。 AndroidStudio3.0前的可以自己修改,使用ConstraintLayout。 为了要使用ConstraintLayout,我们需要在app/build.gradle文件中...

_OUTMAN_ ⋅ 31分钟前 ⋅ 0

OSChina 周三乱弹 —— 这样的女人私生活太混乱了

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @ 胖达panda :你经历过体验到人生的大起大落吗?我一朋友在10秒内体验了,哈哈。@小小编辑 请点一首《almost lover》送给他。 《almost love...

小小编辑 ⋅ 今天 ⋅ 9

自己动手写一个单链表

文章有不当之处,欢迎指正,如果喜欢微信阅读,你也可以关注我的微信公众号:好好学java,获取优质学习资源。 一、概述 单向链表(单链表)是链表的一种,其特点是链表的链接方向是单向的,对...

公众号_好好学java ⋅ 今天 ⋅ 0

Centos7重置Mysql 8.0.1 root 密码

问题产生背景: 安装完 最新版的 mysql8.0.1后忘记了密码,向重置root密码;找了网上好多资料都不尽相同,根据自己的问题总结如下: 第一步:修改配置文件免密码登录mysql vim /etc/my.cnf 1...

豆花饭烧土豆 ⋅ 今天 ⋅ 0

熊掌号收录比例对于网站原创数据排名的影响[图]

从去年下半年开始,我在写博客了,因为我觉得业余写写博客也还是很不错的,但是从2017年下半年开始,百度已经推出了原创保护功能和熊掌号平台,为此,我也提交了不少以前的老数据,而这些历史...

原创小博客 ⋅ 今天 ⋅ 0

LVM讲解、磁盘故障小案例

LVM LVM就是动态卷管理,可以将多个硬盘和硬盘分区做成一个逻辑卷,并把这个逻辑卷作为一个整体来统一管理,动态对分区进行扩缩空间大小,安全快捷方便管理。 1.新建分区,更改类型为8e 即L...

蛋黄Yolks ⋅ 今天 ⋅ 0

Hadoop Yarn调度器的选择和使用

一、引言 Yarn在Hadoop的生态系统中担任了资源管理和任务调度的角色。在讨论其构造器之前先简单了解一下Yarn的架构。 上图是Yarn的基本架构,其中ResourceManager是整个架构的核心组件,它负...

p柯西 ⋅ 今天 ⋅ 0

uWSGI + Django @ Ubuntu

创建 Django App Project 创建后, 可以看到路径下有一个wsgi.py的问题 uWSGI运行 直接命令行运行 利用如下命令, 可直接访问 uwsgi --http :8080 --wsgi-file dj/wsgi.py 配置文件 & 运行 [u...

袁祾 ⋅ 今天 ⋅ 0

JVM堆的理解

在JVM中,我们经常提到的就是堆了,堆确实很重要,其实,除了堆之外,还有几个重要的模块,看下图: 大 多数情况下,我们并不需要关心JVM的底层,但是如果了解它的话,对于我们系统调优是非常...

不羁之后 ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部