背景:由于想做个测试:即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