使用阿里云 CDN 保护网站真实 IP:完整配置指南
使用阿里云 CDN 保护网站真实 IP:完整配置指南
- 一、宝塔面板准备工作
- 1. 确认网站部署状态
- 2. 宝塔中检查网站配置
- 二、配置阿里云 CDN
- 1. 添加域名到 CDN
- 2. 配置 DNS 解析
- 3. 配置成功确认
- 三、宝塔面板安全加固(隐藏 IP 的关键步骤)
- 1. 禁止通过 IP 直接访问
- 2. 配置 SSL 证书
- 四、验证 CDN 生效
- 检查 CDN 节点 IP
本文将详细介绍如何为网站配置阿里云 CDN,核心目标是隐藏服务器的真实 IP 地址,防止其直接暴露在公网,从而有效提升网站的安全性。
一、宝塔面板准备工作
1. 确认网站部署状态
- 博客域名
blog.ybyq.wang
:确认网站正常运行在当前服务器***.***.***.***
,并通过宝塔面板进行管理。
2. 宝塔中检查网站配置
- 登录宝塔面板,进入网站菜单,确认
blog.ybyq.wang
站点已正常创建并可访问 - 检查站点根目录是否指向正确的网站文件路径
二、配置阿里云 CDN
1. 添加域名到 CDN
-
登录 阿里云 CDN 控制台,点击添加域名,我的域名添加过,所以随便填一个
-
填写以下信息:
-
加速域名:
blog.ybyq.wang
(首次添加需在DNS解析中添加记录值)
-
业务类型:选择图片小文件均可,此步骤主要目的是接入 CDN
-
源站信息:
- 源站类型:IP
- 源站地址:
***.***.***.***
(服务器真实 IP 地址) - 端口:
80
或443
(根据站点监听端口填写) - 回源协议:选择 HTTP 或 HTTPS(需与宝塔站点配置一致,若站点已开启强制 HTTPS,则选择 HTTPS)
-
-
完成添加后,阿里云会分配一个 CNAME 地址
2. 配置 DNS 解析
-
前往域名注册商阿里云的 DNS 解析控制台
-
添加 CNAME 记录:
- 二级域名配置:找到
blog.ybyq.wang
的 A 解析记录,将其类型修改为 CNAME,记录值改为阿里云 CDN 分配的 CNAME 地址,主机记录为二级域名前缀(例如blog
) - 一级域名配置:直接添加 CNAME 记录,主机记录填
@
- 如果提示记录冲突,删除原来的记录再设置新的
- 二级域名配置:找到
-
等待 DNS 解析生效(通常需要几分钟到几小时)
3. 配置成功确认
完成上述步骤后,可在阿里云 CDN 控制台看到域名状态为"正常运行"
三、宝塔面板安全加固(隐藏 IP 的关键步骤)
1. 禁止通过 IP 直接访问
这是防止攻击者绕过 CDN 直接访问源站的核心措施:
-
在宝塔面板中打开网站列表,找到对应 IP 的默认站点(通常为
***.***.***.***
)。如果没有,可以新建一个以 IP 地址为域名的站点 -
点击设置 > 配置文件,修改 Nginx 配置,确保同时处理 HTTP 和 HTTPS:
server {listen 80 default_server;listen [::]:80 default_server;server_name _; # 匹配所有未绑定的域名和直接 IP 访问return 444; # 直接关闭连接,不返回任何信息,比 403 更安全 }# 如果服务器开启了 HTTPS (443) server {listen 443 ssl http2 default_server;listen [::]:443 ssl http2 default_server;server_name _;# 配置一个无效或自签名的 SSL 证书,或指向不存在的证书路径# 目的是让通过 IP 的 HTTPS 访问因证书错误而失败ssl_certificate /etc/nginx/ssl/dummy.crt; # 确保证书文件不存在或无效ssl_certificate_key /etc/nginx/ssl/dummy.key;# 也可以直接返回错误,但证书错误通常能阻止连接建立return 444; }
2. 配置 SSL 证书
- 进入
blog.ybyq.wang
的站点设置,选择 SSL 选项卡 - 申请或上传证书(推荐申请 Let’s Encrypt 免费证书)
- 开启强制 HTTPS选项
四、验证 CDN 生效
检查 CDN 节点 IP
使用 ping 命令验证 CDN 是否正确接管了网站流量:
ping blog.ybyq.wang
返回的 IP 应为阿里云 CDN 节点(非服务器真实 IP ***.***.***.***
)
作者:xuan
个人博客:https://blog.ybyq.wang
欢迎访问我的博客,获取更多技术文章和教程。