基于上一版本内容进行了优化,增加了更多的选项,欢迎引用
【保姆级】VPS 拿到手后必做的初始化配置脚本v2
拿到一台新的 VPS(小鸡),无论是建站还是跑服务,打好地基最重要。
本文整理了一套标准的初始化流程,涵盖了系统更新、ZRAM/SWAP内存优化、日志瘦身、网络加速与安全防护。
适用系统:推荐 Debian 11/12 或 Ubuntu 22.04 LTS
注意:文中涉及修改系统配置,建议操作前先备份重要数据。
一、 系统基础设置
1. 更新软件源与组件
拿到机子第一件事,先更新系统现有的软件包。这里提供两种方案,请根据你的使用习惯选择:
方案 A:极简基础环境(适合仅跑单一服务 / 洁癖党)
只安装最核心的下载工具、证书组件和防火墙,保持系统纯净。
apt update && apt upgrade -y
apt install -y sudo curl wget ca-certificates ufw
方案 B:全能实用环境(推荐,适合日常折腾 / 建站主力机)
在基础环境之上,增加了常用编辑器、系统监控、防断网终端以及 Python 环境,一步到位。
apt update && apt upgrade -y
apt install -y sudo curl wget ca-certificates ufw nano vim git htop tmux screen unzip tar lsof jq python3 python3-pip python3-venv python3-systemd
💡 工具科普:
htop是更直观的监控;tmux/screen是防断线神器,跑长耗时脚本(如编译环境)必用!
2. 配置 UFW 防火墙
很多刚开的 VPS 默认防火墙是全开的,开启防火墙铸造你的第一道防线。
# 放行必要的端口(⚠️极其重要,不放行 SSH 会被关在门外!)
ufw allow ssh # 或使用: ufw allow 你的SSH端口号/tcp
ufw allow 80/tcp # 放行 HTTP,用于申请证书
ufw allow 443/tcp # 放行 HTTPS,用于加密访问
# 启动防火墙
ufw enable
3. 校正系统时间
很多海外 VPS 默认不是国内时间,看日志极不方便,建议改为上海时间。
# 设置时区为上海
sudo timedatectl set-timezone Asia/Shanghai
4. 限制系统日志大小(防硬盘撑爆)
很多新手不知道,Debian/Ubuntu 的 systemd-journald 日志如果不加限制,几个月后可能会不知不觉吃掉几个 G 的空间,对 10G/20G 小硬盘的机器非常不友好。
# 1. 立即清理现有日志,仅保留最新的 500M
sudo journalctl --vacuum-size=500M
# 2. 修改配置:限制日志总大小为 500M,单文件最大 50M
sudo sed -i -E 's/^#?SystemMaxUse=.*/SystemMaxUse=500M/' /etc/systemd/journald.conf
sudo sed -i -E 's/^#?SystemMaxFileSize=.*/SystemMaxFileSize=50M/' /etc/systemd/journald.conf
# 3. 重启日志服务生效
sudo systemctl restart systemd-journald
💡 避坑提示:
如果在执行sudo命令时遇到类似sudo: unable to resolve host XXX: Name or service not known的提示,说明系统主机名未绑定本地 IP。这不影响命令执行,但看着烦。可以运行下面这行命令修复:
echo "127.0.0.1 $(hostname)" | sudo tee -a /etc/hosts
另外,如果执行清理日志时提示freed 0B,说明你的日志还不到 500M,属于正常现象,无需理会。
二、 内存优化:ZRAM 与 传统 SWAP (一键脚本)
小内存机器必备!防止内存爆满导致失联或服务崩溃。这里提供两种业界主流的一键脚本方案,请二选一即可。
方案 A:ZRAM 内存压缩(推荐:512M-1G 极小内存或低 I/O 机器)
ZRAM 不读写硬盘,而是通过占用少量 CPU 资源在内存中开辟一块压缩区。速度极快,且能保护便宜小鸡那可怜的固态硬盘寿命。
使用 spiritLHLS 大佬的一键配置脚本:
curl -L https://raw.githubusercontent.com/spiritLHLS/addzram/main/addzram.sh -o addzram.sh && chmod +x addzram.sh && bash addzram.sh
方案 B:传统物理 SWAP(推荐:硬盘大、对 CPU 要求高的机器)
如果你的物理内存已经有 2G 以上,或者运行的服务(如建站数据库)极其吃 CPU 不适合用 ZRAM,可以使用传统的 SWAP 分区。
使用 yuju520 的一键分配脚本:
wget -O swap.sh https://raw.githubusercontent.com/yuju520/Script/main/swap.sh && chmod +x swap.sh && clear && ./swap.sh
三、 内核与 BBR 加速
SSH 连接后输入命令 uname -r,只要输出的版本号 大于 4.9,系统即自带 BBR。手动开启 BBR 命令如下:
echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf
sysctl -p
# 验证是否成功加载
lsmod | grep bbr
四、 修改 SSH 端口 (安全加固)
默认的 22 端口是黑客脚本暴力破解的重灾区。改成高位端口可以大幅减少扫描骚扰。
⚠️ 预警:NAT VPS 不要改! NAT 机器直接使用商家提供的端口映射即可。
⚠️ 注意:请务必先在防火墙里放行新端口:sudo ufw allow 55555/tcp
# 将 SSH 端口修改为 55555
sudo sed -i 's/^#\?Port 22.*/Port 55555/g' /etc/ssh/sshd_config
# 重启 SSH 服务
sudo systemctl restart sshd
(注意:重启后请不要立即关闭当前 SSH 窗口,先新开一个窗口尝试用新端口连接,以防失联。)
五、 安装 Fail2ban 防爆破
Fail2ban 可以自动封禁多次试错的 IP,配合修改端口食用效果更佳。
apt install fail2ban -y
# 创建配置文件
cat << 'EOF' > /etc/fail2ban/jail.local
[DEFAULT]
ignoreip = 127.0.0.1
allowipv6 = auto
backend = systemd
[sshd]
enabled = true
filter = sshd
port = ssh
action = iptables[name=SSH, port=ssh, protocol=tcp]
logpath = /var/log/auth.log
bantime = 86400
findtime = 86400
maxretry = 3
EOF
# 启动与验证
sudo systemctl enable fail2ban --now
sudo systemctl restart fail2ban
fail2ban-client status
六、 Cloudflare WARP 配置 (网络补全与解锁)
WARP 是什么?
解决 IPv6-Only 访问 IPv4 资源的问题,或是用来解封 Netflix 等流媒体。推荐使用 fscarmen 大佬的一键脚本:
wget -N https://gitlab.com/fscarmen/warp/-/raw/main/menu.sh && bash menu.sh
七、 Docker 环境配置
非大陆服务器一键安装并设置开机自启:
curl -fsSL https://get.docker.com -o get-docker.sh && sh get-docker.sh
sudo systemctl enable docker --now
docker compose version
(如果是大陆服务器,请使用 curl https://install.1panel.live/docker-install -o docker-install && sudo bash ./docker-install )
八、 最后的测试环节
配置全搞定后,跑个脚本看看这台小鸡体质和网络如何吧!
1. 机器性能跑分测试
# NodeQuality 测试脚本 (测试硬件性能与基本网络)
bash <(curl -sL https://run.NodeQuality.com)
2. 网络回程路由及流媒体解锁测试
国内用户最关心的还是三网回程线路和看剧解锁:
# 一键测试流媒体解锁情况 (RegionRestrictionCheck)
bash <(curl -L -s check.unlock.media)
# 安装 NextTrace 路由跟踪工具
curl nxtrace.org/nt | bash
# 跑完后可以自己测回程,例如测上海电信回程:
nexttrace 202.96.209.133
📚 参考文献与进阶阅读
感谢以下作者与开源社区提供的方法论和一键脚本工具支持:
系统安全与初始化优化
1.一台新到手的VPS服务器必做的十二项配置
2.我拿到VPS服务器必做的那些事
3.防暴力破解,不止靠 2FA——fail2ban 自动封禁恶意 IP
4. Linux日志管理实战:rsyslog与journald大小限制配置指南
5.Linux 修改日志轮转 logrotate 大小限制配置
ZRAM / SWAP 内存优化
6.SWAP, ZRAM and ZSWAP 原理浅析
7.为 Linux 服务器开启 ZRAM 来节约内存
8. linux 扩容|缩容 (增加与减小swap分区)
9. 一键ZRAM脚本 - spiritLHLS
10. 一键SWAP脚本 - yuju520
进阶网络工具与脚本
11. WARP 实现单栈 VPS 添加 IPv4 / IPv6 双栈出口并解锁流媒体
直接科技lion脚本。
马克,小白学习之
萌新收获很多,谢佬分享
不错,可以引用吗
感谢分享
收藏了
厉害
技术贴帮顶
好东西好东西,收藏了
收藏