很多人买了云服务器,登上去就一脸懵:然后呢?本文整理了购买后必做的10件事,从安全加固到环境搭建,帮你把裸机变成生产可用的服务器。
前言
你刚买了一台腾讯云/阿里云的云服务器,拿到了 IP 地址和初始密码,然后……然后该干什么?
相信很多新手都卡在这里过。本文按优先级排列,列出购买云服务器后必做的10件事。不管你买的是 Linux 还是 Windows,不管你是要搭建网站还是跑 API,这些基础工作都不能跳过。
第一件事:修改默认密码 + 禁止 root 直接登录
这是安全的第一步,也是很多人忽略的一步。默认的 root 密码如果被字典攻击猜到,整台服务器就废了。
1. 创建普通用户,赋予 sudo 权限
# 创建新用户
adduser myuser
# 加入 sudo 组
usermod -aG sudo myuser
# 切换到新用户测试
su - myuser
sudo whoami # 应该输出 root
2. 禁止 root 直接 SSH 登录
# 编辑 SSH 配置
sudo vim /etc/ssh/sshd_config
# 修改以下配置:
PermitRootLogin no # 禁止 root 登录
PasswordAuthentication no # 禁止密码登录(配置密钥后)
Port 22022 # 修改默认端口(可选)
# 重启 SSH 服务
sudo systemctl restart sshd
⚠️ 注意:修改 SSH 端口后,要先在云控制台的安全组里放行新端口,再断开当前连接!
第二件事:配置 SSH 密钥登录
密码登录有被暴力破解的风险,密钥登录更安全也更方便(不用每次输密码)。
本地机器生成密钥对:
# macOS/Linux
ssh-keygen -t ed25519 -C "[email protected]"
# 生成后得到两个文件:
# ~/.ssh/id_ed25519 (私钥,保存在本地,不要泄露)
# ~/.ssh/id_ed25519.pub (公钥,上传到服务器)
将公钥上传到服务器:
# 方法一:一行命令搞定
ssh-copy-id -i ~/.ssh/id_ed25519.pub myuser@your_server_ip
# 方法二:手动添加
# 在服务器上执行:
mkdir -p ~/.ssh
chmod 700 ~/.ssh
echo "你的公钥内容" >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
本地 SSH 配置(可选,方便使用别名):
# ~/.ssh/config
Host myserver
HostName 123.456.789.0
User myuser
Port 22022
IdentityFile ~/.ssh/id_ed25519
配置后,直接 ssh myserver 即可登录,不用每次输完整命令。
第三件事:更新系统软件包
刚买的服务器镜像可能有几个月没更新,系统和软件包可能存在已知漏洞,第一件事就是全量更新。
# Ubuntu/Debian
sudo apt update && sudo apt upgrade -y
# CentOS/RHEL
sudo yum update -y
# 更新完后重启(如果有内核更新)
sudo reboot
建议开启自动安全更新:
# Ubuntu
sudo apt install unattended-upgrades -y
sudo dpkg-reconfigure -plow unattended-upgrades
第四件事:配置防火墙规则
云服务器有两层防火墙:云控制台安全组(外层)和服务器本地防火墙(内层),都需要配置。
云控制台安全组规则(最小权限原则):
| 端口 | 协议 | 来源 | 说明 |
|---|---|---|---|
| 22022 | TCP | 你的 IP | SSH(改过默认端口) |
| 80 | TCP | 0.0.0.0/0 | HTTP |
| 443 | TCP | 0.0.0.0/0 | HTTPS |
| 其他 | – | – | 默认不开放 |
服务器本地防火墙(UFW,Ubuntu):
# 安装并启用 UFW
sudo apt install ufw -y
# 默认策略:入站拒绝,出站允许
sudo ufw default deny incoming
sudo ufw default allow outgoing
# 开放需要的端口
sudo ufw allow 22022/tcp # SSH
sudo ufw allow 80/tcp # HTTP
sudo ufw allow 443/tcp # HTTPS
# 启用防火墙
sudo ufw enable
# 查看规则
sudo ufw status numbered
第五件事:配置服务器时区
时区不对会导致日志时间混乱、定时任务执行时间错误,这个坑很隐蔽。
# 查看当前时区
timedatectl
# 设置为中国时区
sudo timedatectl set-timezone Asia/Shanghai
# 验证
date
# 输出示例:Wed Apr 8 09:00:00 CST 2026
同时开启时间自动同步:
sudo systemctl enable systemd-timesyncd
sudo systemctl start systemd-timesyncd
timedatectl show --property=NTP
第六件事:安装必备工具
# 系统监控工具
sudo apt install -y htop iotop nethogs
# 网络工具
sudo apt install -y curl wget net-tools nmap
# 开发工具
sudo apt install -y git vim build-essential
# 日志查看
sudo apt install -y lnav # 比 tail -f 好用很多
# 磁盘分析
sudo apt install -y ncdu
常用命令速查:
| 命令 | 作用 |
|---|---|
htop |
交互式进程查看器 |
df -h |
查看磁盘使用情况 |
free -h |
查看内存使用情况 |
netstat -tlnp |
查看监听端口 |
journalctl -f |
实时查看系统日志 |
ncdu / |
可视化磁盘占用分析 |
nethogs |
按进程查看网络流量 |
第七件事:配置 Swap 分区
小内存服务器(1G/2G)在内存不足时会直接 OOM Kill 进程,配置 Swap 可以作为缓冲。
# 创建 2G Swap 文件
sudo fallocate -l 2G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
# 验证
free -h
# 设置开机自动挂载
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
# 调整 Swap 积极性(60=默认,10=节省使用 Swap)
sudo sysctl vm.swappiness=10
echo 'vm.swappiness=10' | sudo tee -a /etc/sysctl.conf
建议:Swap 大小设为内存的 1-2 倍,最大不超过 8G。
第八件事:安装 Docker(推荐方式)
现代服务器上跑应用,Docker 是最省事的方式。统一环境、快速部署、资源隔离,一步到位。
# 一键安装 Docker(使用官方脚本)
curl -fsSL https://get.docker.com | sh
# 如果网络慢,用阿里云镜像安装
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
# 将当前用户加入 docker 组(不用每次 sudo)
sudo usermod -aG docker $USER
newgrp docker
# 验证安装
docker run hello-world
# 开机自启
sudo systemctl enable docker
配置 Docker 镜像加速(国内服务器必配):
# /etc/docker/daemon.json
{
"registry-mirrors": [
"https://mirror.ccs.tencentyun.com",
"https://hub-mirror.c.163.com"
],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m",
"max-file": "3"
}
}
sudo systemctl daemon-reload
sudo systemctl restart docker
第九件事:设置自动备份
服务器数据丢失是最惨的事。养成定期备份的习惯,至少要备份重要配置文件和数据库。
简单的每日备份脚本:
#!/bin/bash
# /usr/local/bin/backup.sh
BACKUP_DIR="/backup/$(date +%Y%m%d)"
mkdir -p $BACKUP_DIR
# 备份重要配置
tar -czf $BACKUP_DIR/configs.tar.gz /etc/nginx /etc/ssh
# 备份数据库(MySQL 示例)
mysqldump -u root -p${MYSQL_PASSWORD} --all-databases | gzip > $BACKUP_DIR/db.sql.gz
# 删除 7 天前的备份
find /backup -maxdepth 1 -type d -mtime +7 -exec rm -rf {} \;
echo "备份完成:$BACKUP_DIR"
# 加可执行权限
chmod +x /usr/local/bin/backup.sh
# 设置每天凌晨 2 点自动执行
crontab -e
# 添加:
0 2 * * * /usr/local/bin/backup.sh >> /var/log/backup.log 2>&1
更好的方案:使用云厂商的快照功能(腾讯云CBS快照、阿里云云盘快照),设置自动快照策略,成本低且可靠。
第十件事:配置监控告警
服务器出问题不能靠用户反馈,要靠监控主动发现。
方案一:使用云厂商自带监控
腾讯云、阿里云都有免费的基础监控,进控制台开启即可:
– CPU/内存/磁盘使用率超阈值告警
– 进程健康检测
– 发短信/邮件/企微通知
方案二:轻量级自建监控(Uptime Kuma)
# 用 Docker 一键部署 Uptime Kuma
docker run -d \
--name uptime-kuma \
--restart unless-stopped \
-p 3001:3001 \
-v uptime-kuma:/app/data \
louislam/uptime-kuma:1
# 访问 http://your_ip:3001 进行配置
Uptime Kuma 支持 HTTP、TCP、Ping、DNS 等多种监控方式,可以配置 Telegram、微信、邮件等告警通道,完全免费开源。
速查:新服务器配置清单
□ 1. 修改密码,禁止 root SSH 登录
□ 2. 配置 SSH 密钥登录
□ 3. 更新系统软件包
□ 4. 配置防火墙规则(安全组 + UFW)
□ 5. 设置时区为 Asia/Shanghai
□ 6. 安装常用工具(htop/curl/git/docker等)
□ 7. 配置 Swap 分区(小内存服务器必配)
□ 8. 安装 Docker + 配置镜像加速
□ 9. 设置自动备份策略
□ 10. 开启监控告警
把这个清单收藏起来,下次买了新服务器对着检查一遍,基础安全和环境配置就搞定了。
下一步做什么?
完成以上10步后,你的服务器已经是一台”干净、安全、可用”的生产级服务器了。接下来根据你的需求选择:
- 搭建网站:安装 Nginx + 申请 SSL 证书 → 配置反向代理
- 部署 API 服务:Docker Compose 编排服务 → 配置 Nginx 代理
- 运行大模型:部署 Ollama + 下载模型 → 配置 API 访问
- 数据存储:安装 MySQL/PostgreSQL/Redis → 配置访问权限
每个方向都有对应的完整教程,后续会持续更新。
关于作者
长期关注大模型应用落地与云服务器实战,专注技术在企业场景中的落地实践。
个人博客:y1cloud.cn —— 持续更新云计算、AI大模型实战教程,欢迎访问交流。
