手动在ubuntu上搭建一个nginx,并安装证书的最简化完整过程

背景:由于想做个测试:即IP为A的服务器,绑定完域名X后,如果再绑定域名Y,能不能被访问到。(假设对A不做绑定域名的设置)
这个问题的来源,见上一篇文章:《云服务器被非法域名恶意指向(域名解析配置》

答案当然是肯定的,但是如果在A里安装X的证书后呢?还能在访问Y的时候被访问吗?
实践出真知,因此,找了服务器,安装了nginx,并手动安装了证书。

由于日常工作中用到的次数比较少,所以记录一下过程,以备后面所需

做这个实验时,也查了些材料,但是发现网上的材料太复杂了,我只是想轻量验证,所以记录一下吧,给也有同样需求的人参考一下,少走弯路。

一、安装系统镜像

Ubuntu Server 24.04 LTS 64bit

二、安装nginx,并验证

网上给的步骤很多,但我只用到了

sudo apt update
sudo apt install nginx

可以查看状态

sudo systemctl status nginx

或浏览器访问验证
在这里插入图片描述

三、腾讯云上,针对自己域名做个证书,免费

这部分都是控制台操作,略过了。
下载证书的nginx版本,一个压缩包,拿到crt和key文件。

四、上传证书,修改配置文件

1. 确认配置文件位置

通过下命的命令,可以看到配置文件的位置

sudo nginx -t

如下图所示,文件是: /etc/nginx/nginx.conf

在这里插入图片描述

2. 上传证书文件

上传上面的crt和key文件,到 /etc/nginx上当下

3. 修改配置文件

就这个过程,我搜材料时,看到了怎么配,但却不知道配在哪,很是着急,后来综合多个文章,终于摸索出来了。

先明确自己的版本:

sudo nginx -v

我的是1.34.0

然后打开配置文件:

vim /etc/nginx/nginx.conf

http模块里,加入这段
server {
#SSL 默认访问端口号为 443
listen 443 ssl;
#请填写绑定证书的域名
server_name xxxxx.com;
#请填写证书文件的相对路径或绝对路径
ssl_certificate xxxxx_bundle.crt;
#请填写私钥文件的相对路径或绝对路径
ssl_certificate_key xxxxx.com.key;
ssl_session_timeout 5m;
#请按照以下协议配置
ssl_protocols TLSv1.2 TLSv1.3;
#请按照以下套件配置,配置加密套件,写法遵循 openssl 标准。
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
ssl_prefer_server_ciphers on;
location / {
#网站主页路径。此路径仅供参考,具体请您按照实际目录操作。
#例如,您的网站主页在 Nginx 服务器的 /etc/www 目录下,则请修改 root 后面的 html 为 /etc/www。
root html;
index index.html index.htm;
}
}
如下图所示:
在这里插入图片描述

4. 重启服务,大功告成

sudo nginx -s reload

猜一下,上面说的绑定另一个域名,可以访问成功吗?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值