From b0fb0f5813a0a729dbb7f3360af96e7f2d4aba15 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8F=B6=E6=AE=87?= <197728340@qq.com> Date: Tue, 10 Dec 2024 10:49:55 +0800 Subject: [PATCH] Site updated: 2024-12-10 10:49:54 --- 2024/11/29/CloudFlareReverseProxy/index.html | 49 ++++++++--------- 2024/11/29/hello-world/index.html | 12 ++-- .../index.html" | 12 ++-- .../CloudFlareIntranetPenetration/index.html | 12 ++-- 2024/12/09/1PanelFail2ban/index.html | 28 +++++----- 404.html | 2 +- about/index.html | 2 +- archives/2024/11/index.html | 4 +- archives/2024/12/index.html | 4 +- archives/2024/index.html | 4 +- archives/index.html | 4 +- atom.xml | 12 ++-- baidusitemap.xml | 20 +++---- categories/index.html | 2 +- gallery/index.html | 6 +- index.html | 14 ++--- link/index.html | 2 +- music/index.html | 2 +- search.xml | 55 +++++++++---------- shuoshuo/index.html | 6 +- tags/1panel/index.html | 4 +- tags/CloudFlare/index.html | 4 +- tags/index.html | 6 +- tags/npm/index.html | 4 +- "tags/\344\273\243\347\220\206/index.html" | 4 +- .../index.html" | 4 +- 26 files changed, 138 insertions(+), 140 deletions(-) diff --git a/2024/11/29/CloudFlareReverseProxy/index.html b/2024/11/29/CloudFlareReverseProxy/index.html index 53a3d02..0474bff 100644 --- a/2024/11/29/CloudFlareReverseProxy/index.html +++ b/2024/11/29/CloudFlareReverseProxy/index.html @@ -5,14 +5,14 @@ - + - + - -

使用CloudFlare搭建反向代理

使用CloudFlare搭建反向代理

+

使用CloudFlare搭建反向代理

使用CloudFlare搭建反向代理

CloudFlare,互联网大善人!

FREE套餐CloudFlare每日提供 10w 请求的免费额度,个人用完全足够,但并不能保证很多人同时使用,强烈建议仅自用

@@ -207,12 +207,12 @@

准备一个可以添加到CloudFlare的域名(可选),主要是CloudFlare的一些域名被墙,导致无法直接访问

创建并配置Workers

创建 Workers

在 Cloudflare 的面板左侧点击 Workers 和 Pages 进入后点击创建按钮

-

-

+

+

点击创建Workers按钮

-

-

名字随便填,我这里就直接填proxy了,然后点击部署

-

点击编辑代码进入代码编辑页面

+

+

名字随便填,我这里就直接填proxy了,然后点击部署

+

点击编辑代码进入代码编辑页面

在这里你有两个选择

  • 通用反代(优点:可直接反代任意网站,缺点:容易寄,如果泄露被滥用的几率大)
  • @@ -235,24 +235,24 @@

    https://store.steampowered.com 反代的就是 https://store.steampowered.com
    访问 https://你的域名/https://api.steampowered.com 反代的就是 https://api.steampowered.com

    -

    部署

    点击部署

    -

    在下方出现以下提示就可以啦

    -

    访问 https://你的域名 出现下面界面就成功啦

    +

    部署

    点击部署

    +

    在下方出现以下提示就可以啦

    +

    访问 https://你的域名 出现下面界面就成功啦

    当然,有概率你是会出现网页无法访问,这就是CloudFlare的部分域名被墙了……

    这就是需要下一步的原因

    绑定域名

    注册域名过程略

    我们首先要将自己的域名 DNS 托管给 Cloudflare,返回在控制台选择“网站”选项卡,输入你注册的域名,点击继续

    -

    +

    个人用选择FREE套餐即可,点击继续

    -

    -

    点击继续前往激活

    -

    点击确认

    -

    将Cloudflare 给的名称服务器填在你注册域名的地方,这里不细说

    -

    填完后点击继续等待名称服务器更新(等待时间在几分钟到几个小时之间,不要急,成功后Cloudflare会发送邮件到你的邮箱)

    -

    刷新后域名的状态变为活动就可以了

    -

    使用域名

    继续前往 Workers 和 Pages ,点击进入刚才创建的 Workers 服务

    -

    进入设置,在 域和路由 点击 添加

    -

    点击自定义域

    输入任意的域名前缀+你的域名.例如proxy.example.com , 将example.com替换为你的域名

    点击添加域即可

    +

    +

    点击继续前往激活

    +

    点击确认

    +

    将Cloudflare 给的名称服务器填在你注册域名的地方,这里不细说

    +

    填完后点击继续等待名称服务器更新(等待时间在几分钟到几个小时之间,不要急,成功后Cloudflare会发送邮件到你的邮箱)

    +

    刷新后域名的状态变为活动就可以了

    +

    使用域名

    继续前往 Workers 和 Pages ,点击进入刚才创建的 Workers 服务

    +

    进入设置,在 域和路由 点击 添加

    +

    点击自定义域

    输入任意的域名前缀+你的域名.例如proxy.example.com , 将example.com替换为你的域名

    点击添加域即可

    然后将 Cloudflare 的域名替换为自己的即可

    拓展

    即使指定反代依旧有泄露被滥用的风险,那就浅浅加个用户白名单吧(doge)

    加了白名单的话通用反代方便一点

    @@ -263,8 +263,7 @@

    指定反代

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    addEventListener('fetch', event => {
    event.respondWith(handleRequest(event.request));
    });

    // 域名映射表
    const domainMappings = {
    "/steam-store": "https://store.steampowered.com",
    "/steam-api": "https://api.steampowered.com"
    };

    const specialCases = {
    "*": {
    "Origin": "DELETE",
    "Referer": "DELETE"
    }
    };
    //IP白名单
    const allowedIPs = [
    // IPv4 示例
    '123.123.123.123',
    // IPv6 示例
    '2001:0db8:85a3:0000:0000:8a2e:0370:7334'
    ];

    function handleSpecialCases(request) {
    const rules = specialCases["*"];
    for (const [key, value] of Object.entries(rules)) {
    switch (value) {
    case "KEEP":
    break;
    case "DELETE":
    request.headers.delete(key);
    break;
    default:
    request.headers.set(key, value);
    break;
    }
    }
    }

    // 获取用户 IP 地址
    function getUserIP(request) {
    return request.headers.get('CF-Connecting-IP') || request.headers.get('X-Forwarded-For') || request.connection.remoteAddress;
    }

    async function handleRequest(request) {
    const url = new URL(request.url);

    const userIP = getUserIP(request);

    // 检查 IP 是否在白名单内
    if (!allowedIPs.includes(userIP)) {
    return new Response(`
    <html>
    <head>
    <style>
    body {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
    margin: 0;
    background-color: #f9f9f9;
    }
    h1 {
    font-family: Arial, sans-serif;
    color: #333;
    text-align: center;
    }
    </style>
    </head>
    <body>
    <h1>Caused by playing Genshin Impact</h1>
    </body>
    </html>
    `, {
    headers: { "Content-Type": "text/html" }
    });
    }

    // 如果是访问根目录就返回一个HTML
    if (url.pathname === "/") {
    return new Response(`
    <html>
    <head>
    <style>
    body {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
    margin: 0;
    background-color: #f9f9f9;
    }
    h1 {
    font-family: Arial, sans-serif;
    color: #333;
    text-align: center;
    }
    </style>
    </head>
    <body>
    <h1>Why don't you play Genshin Impact?</h1>
    </body>
    </html>
    `, {
    headers: { "Content-Type": "text/html" }
    });
    }

    const basePath = Object.keys(domainMappings).find(path => url.pathname.startsWith(path));
    if (!basePath) {
    return new Response("Path not found in domain mappings", { status: 404 });
    }

    const targetBase = domainMappings[basePath];
    const targetPath = url.pathname.slice(basePath.length) + url.search + url.hash;

    const targetUrl = new URL(targetPath, targetBase);

    const modifiedRequest = new Request(targetUrl, {
    headers: request.headers,
    method: request.method,
    body: request.body,
    redirect: 'follow'
    });

    handleSpecialCases(modifiedRequest);

    // 发送请求
    const response = await fetch(modifiedRequest);
    const modifiedResponse = new Response(response.body, response);

    modifiedResponse.headers.set('Access-Control-Allow-Origin', '*');

    return modifiedResponse;
    }
    -

    Token验证

    相比于IP白名单而言,Token验证不需要频繁改变源码,分享给别人使用方便一点(?

    -

    通用反代

文章作者: MapleLeaf
文章链接: http://mapleleaf.icu/2024/11/29/CloudFlareReverseProxy/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 MapleLeaf
赞助
  • wechat
    wechat
  • alipay
    alipay

评论
赞助
  • wechat
    wechat
  • alipay
    alipay

评论
-

Hello World

Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub.

+

Hello World

Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub.

Quick Start

Create a new post

1
$ hexo new "My New Post"

More info: Writing

@@ -207,7 +207,7 @@

Deploy to remote sites

1
$ hexo deploy

More info: Deployment

-
文章作者: MapleLeaf
文章链接: http://mapleleaf.icu/2024/11/29/hello-world/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 MapleLeaf
赞助
  • wechat
    wechat
  • alipay
    alipay

评论
赞助
  • wechat
    wechat
  • alipay
    alipay

评论
-

npm,pnpm,yarn换源

npm,pnpm,yarn换源以及一些问题

前言

使用npm,pnpm,yarn时经常出现网络问题,选择并配置国内镜像源可以显著提高包的下载速度和稳定性。

+

npm,pnpm,yarn换源

-
文章作者: MapleLeaf
文章链接: http://mapleleaf.icu/2024/12/02/npm-pnpm-yarn%E6%8D%A2%E6%BA%90/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 MapleLeaf
赞助
  • wechat
    wechat
  • alipay
    alipay

评论
赞助
  • wechat
    wechat
  • alipay
    alipay

评论
-

CloudFlare免费内网穿透

CloudFlare免费内网穿透

准备

-

使用1Panel阻止SSH爆破

使用1Panel阻止SSH爆破

前言

今日闲来无事,顺手看了一下1Panle的SSH登录日志,不看不知道,一看…….

-

image-20241209093010476

+

使用1Panel阻止SSH爆破

使用1Panel阻止SSH爆破

前言

今日闲来无事,顺手看了一下1Panle的SSH登录日志,不看不知道,一看…….

+

image-20241209093010476

1Panel的登录日志在 主机>SSH管理>登录日志

不过查了一下IP发现这还是华为云自己的IP?

-

image-20241209093316628

+

image-20241209093316628

安装Fail2ban

不管怎么说还是加个防止SSH爆破的Fail2ban比较好

在1Panel面板 工具箱>Fail2ban 可以看见Fail2ban的运行状态,一般是未安装的,接下来就安装一下

-

image-20241209093730416

+

image-20241209093730416

1、安装 epel 源

1
yum install -y epel-release
@@ -233,15 +233,15 @@

1
sudo systemctl status fail2ban

-

由于我是Ubuntu,我就用Ubuntu进行演示了

安装

image-20241209094239335

-

启动

-

开机自启动

image-20241209094633456

-

查看运行状态

image-20241209094706494

+

由于我是Ubuntu,我就用Ubuntu进行演示了

安装

image-20241209094239335

+

启动

+

开机自启动

image-20241209094633456

+

查看运行状态

image-20241209094706494

运行正常即可

配置Fail2ban

接下来返回1Panel的 工具箱>Fail2ban

看到以下界面即可,你可以按需更改相应的配置,基本上保持默认即可,这样就大功告成啦

-

image-20241209094846912

-
文章作者: MapleLeaf
文章链接: http://mapleleaf.icu/2024/12/09/1PanelFail2ban/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 MapleLeaf
赞助
  • wechat
    wechat
  • alipay
    alipay

评论
赞助
  • wechat
    wechat
  • alipay
    alipay

评论
-

评论
公告
An epitaph is short, and so is life.
最新文章
网站资讯
文章数目 :
5
已运行时间 :
本站总字数 :
3.7k
本站访客数 :
本站总访问量 :
最后更新时间 :
-
文章总览 - 2
2024
使用CloudFlare搭建反向代理
使用CloudFlare搭建反向代理
Hello World
Hello World
公告
An epitaph is short, and so is life.
最新文章
网站资讯
文章数目 :
5
已运行时间 :
本站总字数 :
3.7k
本站访客数 :
本站总访问量 :
最后更新时间 :
\ No newline at end of file +
文章总览 - 2
2024
使用CloudFlare搭建反向代理
使用CloudFlare搭建反向代理
Hello World
Hello World
公告
An epitaph is short, and so is life.
最新文章
网站资讯
文章数目 :
5
已运行时间 :
本站总字数 :
3.6k
本站访客数 :
本站总访问量 :
最后更新时间 :
\ No newline at end of file diff --git a/archives/2024/12/index.html b/archives/2024/12/index.html index 91364ca..a8b371c 100644 --- a/archives/2024/12/index.html +++ b/archives/2024/12/index.html @@ -54,7 +54,7 @@ isHome: false, isHighlightShrink: false, isToc: false, - postUpdate: '2024-12-09 10:13:00' + postUpdate: '2024-12-10 10:49:52' } -
文章总览 - 3
2024
使用1Panel阻止SSH爆破
使用1Panel阻止SSH爆破
CloudFlare免费内网穿透
CloudFlare免费内网穿透
npm,pnpm,yarn换源
npm,pnpm,yarn换源
公告
An epitaph is short, and so is life.
最新文章
网站资讯
文章数目 :
5
已运行时间 :
本站总字数 :
3.7k
本站访客数 :
本站总访问量 :
最后更新时间 :
\ No newline at end of file +
文章总览 - 3
2024
使用1Panel阻止SSH爆破
使用1Panel阻止SSH爆破
CloudFlare免费内网穿透
CloudFlare免费内网穿透
npm,pnpm,yarn换源
npm,pnpm,yarn换源
公告
An epitaph is short, and so is life.
最新文章
网站资讯
文章数目 :
5
已运行时间 :
本站总字数 :
3.6k
本站访客数 :
本站总访问量 :
最后更新时间 :
\ No newline at end of file diff --git a/archives/2024/index.html b/archives/2024/index.html index 0b8c6ef..bdeed68 100644 --- a/archives/2024/index.html +++ b/archives/2024/index.html @@ -54,7 +54,7 @@ isHome: false, isHighlightShrink: false, isToc: false, - postUpdate: '2024-12-09 10:13:00' + postUpdate: '2024-12-10 10:49:52' } -
公告
An epitaph is short, and so is life.
最新文章
网站资讯
文章数目 :
5
已运行时间 :
本站总字数 :
3.7k
本站访客数 :
本站总访问量 :
最后更新时间 :
\ No newline at end of file +
公告
An epitaph is short, and so is life.
最新文章
网站资讯
文章数目 :
5
已运行时间 :
本站总字数 :
3.6k
本站访客数 :
本站总访问量 :
最后更新时间 :
\ No newline at end of file diff --git a/archives/index.html b/archives/index.html index 43eca27..95c1a24 100644 --- a/archives/index.html +++ b/archives/index.html @@ -54,7 +54,7 @@ isHome: false, isHighlightShrink: false, isToc: false, - postUpdate: '2024-12-09 10:13:00' + postUpdate: '2024-12-10 10:49:52' } -
公告
An epitaph is short, and so is life.
最新文章
网站资讯
文章数目 :
5
已运行时间 :
本站总字数 :
3.7k
本站访客数 :
本站总访问量 :
最后更新时间 :
\ No newline at end of file +
公告
An epitaph is short, and so is life.
最新文章
网站资讯
文章数目 :
5
已运行时间 :
本站总字数 :
3.6k
本站访客数 :
本站总访问量 :
最后更新时间 :
\ No newline at end of file diff --git a/atom.xml b/atom.xml index 47f2d11..ae64512 100644 --- a/atom.xml +++ b/atom.xml @@ -6,7 +6,7 @@ - 2024-12-09T01:59:51.289Z + 2024-12-10T02:48:58.791Z http://mapleleaf.icu/ @@ -21,7 +21,7 @@ http://mapleleaf.icu/2024/12/09/1PanelFail2ban/ 2024-12-09T01:07:46.000Z - 2024-12-09T01:59:51.289Z + 2024-12-10T02:48:58.791Z @@ -44,7 +44,7 @@ http://mapleleaf.icu/2024/12/08/CloudFlareIntranetPenetration/ 2024-12-08T14:40:51.000Z - 2024-12-09T02:11:35.375Z + 2024-12-10T02:41:11.198Z @@ -69,7 +69,7 @@ http://mapleleaf.icu/2024/12/02/npm-pnpm-yarn%E6%8D%A2%E6%BA%90/ 2024-12-02T14:35:28.000Z - 2024-12-06T09:38:05.182Z + 2024-12-10T02:46:56.529Z @@ -92,7 +92,7 @@ http://mapleleaf.icu/2024/11/29/CloudFlareReverseProxy/ 2024-11-29T04:27:29.000Z - 2024-12-09T02:12:32.812Z + 2024-12-10T02:47:12.883Z @@ -117,7 +117,7 @@ http://mapleleaf.icu/2024/11/29/hello-world/ 2024-11-29T03:27:29.000Z - 2024-12-08T14:48:52.614Z + 2024-12-10T02:47:05.005Z diff --git a/baidusitemap.xml b/baidusitemap.xml index 21e0b4c..164413b 100644 --- a/baidusitemap.xml +++ b/baidusitemap.xml @@ -1,23 +1,23 @@ - http://MapleLeaf.icu/2024/11/29/CloudFlareReverseProxy/ - 2024-12-09 - - - http://MapleLeaf.icu/2024/12/08/CloudFlareIntranetPenetration/ - 2024-12-09 + http://MapleLeaf.icu/2024/12/09/1PanelFail2ban/ + 2024-12-10 - http://MapleLeaf.icu/2024/12/09/1PanelFail2ban/ - 2024-12-09 + http://MapleLeaf.icu/2024/11/29/CloudFlareReverseProxy/ + 2024-12-10 http://MapleLeaf.icu/2024/11/29/hello-world/ - 2024-12-08 + 2024-12-10 http://MapleLeaf.icu/2024/12/02/npm-pnpm-yarn%E6%8D%A2%E6%BA%90/ - 2024-12-06 + 2024-12-10 + + + http://MapleLeaf.icu/2024/12/08/CloudFlareIntranetPenetration/ + 2024-12-10 \ No newline at end of file diff --git a/categories/index.html b/categories/index.html index 2781e1c..740f62c 100644 --- a/categories/index.html +++ b/categories/index.html @@ -154,7 +154,7 @@ } detectApple() })(window) -

评论
公告
An epitaph is short, and so is life.
最新文章
网站资讯
文章数目 :
5
已运行时间 :
本站总字数 :
3.7k
本站访客数 :
本站总访问量 :
最后更新时间 :
-

评论
公告
An epitaph is short, and so is life.
最新文章
网站资讯
文章数目 :
5
已运行时间 :
本站总字数 :
3.7k
本站访客数 :
本站总访问量 :
最后更新时间 :
-
使用1Panel阻止SSH爆破