使用阿里云 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. 宝塔中检查网站配置

  1. 登录宝塔面板,进入网站菜单,确认 blog.ybyq.wang 站点已正常创建并可访问
  2. 检查站点根目录是否指向正确的网站文件路径

二、配置阿里云 CDN

1. 添加域名到 CDN

  1. 登录 阿里云 CDN 控制台,点击添加域名,我的域名添加过,所以随便填一个
    添加域名

  2. 填写以下信息:

    • 加速域名blog.ybyq.wang(首次添加需在DNS解析中添加记录值)
      添加解析

    • 业务类型:选择图片小文件均可,此步骤主要目的是接入 CDN

    • 源站信息

      • 源站类型:IP
      • 源站地址:***.***.***.***(服务器真实 IP 地址)
      • 端口:80443(根据站点监听端口填写)
      • 回源协议:选择 HTTPHTTPS(需与宝塔站点配置一致,若站点已开启强制 HTTPS,则选择 HTTPS)
        添加源站信息
  3. 完成添加后,阿里云会分配一个 CNAME 地址

2. 配置 DNS 解析

  1. 前往域名注册商阿里云的 DNS 解析控制台

  2. 添加 CNAME 记录:

    • 二级域名配置:找到 blog.ybyq.wangA 解析记录,将其类型修改为 CNAME,记录值改为阿里云 CDN 分配的 CNAME 地址,主机记录为二级域名前缀(例如 blog
    • 一级域名配置:直接添加 CNAME 记录,主机记录填 @
    • 如果提示记录冲突,删除原来的记录再设置新的
  3. 等待 DNS 解析生效(通常需要几分钟到几小时)
    添加CNAME

3. 配置成功确认

完成上述步骤后,可在阿里云 CDN 控制台看到域名状态为"正常运行"
配置成功

三、宝塔面板安全加固(隐藏 IP 的关键步骤)

1. 禁止通过 IP 直接访问

这是防止攻击者绕过 CDN 直接访问源站的核心措施:

  1. 在宝塔面板中打开网站列表,找到对应 IP 的默认站点(通常为 ***.***.***.***)。如果没有,可以新建一个以 IP 地址为域名的站点

  2. 点击设置 > 配置文件,修改 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;
    }
    

    Nginx配置

2. 配置 SSL 证书

  1. 进入 blog.ybyq.wang 的站点设置,选择 SSL 选项卡
  2. 申请或上传证书(推荐申请 Let’s Encrypt 免费证书)
  3. 开启强制 HTTPS选项
    配置SSL

四、验证 CDN 生效

检查 CDN 节点 IP

使用 ping 命令验证 CDN 是否正确接管了网站流量:

ping blog.ybyq.wang

返回的 IP 应为阿里云 CDN 节点(非服务器真实 IP ***.***.***.***
验证结果

作者:xuan
个人博客:https://blog.ybyq.wang
欢迎访问我的博客,获取更多技术文章和教程。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/903526.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PHP经验笔记

isset — 检测变量是否设置,并且不是NULL; 若变量存在且值不为NULL,则返回 TURE 若变量存在且其值为NULL或变量不存在,则返回 FALSE 结论 1. 当变量为空字符串、数值0和布尔值false时,isset全部返回true 2. 当变量不存在和变量存在且值为NULL…

Linux——安装NVM

1. 安装命令 官方地址:https://github.com/nvm-sh/nvm curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash2. 安装完成后执行命令 source ~/.bashrc3. 验证 nvm -v

CentOS 7 磁盘阵列搭建与管理全攻略

CentOS 7 磁盘阵列搭建与管理全攻略 在数据存储需求日益增长的今天,磁盘阵列(RAID)凭借其卓越的性能、数据安全性和可靠性,成为企业级服务器和数据中心的核心存储解决方案。CentOS 7 作为一款稳定且功能强大的 Linux 操作系统&am…

C++每日训练 Day 18:构建响应式表单与数据验证(初学者友好)

📘 本篇目标:在前几日协程与事件驱动机制基础上,构建一个响应式表单系统,实现用户输入的异步验证与反馈。通过协程挂起/恢复机制,简化异步逻辑,提升代码可读性。 🔁 回顾 Day 17:响应…

Vue初步总结-摘自 黑马程序员

本文摘自 bilibili 前端最新Vue2Vue3基础入门到实战项目全套教程,自学前端vue就选黑马程序员,一套全通关! 更多详情可参考: https://www.yuque.com/u26161316/pic6n4/heyv8nv8ubfk3fhe?singleDoc# 《Vue》

【基于Qt的QQ音乐播放器开发实战:从0到1打造全功能音乐播放应用】

🌹 作者: 云小逸 🤟 个人主页: 云小逸的主页 🤟 motto: 要敢于一个人默默的面对自己,强大自己才是核心。不要等到什么都没有了,才下定决心去做。种一颗树,最好的时间是十年前,其次就是现在&…

线程池(二):深入剖析synchronized关键字的底层原理

线程池(二):深入剖析synchronized关键字的底层原理 线程池(二):深入剖析synchronized关键字的底层原理一、基本使用1.1 修饰实例方法1.2 修饰静态方法1.3 修饰代码块 二、Monitor2.1 Monitor的概念2.2 Moni…

Linux CentOS 7 安装Apache 部署html页面

*、使用yum包管理器安装Apache。运行以下命令: sudo yum install httpd *、启动Apache服务 sudo systemctl start httpd *、设置Apache服务开机自启 # 启用开机自启动 sudo systemctl enable httpd# 禁用开机自启动 sudo systemctl disable httpd *、验证Apac…

前端设置三行文本省略号,失效为什么?

实际效果:第三行出现省略号,但是第四行依旧显示了部分文字 这个问题通常是由于 CSS 多行文本截断(-webkit-line-clamp)的计算方式或布局冲突导致的。以下是完整解决方案,确保三行文本截断正确显示省略号,并…

git学习之git常用命令

1. 初始化仓库 git init初始化一个新的 Git 仓库。 2. 克隆远程仓库 git clone <repository-url>从远程服务器克隆一个已有仓库到本地。 3. 配置用户名和邮箱 git config --global user.name "Your Name" git config --global user.email "youexampl…

【Spring Boot】深入解析:#{} 和 ${}

1.#{} 和 ${}的使用 1.1数据准备 1.1.1.MySQL数据准备 &#xff08;1&#xff09;创建数据库&#xff1a; CREATE DATABASE mybatis_study DEFAULT CHARACTER SET utf8mb4;&#xff08;2&#xff09;使用数据库 -- 使⽤数据数据 USE mybatis_study;&#xff08;3&#xff…

Poco C++全面开发指南:日期和时间

时间戳 时间戳是指格林威治时间1970年01月01日00时00分00秒&#xff08;北京时间1970年01月01日08时00分00秒&#xff09;起至现在的总秒数。在poco中可以可以使用Timestamp类获取。 #include <Poco/Timestamp.h> #include <iostream>int main() {Poco::Timestam…

水利三维可视化平台怎么做?快速上手的3步指南

分享大纲&#xff1a; 1、了解水利三维可视化平台 2、选择合适的开发平台 3、快速搭建水利三维可视化平台 第一步&#xff1a;了解水利三维可视化平台 水利三维可视化平台是利用大数据、物联网、数字孪生等技术&#xff0c;将物理实体数字化建模&#xff0c;并通过三维可视化技…

高级前端面试题:基于2025年最新技术体系

高级前端面试题:基于2025年最新技术体系 引言 随着前端技术的不断发展,2025年的前端面试题也呈现出新的特点和趋势。本报告基于最新的前端技术体系,收集了当前热门的面试题,旨在帮助准备高级前端工程师面试的候选人全面了解面试考察点。报告内容涵盖HTML5 Canvas、WebGL、…

图像处理——边缘检测

1 概述 边缘检测是图像处理和计算机视觉中的一项基本技术&#xff0c;用于识别图像中亮度变化剧烈的像素点&#xff0c;这些像素点通常对应于物体的边界。它通过检测图像中亮度或颜色变化显著的区域&#xff0c;提取出物体的轮廓&#xff0c;常用于计算机视觉、图像处理和模式识…

c语言的常用的预处理指令和条件编译

c语言的常用的预处理指令和条件编译 预处理详解预定义符号#define#define 定义标识符#define 定义宏带副作用的宏参数宏和函数的对比#define命名约定和#undef移除宏 # 和 ## 参数插入字符串字符串的自动连接#宏参数 命令行定义条件编译#if和#endif多分支条件编译#if、#elif、#e…

TTL、RS-232 和 RS-485 串行通信电平标准区别解析

TTL、RS-232 和 RS-485 是三种常见的串行通信电平标准&#xff0c;它们各自有不同的协议特点&#xff0c;适用于不同的应用场景。以下是它们的主要特点对比&#xff1a; ​​1. TTL&#xff08;Transistor-Transistor Logic&#xff09;​​ ​​主要特点​​ ​​单端信号​…

SwinTransformer改进(6):与Dual Cross-Attention结合的视觉模型

在计算机视觉领域,Transformer架构正逐渐取代传统的CNN成为主流。 本文将深入解析一个结合了Swin Transformer和Dual Cross-Attention(DCA)的创新模型实现。 模型概述 这个实现的核心是将Swin Transformer(一种高效的视觉Transformer)与创新的Dual Cross-Attention模块相结…

Dify框架面试内容整理-Dify框架

什么是Dify框架? Dify框架是一个开源的AI应用开发平台,专注于帮助开发者和非技术人员快速构建、部署和管理基于大语言模型(如GPT系列、国产开源模型)的应用。 Dify框架的特点:

道可云人工智能每日资讯|“人工智能科技体验展”在中国科学技术馆举行

道可云元宇宙每日简报&#xff08;2025年4月28日&#xff09;讯&#xff0c;今日元宇宙新鲜事有&#xff1a; 《2025年提升全民数字素养与技能工作要点》发布 近日&#xff0c;中央网信办、教育部、工业和信息化部、人力资源社会保障部联合印发《2025年提升全民数字素养与技能…