云服务器新手入门教程

结论: 云服务器新手入门只需五步:选配置(个人建站起步 2 核 4G / 40G SSD / 3~5Mbps)→ 开通实例并放行 22、80、443 端口 → 用 SSH 密钥登录并做安全加固 → 安装 Nginx 或宝塔面板搭建运行环境 → 绑定域名并配置 SSL 证书即可上线。全过程按本教程操作约 40 分钟可完成,关键是全程禁用密码登录、只开放必要端口。

很多第一次接触服务器的人,会在同一个地方卡住:买完机器后不知道从哪下手。控制台里名词一大堆——实例、镜像、安全组、弹性公网 IP、快照、密钥对,看着就让人发怵。更麻烦的是,网上的教程要么默认你已经是运维工程师,上来就是一堆没有解释的命令;要么停留在十年前的 CentOS 6 时代,照着敲会直接报错。

本教程面向完全零基础的读者。我们按"从购买到上线"的真实顺序推进,每一步都给出可以直接复制执行的命令,并以 Ubuntu 24.04 LTS 为主,同时提供 Debian 12、Rocky Linux 9、CentOS 7 和 Windows Server 2022 的对照写法。截至 2026 年,主流云厂商的新建实例默认镜像均以这些版本为主。

云服务器到底是什么?先把概念捋清楚

结论:云服务器(Cloud Server)是运行在虚拟化平台上的一台虚拟机,你按需租用 CPU、内存、磁盘和带宽,不需要自己购买物理硬件。 它与物理服务器的本质区别在于资源调度方式:一台物理机通过虚拟化层(KVM、VMware 等)被切分成多台云服务器,每台都有独立的操作系统和 IP,彼此隔离。

对新手来说,理解下面这组术语比记住架构图更重要。它们会反复出现在控制台和工单回复里。

你必须认识的 10 个名词

  • 实例(Instance):一台云服务器的正式叫法,包含 CPU、内存、系统盘的配置组合。
  • 镜像(Image):预装好的操作系统模板,如 Ubuntu 24.04 LTS、Windows Server 2022。
  • 安全组(Security Group):云平台层面的虚拟防火墙,控制哪些端口能被外部访问。
  • 弹性公网 IP(EIP):可以绑定到任意实例、也可以解绑迁移的公网地址。
  • 密钥对(Key Pair):SSH 登录用的公私钥,比密码安全得多。
  • 快照(Snapshot):某个时间点整盘数据的完整副本,用于回滚。
  • 系统盘 / 数据盘:系统盘装操作系统,数据盘放业务数据,建议分开。
  • 带宽:出网速率上限,单位 Mbps,决定访问速度。
  • 镜像 / 自定义镜像:把已配置好的机器打包,后续批量复制。
  • 按量付费 / 包年包月:前者按秒计费随时释放,后者预付便宜。

云服务器、VPS、物理服务器怎么选

对比项云服务器VPS物理服务器
资源隔离独享 vCPU 与内存多户共享宿主资源整机独享
扩容方式控制台几分钟升降配通常需迁移需加硬件,周期长
计费粒度按秒 / 按月多为包月多为包月包年
容错能力宿主故障可自动迁移(部分厂商)基本无依赖自购冗余
适合场景建站、应用、测试、生产学习、低负载代理数据库、高并发、合规托管
新手推荐度高中低

新手第一步:配置怎么选才不踩坑

结论:个人博客与小型展示站选 2 核 4G、40~60GB SSD、3~5Mbps 带宽即可;中小企业官网建议 4 核 8G、100GB SSD、5~10Mbps。 判断依据是并发量与是否有数据库——数据库是内存消耗大户,MySQL 8.4 空载约占用 400MB~600MB 内存。

按业务场景推荐配置

场景CPU / 内存系统盘带宽说明
个人博客 / 简历站2 核 4G40GB SSD3Mbps静态化后可更低
企业官网 / 小程序后端4 核 8G100GB SSD5Mbps建议单独数据盘
电商 / 论坛4 核 16G200GB SSD10Mbps内存优先堆够
自建数据库4 核 16G 起200GB SSD 起内网为主IOPS 是关键指标
测试 / 学习2 核 2G40GB SSD1~2Mbps可选按量付费

地域、系统镜像与存储怎么定

  1. 地域:国内业务选离用户最近的地域;若面向国内用户且服务器在境内,必须完成 ICP 备案才能用域名访问 80/443 端口。境外地域(香港、新加坡、美国)无需备案,但延迟更高。
  2. 系统镜像:新手优先 Ubuntu 24.04 LTS(社区文档最多、包最新);企业内网环境可考虑 Rocky Linux 9(RHEL 兼容);必须跑 .NET Framework 或 IIS 才选 Windows Server 2022。
  3. 带宽 vs 流量:按固定带宽计费适合访问稳定场景;按流量计费适合有明显波峰波谷的业务。入门阶段选固定带宽更容易控制成本。
  4. 系统盘建议不低于 40GB,因为日志文件增长很快,磁盘写满会导致服务直接崩溃。

第二步:创建实例并做首次安全加固

结论:创建实例时务必选择 SSH 密钥对登录而不是密码,并在安全组中只放行必要端口。 云服务器一旦暴露在公网,几分钟内就会被自动化脚本扫描并尝试暴力破解,密码登录几乎必然被攻破。

创建实例的关键参数

参数推荐值原因
登录方式SSH 密钥对抗暴力破解,密码再复杂也会被爆破
安全组入站22、80、443(按需再加)最小暴露面原则
22 端口来源限定为你的办公网出口 IP公网全开等于给全世界试密码
系统盘SSD 云盘 ≥40GB日志与系统更新需要空间
快照策略开通每日自动快照误操作时的最后一道防线

首次登录后必做的 5 件事

登录成功后按顺序执行,一台机器从"裸机"变成"可用环境":

bash
# 1. 更新系统软件包到最新(Ubuntu 24.04 / Debian 12)
sudo apt update && sudo apt upgrade -y

# 2. 创建一个非 root 的普通用户,避免直接用 root 操作
sudo adduser opsuser
sudo usermod -aG sudo opsuser

# 3. 配置时区为中国标准时间,日志时间才对得上
sudo timedatectl set-timezone Asia/Shanghai
timedatectl status

# 4. 开启系统防火墙 UFW,只放行必要端口
sudo ufw allow 22/tcp
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw --force enable
sudo ufw status verbose

# 5. 安装常用排错工具
sudo apt install -y vim curl wget htop net-tools lsof unzip

Rocky Linux 9 / CentOS 7 对应的包管理与防火墙命令不同:

bash
# Rocky Linux 9 / CentOS 7 更新系统
sudo dnf update -y          # Rocky Linux 9 / AlmaLinux 9
# sudo yum update -y        # CentOS 7(已于 2024 年 6 月停止维护,建议迁移)

# 创建用户并授权
sudo adduser opsuser
sudo usermod -aG wheel opsuser      # wheel 组即 sudo 权限
sudo timedatectl set-timezone Asia/Shanghai

# firewalld 放行端口
sudo systemctl enable --now firewalld
sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload
sudo firewall-cmd --list-all

第三步:如何远程连接你的云服务器

结论:Linux 用 SSH 连接(ssh -p 22 opsuser@公网IP),Windows 用远程桌面 RDP(mstsc 连 3389 端口)。 建议把连接参数写进本地 ~/.ssh/config,之后只需 ssh myweb 即可登录,不用再记 IP 和端口。

在本地电脑生成密钥并把公钥推送到服务器:

bash
# 本地生成 ED25519 密钥(比 RSA 更短更快更安全)
ssh-keygen -t ed25519 -C "yourname@example.com"

# 把公钥上传到服务器(会自动写入 ~/.ssh/authorized_keys)
ssh-copy-id -i ~/.ssh/id_ed25519.pub -p 22 root@<你的公网IP>

# 配置别名,编辑 ~/.ssh/config
cat >> ~/.ssh/config <<'EOF'
Host myweb
    HostName <你的公网IP>
    Port 22
    User opsuser
    IdentityFile ~/.ssh/id_ed25519
    ServerAliveInterval 60
EOF

# 之后直接这样登录
ssh myweb

Windows Server 2022 使用远程桌面连接:

powershell
# 在 Windows Server 上确认远程桌面已启用(PowerShell 管理员)
Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Control\Terminal Server' -Name "fDenyTSConnections" -Value 0

# 放行 3389 端口防火墙规则
Enable-NetFirewallRule -DisplayGroup "Remote Desktop"

# 查看监听端口确认服务已起来
netstat -ano | findstr :3389

注意:Windows Server 的远程桌面端口 3389 是自动化扫描的重灾区,强烈建议限制安全组来源 IP 或改用 VPN 接入,不要对 0.0.0.0/0 开放。

第四步:搭建运行环境并部署第一个网站

结论:新手建议直接安装宝塔面板(BT Panel)图形化管理;想深入学习的可以手动安装 Nginx。 宝塔把 Nginx、MySQL、PHP、SSL、计划任务都做成了可视化按钮,代价是占用约 300MB~500MB 内存,且必须放行 8888 端口。

方案 A:手动安装 Nginx(推荐学习路线)

bash
# Ubuntu 24.04 安装 Nginx
sudo apt install -y nginx
sudo systemctl enable --now nginx
sudo systemctl status nginx --no-pager

# 验证:返回 HTTP 200 说明 Web 服务已正常
curl -I http://127.0.0.1

# 站点根目录与配置位置
# 默认网页目录:/var/www/html/
# 主配置文件:  /etc/nginx/nginx.conf
# 站点配置:    /etc/nginx/sites-available/default

放一个测试页面验证外网能否访问:

bash
sudo tee /var/www/html/index.html > /dev/null <<'EOF'


我的第一台云服务器

Hello from Ubuntu 24.04

如果该页面能正常显示,说明 Nginx 与安全组都已配置正确。

EOF # 修正权限 sudo chown -R www-data:www-data /var/www/html sudo chmod -R 755 /var/www/html

此时用浏览器访问 http://<你的公网IP>,能看到页面即为成功。如果打不开,99% 是安全组的 80 端口没有放行,而不是 Nginx 配错了。

方案 B:宝塔面板(省事路线)

bash
# Ubuntu 24.04 / Debian 12 官方安装命令(需在 root 下执行)
wget -O install.sh https://download.bt.cn/install/install-ubuntu_6.0.sh && bash install.sh ed8484bec

# 安装完成后记录输出的面板地址、用户名、密码
# 面板端口 8888 必须在云平台安全组与系统防火墙同时放行
bt default      # 忘记面板入口信息时用这条命令找回

第五步:域名绑定、SSL 与上线收尾

结论:域名解析添加一条 A 记录指向公网 IP,再用 Certbot 免费申请 Let's Encrypt 证书开启 HTTPS。 截至 2026 年,Let's Encrypt 证书有效期为 90 天,Certbot 安装时会自动配置 systemd timer 或 cron 定时续期,无需手动干预。

bash
# 申请并安装 SSL 证书(自动修改 Nginx 配置)
sudo apt install -y certbot python3-certbot-nginx
sudo certbot --nginx -d example.com -d www.example.com

# 验证自动续期机制是否正常
sudo certbot renew --dry-run

# 查看已颁发的证书列表与到期时间
sudo certbot certificates

上线前最后检查一遍:安全组只开必要端口、SSH 已禁用密码登录、自动快照已开启、网站目录权限正确、证书自动续期已验证。

新手必须养成的运维基本功

结论:新手最需要养成的三个习惯是"改配置前先备份、每周看一次磁盘与日志、重要操作写进变更记录"。 服务器出问题极少是硬件原因,绝大多数是人为误操作,而快照和备份是你唯一的后悔药。

每天 3 分钟巡检命令清单

  • df -h —— 查看磁盘余量,根分区使用超过 80% 就要清理。
  • free -h —— 查看内存,注意 available 列而非 free 列。
  • top 或 htop —— 定位 CPU 与内存占用最高的进程。
  • ss -lntup —— 查看本机开放了哪些端口、被哪个进程占用。
  • journalctl -xe —— 查看最近系统日志与错误。
  • last / lastb —— 查看登录记录与失败登录尝试。