Linux服务器基线配置实战:从零开始加固你的云主机

为什么你需要一份Linux服务器基线

刚买回来的云主机(比如阿里云、腾讯云、华为云),默认配置下可能存着不少安全隐患——root远程登录、默认SSH端口22、防火墙没开、老旧软件包……这些“裸奔”状态很容易被攻击者盯上。Linux服务器基线就是指一套基础的安全配置标准,把它跑一遍,相当于给你的服务器穿上第一层铠甲。
本文完全面向零基础,每一步都会给出确切的命令和操作路径,你只要跟着复制粘贴就能搞定。

动手前的三点准备

  • 系统环境:本文基于CentOS 7/8和Ubuntu 20.04/22.04,其他发行版命令可能略有差异,但思路通用。
  • 连接工具:建议使用Xshell、Putty(Windows)或终端(macOS/Linux)通过SSH登录你的服务器。当前阶段请保持原有的root用户和密码登录方式,等配置完成后再做收紧。
  • 备份意识:修改关键配置文件前,最好先用 cp 命令备份原文件,例如 cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak,万一改坏了还能恢复。

分步操作:搭建你的基线

1. 创建普通管理员用户并禁用root远程登录

使用root登录后,先建一个普通用户用于日常工作。
以创建用户 ops 为例:

useradd -m ops
echo 'YourStrongPassword123!' | passwd --stdin ops   # CentOS
# Ubuntu用下面这行替代:
# echo 'ops:YourStrongPassword123!' | chpasswd

ops 添加sudo权限:

usermod -aG wheel ops   # CentOS
usermod -aG sudo ops    # Ubuntu

切换身份测试一下:

su - ops
sudo whoami

如果输出 root,说明sudo配置成功。
现在修改SSH配置文件禁止root登录:

sudo sed -i 's/^#PermitRootLogin yes/PermitRootLogin no/' /etc/ssh/sshd_config
sudo sed -i 's/^PermitRootLogin yes/PermitRootLogin no/' /etc/ssh/sshd_config
sudo systemctl restart sshd

注意:改动后一定要保持当前root窗口不关,另开一个新窗口用 ops 用户测试能否sudo成功。
如果新窗口连不上,你还能用旧窗口回滚。

2. 修改SSH端口并限制登录方式

默认端口22是扫描器的首选目标。
把SSH端口改成一个高位端口(比如22022)。
编辑配置文件:

sudo vim /etc/ssh/sshd_config

找到 #Port 22,改成 Port 22022
同时建议关闭密码登录,启用密钥认证(这里先简单关闭密码,提前准备好密钥):

PasswordAuthentication no
PubkeyAuthentication yes

保存退出后重启SSH:

sudo systemctl restart sshd

然后千万别关当前窗口,新开一个窗口用新端口连接测试:ssh ops@你的服务器IP -p 22022
能连上再关闭旧窗口。

3. 配置防火墙(iptables/firewalld/ufw)

一般云厂商在控制台提供安全组,但服务器内部防火墙也要打开做二次防护。

  • CentOS使用firewalld:
sudo systemctl start firewalld
sudo systemctl enable firewalld
sudo firewall-cmd --permanent --add-port=22022/tcp
sudo firewall-cmd --permanent --remove-service=ssh   # 去掉默认ssh服务
sudo firewall-cmd --reload
  • Ubuntu使用ufw:
sudo ufw allow 22022/tcp
sudo ufw --force enable

查看防火墙状态确认新端已经放行:

sudo firewall-cmd --list-ports   # CentOS
sudo ufw status                   # Ubuntu

4. 系统更新与基础安全工具

保持软件包最新是基线的重要一环。

sudo yum update -y   # CentOS
sudo apt update && sudo apt upgrade -y   # Ubuntu

安装常用安全工具:

sudo yum install -y fail2ban  # CentOS
sudo apt install -y fail2ban  # Ubuntu

Fail2ban能自动封禁多次尝试登录失败的IP。
启动它:

sudo systemctl start fail2ban
sudo systemctl enable fail2ban

避坑指南:新手最易翻车的三个点

  1. 修改SSH后自己连不上:永远要保留一个已登录的root窗口做“逃生通道”。改配置、重载服务后务必另开窗口测试,旧窗口不要关。
  2. 防火墙规则把管理端口堵死:如果启用了防火墙,一定要先放行新SSH端口再移除旧规则。否则防火墙生效时,你连进去的通道也会被切断。
  3. 忘记备份关键文件/etc/ssh/sshd_config/etc/fail2ban/jail.local 改前都备份一下,出错时能一键还原。

效果验证:怎么知道基线生效了?

  • root远程登录:用root用户尝试SSH连接,提示“Permission denied (publickey)”或直接被拒绝,表示禁用成功。
  • SSH端口:扫描你的服务器端口,22已关闭,22022开放。可用在线端口扫描工具或用命令 nmap -p 22,22022 你的服务器IP(需安装nmap)。
  • 防火墙规则sudo firewall-cmd --list-allsudo ufw status verbose 能看到只开放了必要的端口。
  • Fail2ban状态sudo fail2ban-client status 应显示 Status 为正常。可以查看 /var/log/fail2ban.log 确认有监控行为。
  • 系统更新yum check-updateapt list --upgradable 显示没有待更新的安全包。

结语

完成这套Linux服务器基线配置后,你的服务器已经从“裸奔”变成了“有盔甲”状态。
后续你可以根据业务需求继续加固(比如配置SELinux、审计日志、入侵检测等)。
如果你正在处理Linux服务器基线,建议先按本文步骤完整执行,再根据自己的环境做微调;
遇到异常时优先回看避坑和高频问题部分。
安全无小事,从基线开始,步步为营。

分享到:
上一篇
Linux漏洞修复教程:从零开始彻底更新系统
下一篇
Ubuntu 24.04运维新手实战:从基础配置到安全加固
1
系统公告

高考专属福利来袭|凭准考证免费领香港 CN2 云服务器

值高考落幕之际,泽御云开启考生专属回馈 + 产品限时特惠双重活动,助力学子暑期学习建站 高考 考生专属福利 全体应届高考生,凭高考准考证即可免费申领【香港 CN2 轻量云服务器,4 核 4G AMD 处理器】,免费使用周期 30 天,可用于搭建个人站点、编程实操、技术实训,祝各位考生金榜题名,前程似锦! 泽御云资质齐全合规自营机房,线路覆盖香港 CN2、国内 BGP、内蒙电信、美国精品线路,售后全天候技术支持。 官方网站:www.zeyuyun.com,活动限时有效,优惠逾期不再保留。
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意