发表于

阿里云CentOS 9服务器从零到一:安全配置与宝塔面板安装指南

Authors

阿里云ECS服务器控制台界面截图

前言

本文是一篇详尽的 阿里云服务器配置 指南,旨在从零开始,完成一台全新 CentOS 9 服务器的基础配置,并安装宝塔(BT-Panel)管理面板。本文的重点在于“可复现的命令、最小化安全清单与常见风险规避”。

通过本教程,您将完成:

  • 安全的服务器登录与用户管理方法。
  • CentOS 9 系统的初始化与核心配置。
  • 防火墙(firewalld & 阿里云安全组)的正确配置。
  • 一键安装并访问 宝塔面板
  • 服务器后期的安全与维护要点。

快速通道:如果你是经验丰富的老手,只想快速在 CentOS 9 上安装宝塔,可以从本文的 第四步 开始。但我们强烈建议新用户按照顺序完成所有的基础安全配置。

第一步:准备工作

在开始之前,请确保您已具备以下条件:

  1. 一台阿里云ECS服务器:已购买并成功创建,操作系统为 CentOS 9 Stream
  2. 公网IP地址:记下您服务器的公网 IP。
  3. root用户密码:记录好创建实例时设置或系统生成的初始密码。
  4. SSH工具:Windows用户推荐使用 PuTTY 或 Xshell;macOS/Linux 用户直接使用系统自带的终端即可。

第二步:首次登录与基础安全设置

首次登录服务器后,我们不应立即安装软件,而是先完成基础的 服务器配置 与安全加固。

1. 远程登录服务器

ssh root@<您的服务器IP>

2. 更新系统

sudo dnf update -y

3. 创建日常管理用户(重要)

我的建议:直接使用 root 用户是服务器安全的最大隐患。创建一个低权限的日常用户,配合 sudo 使用,能有效防止因误操作或脚本漏洞导致整个系统崩溃。

# 1. 创建新用户(将 <用户名> 替换为您想要的名称,如 admin)
sudo useradd -m <用户名>

# 2. 为新用户设置一个强密码
sudo passwd <用户名>

# 3. 将用户添加到 wheel 用户组,赋予其 sudo 权限
sudo usermod -aG wheel <用户名>

4. 切换为新用户并配置SSH密钥登录(推荐)

之后的操作,都应使用这个新用户。为了达到最高的安全性,我们应配置密钥登录,并彻底禁用密码登录。

在本地生成密钥(若已有可跳过):

ssh-keygen -t ed25519 -C "<your_email>"

将公钥传到服务器新用户:

ssh-copy-id <用户名>@<您的服务器IP>

在服务器侧编辑 SSH 配置,禁用密码和root登录:

sudo sed -i 's/^#\?PasswordAuthentication.*/PasswordAuthentication no/' /etc/ssh/sshd_config
sudo sed -i 's/^#\?PermitRootLogin.*/PermitRootLogin no/' /etc/ssh/sshd_config
sudo systemctl reload sshd

避坑提示:在执行 systemctl reload sshd 前,请务必新开一个终端窗口,测试密钥登录是否成功。否则,一旦配置错误,你可能会被永远锁在服务器外面!

5. 基础时间同步与日志

sudo timedatectl set-timezone Asia/Shanghai
sudo timedatectl set-ntp true
sudo systemctl enable --now systemd-journald

第三步:核心:配置双重防火墙

防火墙是服务器的“网络门神”。在 阿里云服务器 上,我们需要配置两个层面的防火墙,两者必须同时放行,外部才能访问。

1. 配置 firewalld (系统层)

CentOS 9 默认使用 firewalld 作为防火墙管理工具。

# 查看防火墙运行状态,应为 running
sudo firewall-cmd --state

# 永久开放 SSH 端口(默认为 22),防止自己被锁在外面
sudo firewall-cmd --zone=public --add-port=22/tcp --permanent

# 永久开放 Web 服务端口(HTTP/80, HTTPS/443)
sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
sudo firewall-cmd --zone=public --add-port=443/tcp --permanent

# 【关键】为宝塔面板预留端口(默认 8888)
sudo firewall-cmd --zone=public --add-port=8888/tcp --permanent

# 重载防火墙规则,使新配置生效
sudo firewall-cmd --reload

# 查看已开放的所有端口,确认配置成功
sudo firewall-cmd --list-ports

2. 配置阿里云安全组 (云服务商层)

  1. 登录阿里云控制台

  2. 进入您的 ECS 实例列表,点击对应的实例ID。

  3. 在实例详情页,找到并点击 “安全组” 标签页。

  4. 点击安全组ID,进入配置页面,选择 “入方向” 规则。

  5. 点击 “手动添加”,按照上一步的端口列表,依次添加规则:

    • 端口范围22/22 (SSH)
    • 端口范围80/80 (HTTP)
    • 端口范围443/443 (HTTPS)
    • 端口范围8888/8888 (宝塔面板)
    • 授权对象:为了安全,SSH(22)端口建议设置为您的本地IP地址;其他端口可设置为 0.0.0.0/0,代表对所有IP开放。

我的建议:为了安全,SSH(22)端口的授权对象应设为你的本地公网IP;宝塔面板(8888)端口建议设置为你的家庭或公司IP段。只有Web端口(80, 443)才应设为 0.0.0.0/0 对所有人开放。

安全最小化清单(可按需启用)

  • Fail2ban(限制暴力登录)
sudo dnf install -y fail2ban
sudo systemctl enable --now fail2ban
sudo tee /etc/fail2ban/jail.d/sshd.local >/dev/null <<'EOF'
[sshd]
enabled = true
maxretry = 5
bantime = 1h
findtime = 15m
EOF
sudo systemctl restart fail2ban
  • 审计(审计关键操作)
sudo dnf install -y audit
sudo systemctl enable --now auditd
  • 端口概览与自查
ss -tulpn | grep LISTEN
sudo firewall-cmd --list-ports

第四步:在CentOS上安装宝塔面板

完成以上所有 服务器配置 后,CentOS安装宝塔 就变得非常简单了。

1. 安装必要工具

sudo dnf install -y wget curl

2. 执行宝塔官方安装脚本

wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sudo sh install.sh

注意: 安装过程会自动进行,可能需要几分钟时间。请耐心等待,不要中断。

3. 保存登录信息

安装完成后,终端会显示 宝塔面板 的登录信息,务必将其复制并妥善保存!

==================================================================
Congratulations! Installed successfully!
==================================================================
Bt-Panel: http://<您的服务器IP>:8888/xxxxxx  (外网面板地址)
username: xxxxxx                           (用户名)
password: xxxxxx                           (密码)
==================================================================

4. 登录并初始化宝塔

在浏览器中打开 “外网面板地址”,输入用户名和密码登录。首次登录,宝塔会推荐安装套件(如 LNMP 或 LAMP),您可以根据自己的需求一键安装,非常方便。

宝塔面板首次登录后的LNMP环境安装推荐界面

第五步:安全与维护建议

服务器部署完成只是开始,长期的安全维护至关重要。

  • 定期更新:养成定期执行 sudo dnf update -y 的习惯,及时修复系统和软件漏洞。
  • 修改默认端口:在宝塔面板后台,修改默认的 8888 端口为一个不常用的端口,并同步修改防火墙和安全组规则,可以有效防止扫描。
  • 启用 SSH 密钥登录:通过配置 SSH 密钥认证并禁用密码登录,可以极大提升服务器的登录安全性。
  • 定期备份:利用宝塔面板的计划任务功能,定期备份网站文件和数据库到云存储(如阿里云OSS),以防数据丢失。
  • 性能监控:时常关注宝塔面板首页的系统负载、CPU、内存等状态,及时发现并处理异常。

结语

以上步骤完成后,即可开始部署网站、数据库或其他应用。服务器管理是持续性的工作,建议建立“变更记录+监控+备份”三件套,遇到异常可快速回溯与回退。

参考资料: