计算化学公社

 找回密码 Forget password
 注册 Register
Views: 841|回复 Reply: 4
打印 Print 上一主题 Last thread 下一主题 Next thread

[网络相关] 个人网站搭建过程中的配置心得体会

[复制链接 Copy URL]

106

帖子

2

威望

810

eV
积分
956

Level 4 (黑子)

最近因为某些原因,上Cloudflare怒买了一个域名。本来是有一些其他的用处的,但是最后还是突发奇想,搭建了自己的个人网站。
当然我不是想要讲诉前端react的构建。事实上我也不是很会使用react,大部分内容是AI完成的。我想要在帖子中记录的是我的安全配置过程。

首先,我们考虑到最简单也最难防护的网络攻击DDOS,既然买了Cloudflare的域名,免费的DDOS防护必须打开。橙云代理www和@的两个DNS记录。


第二,我的服务器默认状态,80和443端口全部打开。这很危险。万一通过某些请求,被绕过代理挖出源站IP,直接打到IPv4地址。网站服务器将处于一个绝对危险的状态。因此我利用代码查询了我的代理,也即Cloudflare的IP段。并为这些IP在nftables开放了白名单,只接受Cloudflare回源。
  1. curl https://www.cloudflare.com/ips-v4
  2. curl https://www.cloudflare.com/ips-v6
复制代码
然后:
  1. sudo nano /etc/nftables.conf
复制代码

写入:
  1. flush ruleset

  2. table inet filter {
  3.     set cloudflare_v4 {
  4.         type ipv4_addr
  5.         flags interval
  6.         elements = {
  7. 返回的IPv4地址
  8.         }
  9.     }

  10.     set cloudflare_v6 {
  11.         type ipv6_addr
  12.         flags interval
  13.         elements = {
  14. 返回的IPv6地址
  15.         }
  16.     }

  17.     chain input {
  18.         type filter hook input priority filter;
  19.         policy drop;

  20.         iif lo accept
  21.         ct state established,related accept

  22.         tcp dport 22 accept

  23.         ip saddr @cloudflare_v4 tcp dport {80, 443} accept
  24.         ip6 saddr @cloudflare_v6 tcp dport {80, 443} accept

  25.         ip protocol icmp accept
  26.         ip6 nexthdr ipv6-icmp accept
  27.     }

  28.     chain forward {
  29.         type filter hook forward priority filter;
  30.         policy drop;
  31.     }

  32.     chain output {
  33.         type filter hook output priority filter;
  34.         policy accept;
  35.     }
  36. }
复制代码
最后,考虑到即使已经通过 Cloudflare 与 nftables 将源站限制为仅接受 Cloudflare 回源请求,Web 服务直接暴露于公网监听端口仍然很危险。因此,我用 Nginx 作为前端反向代理,由 Nginx 对外监听 443,并将请求转发至监听于127.0.0.1:4372的静态站点服务。

一套小连招下来,网站应该比较安全了。虽然网站内容我还有很多留空没写,但这些安全防护的经验对我来说还是很重要的。自己记录一下,也给其他想建立个人博客的坛友做个参考。个人实有限,这套方案还有一些漏洞。但是我认为作为个人网站来说应当算相对完善了。


评分 Rate

参与人数
Participants 3
eV +9 收起 理由
Reason
DaMin32767 + 3 GJ!
星殇~浮梦 + 3
SharkYYX2025 + 3 牛!

查看全部评分 View all ratings

Superiora de inferioribus, inferiora de superioribus, prodigiorum operatio ex uno, quemadmodum omnia ex uno eodemque ducunt originem, una eademque consilii administratione.

41

帖子

0

威望

116

eV
积分
157

Level 3 能力者

2#
发表于 Post on 2026-5-11 00:50:25 | 只看该作者 Only view this author
🐂多谢分享

274

帖子

7

威望

2350

eV
积分
2764

Level 5 (御坂)

3#
发表于 Post on 2026-5-11 09:52:04 | 只看该作者 Only view this author
搭建个人网站使用 Notion 就行了,自己搭建非常麻烦,维护,加上各种管理,及其消耗精力

106

帖子

2

威望

810

eV
积分
956

Level 4 (黑子)

4#
 楼主 Author| 发表于 Post on 2026-5-11 11:12:38 | 只看该作者 Only view this author
wxyhgk 发表于 2026-5-11 09:52
搭建个人网站使用 Notion 就行了,自己搭建非常麻烦,维护,加上各种管理,及其消耗精力

主要里面还有一些别的考量。我一开始买域名的目的并不是搭建网站来着。顺手弄个网站算是物尽其用。
Superiora de inferioribus, inferiora de superioribus, prodigiorum operatio ex uno, quemadmodum omnia ex uno eodemque ducunt originem, una eademque consilii administratione.

106

帖子

2

威望

810

eV
积分
956

Level 4 (黑子)

5#
 楼主 Author| 发表于 Post on 2026-7-1 16:36:11 | 只看该作者 Only view this author
游客,本帖隐藏的内容需要积分高于 25 才可浏览,您当前积分为 0
Superiora de inferioribus, inferiora de superioribus, prodigiorum operatio ex uno, quemadmodum omnia ex uno eodemque ducunt originem, una eademque consilii administratione.

本版积分规则 Credits rule

手机版 Mobile version|北京科音自然科学研究中心 Beijing Kein Research Center for Natural Sciences|京公网安备 11010502035419号|计算化学公社 — 北京科音旗下高水平计算化学交流论坛 ( 京ICP备14038949号-1 )|网站地图

GMT+8, 2026-7-27 06:23 , Processed in 0.238373 second(s), 26 queries , Gzip On.

快速回复 返回顶部 返回列表 Return to list