阶段一:服务器“毛坯房”装修与加固(简单)
任务 1:配置免密登录与安全加固
写在前面: 在服务器“毛坯房”装修进入深水区后,单纯的防火墙配置已经无法满足复杂网络环境下的安全与效率需求。本文记录了如何完成服务器环境的高阶配置,主要包括内核网络优化(BBR)与组建虚拟局域网 。核心目标是开启 Linux 内核自带的 BBR 拥塞控制算法以提升网络吞吐量,并使用 Tailscale 将本地电脑与云服务器组建成一个加密的局域网 。
对于一台内存有限的云服务器(尤其是在运行严格限制了内存的数据库和各项后端服务时),服务因为 OOM(内存溢出)被系统底层强制“杀”掉常发生。需要一个“数字保安”24小时盯着各项服务,并在发生故障时秒级推送通知。
在经历了前几个阶段的“毛坯房装修”和环境搭建后,终于迎来了工程化实践的重头戏:打通 CI/CD 流水线 。
这是一次非常典型、硬核且充满戏剧性的“开发者实战之旅”。虽然在这个具体的电商爬虫项目上你选择了战略性放弃,但在短短的折腾过程中,几乎把 Linux 运维、网络通信、Python 环境配置和爬虫反风控的经典“大坑”全踩了一遍,并且解决了其中 90% 的问题。
在使用 3X-UI 搭建代理节点时,很多朋友可能会遇到这样一个痛点: 因为 3X-UI 的 Vision 流控(xtls-rprx-vision)是需要在具体客户端上设置的,这就导致开启了 Vision 和未开启 Vision 的节点,被强制拆分成了不同的订阅链接。 当把它们导入到代理软件(比如 V2rayN)时,软件里会显示出多个不同的订阅分组,不仅观感杂乱,后期维护起来也极其不便。
🌐 核心架构设计:为什么这么做? # 过去使用一键翻墙脚本,脚本作者通常采用“霰弹枪策略”:在一个黑盒环境里强行塞入 10 多个协议节点,将其全部打包在一个 Sing-box 内核里。这种方式看似全面,但在 1GB 内存的入门级 VPS(虚拟专用服务器)上会产生严重的弊端:大量闲置进程白白吃掉宝贵的系统资源,且黑盒脚本会死锁底层网络逻辑,导致后续更新极易崩溃或丢失配置。
在经历了前面的基础环境搭建后,本任务将真正把后端服务暴露给公网。
在服务器部署的进阶之路上,部署限制内存的数据库是一个必经的关卡 。对于这种小内存的 VPS(比如 RackNerd),如果直接裸跑默认配置的 MySQL 8.0,它会一口气吞掉 400MB 甚至更多的内存,极易导致服务器 OOM(内存溢出)死机。
对于拥有海外小性能 VPS 的开发者来说,高物理延迟往往是绕不开的痛。如果还在使用传统的终端工具(如 FinalShell),忍受着 nano 或 vim 编辑长文本时吞换行、卡顿的折磨,那么 VS Code + Remote-SSH 绝对是救星。
📝 1. 背景与目标 # 在云服务器(VPS)上部署项目时,直接暴露端口既不安全也不优雅。本次实战的目标是:
折腾服务器,“进行全面容器化” 。如何使用 Docker 和 Nginx,将纯前端项目托管到云服务器上,并实现公网访问 。