新购买的 VPS 通常是一个“裸系统”。为了确保服务器长期稳定、安全地运行,我们需要进行一系列的初始化设置和性能优化。本指南将带您完成从“开箱”到“精装修”的全过程。
📦 更新系统组件
这是拿到服务器后的第一件事。旧版本的软件可能包含安全漏洞。
如果更新过程中出现交互式弹窗询问是否保留配置文件,通常选择 "keep the local version currently installed" (保留当前版本) 是最稳妥的。
👤 用户与权限管理
长期使用 root 账户操作极其危险。我们应该创建一个普通用户,并在需要时使用 sudo 提权。
创建新用户
将 username 替换为您想要的用户名:
系统会提示您设置密码并填写一些信息(直接回车跳过即可)。
授予 Sudo 权限
现在,该用户可以使用 sudo command 来执行管理员操作了。
🔒 SSH 安全加固
SSH 是黑客暴力破解的重点目标。修改默认端口和禁止 Root 登录能抵挡 99% 的攻击。
🛑 警告:防封锁指南
在修改 SSH 配置前,请确保您已经创建了新用户并设置了 SSH 密钥登录。建议保持当前终端连接不关闭,新开一个终端测试连接成功后,再关闭旧连接。
修改配置文件
编辑 SSH 配置文件:nano /etc/ssh/sshd_config
# 修改默认端口 (选一个 1024-65535 之间的端口)
Port 22222
# 禁止 root 直接登录
PermitRootLogin no
# 禁止密码登录 (仅限已配置好密钥的情况)
PasswordAuthentication no
# 仅允许特定用户登录 (可选)
AllowUsers username 修改完成后,重启 SSH 服务生效:
sudo service sshd restart 📂 进阶:解除文件描述符限制
Linux 默认限制每个进程打开的文件数量(通常为 1024),这对于高并发应用(如 Web 服务器、代理工具)来说远远不够,容易导致 "Too many open files" 错误。
1. 临时修改 (重启失效)
ulimit -n 65535 2. 永久修改
编辑 /etc/security/limits.conf,在文件末尾添加以下内容:
* soft nofile 65535
* hard nofile 65535
root soft nofile 65535
root hard nofile 65535 注:需重启服务器生效。验证命令:ulimit -n
🛡️ 配置 UFW 防火墙
UFW (Uncomplicated Firewall) 是 Ubuntu/Debian 上最简单的防火墙工具。
1️⃣ 安装 UFW
apt install ufw -y 2️⃣ 放行必要端口 (关键!)
务必先放行 SSH 端口,否则开启防火墙后会断连。
ufw allow 22222/tcp SSH 端口 ufw allow 80/tcp HTTP ufw allow 443/tcp HTTPS 3️⃣ 启用防火墙
ufw enable 输入 y 确认启用。
👮 进阶:Fail2ban 自动防御
即使改了端口,服务器仍会被不停扫描。Fail2ban 可以监控日志,自动封禁多次尝试失败的恶意 IP。
# 1. 安装 Fail2ban
apt install fail2ban -y
# 2. 复制配置文件 (避免更新覆盖)
cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
# 3. 启动服务
systemctl enable fail2ban
systemctl start fail2ban /var/log/auth.log,并在 IP 失败 5 次后将其封禁 10 分钟。
🚀 开启 BBR 加速
BBR 是 Google 开发的 TCP 拥塞控制算法,能显著提升弱网环境下的传输速度。Linux Kernel 4.9+ 已内置。
一键开启命令
echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf
sysctl -p 验证是否成功:
lsmod | grep bbr 如果输出包含 tcp_bbr,说明开启成功。
🌐 进阶:DNS 解析优化
默认的 ISP DNS 可能速度慢或有劫持风险。建议更换为 Google 或 Cloudflare 的公共 DNS。
编辑 /etc/resolv.conf,修改为:
nameserver 8.8.8.8
nameserver 1.1.1.1 注:部分系统重启后会重置此文件,需修改 Netplan 或 systemd-resolved 配置以永久生效。
💾 配置 SWAP 虚拟内存
如果您的 VPS 内存较小(如 512MB 或 1GB),配置 SWAP 可以防止内存耗尽导致系统卡死。
1. 创建 SWAP 文件
这里以创建 1GB SWAP 为例:
# 创建文件
fallocate -l 1G /swapfile
# 设置权限
chmod 600 /swapfile
# 格式化为 swap
mkswap /swapfile
# 启用 swap
swapon /swapfile 2. 开机自动挂载
为了让重启后依然生效,需要写入 /etc/fstab:
echo '/swapfile none swap sw 0 0' >> /etc/fstab 3. 调整使用倾向 (Swappiness)
设置系统使用 SWAP 的积极程度。值越低,越倾向于使用物理内存。
sysctl vm.swappiness=10
# 永久生效需写入 /etc/sysctl.conf 🧹 进阶:日志清理策略
systemd-journald 日志如果不加限制,可能会占用数 GB 空间。建议限制其大小。
清理并限制大小
# 只保留最近 100M 日志
journalctl --vacuum-size=100M
# 只保留最近 7 天日志
journalctl --vacuum-time=7d 如需永久生效,请修改 /etc/systemd/journald.conf 中的 SystemMaxUse=100M。
⏰ 时间同步设置
许多服务(如 V2Ray、SSL 证书验证)对时间极其敏感。确保服务器时间准确非常重要。
修改时区
timedatectl set-timezone Asia/Shanghai 设置为上海时间(CST)。
启用 NTP 同步
timedatectl set-ntp true 开启网络时间协议自动同步。
优化完成!
现在您的 VPS 已经处于最佳状态:安全、快速且稳定。接下来可以开始部署您的服务了。
🚀 下一步行动
完成基础优化后,您可以继续完善服务器的安全配置,或开始使用自动化脚本提升效率:
防火墙配置教程
深度学习 iptables 和 ufw 的高级规则配置,定制安全策略。
自动化运维脚本
使用 Shell 脚本自动化日常运维任务,提高管理效率。
VPS 推荐榜单
查看经过实测验证的优质 VPS 商家推荐,找到最适合您的方案。
浏览更多教程
探索服务器安全、网站搭建、性能优化等进阶主题。