三亩地 三亩地SAN MU DI · CODE DIARY
ARTICLE DETAIL

日记详情

真实记录编程学习的某一天,欢迎挑你感兴趣的翻一翻。

拿到一台新 Linux 服务器:标准初始化与安全加固全流程

拿到一台新 Linux 服务器:标准初始化与安全加固全流程

一、新服务器接手的整体思路

初始化 → 加固 → 规范 → 监控 → 上线

拆成 6 个阶段:

  1. 基础检查(是不是“能用的机器”)
  2. 系统初始化(让系统“好用”)
  3. 安全加固(让系统“敢用”)
  4. 运维规范(让系统“好管”)
  5. 监控与备份(让系统“可控”)
  6. 部署业务(让系统“上线跑”)

二、第一步:基础检查

1)确认系统和版本

cat /etc/os-release uname -r hostname

检查:

  • 发行版(Ubuntu / CentOS / Rocky)
  • 内核版本
  • 主机名是否规范

2)硬件资源检查

lscpu free -h df -h lsblk

重点确认:

  • CPU 核数是否符合购买规格
  • 内存是否完整
  • 磁盘是否挂载、容量是否正确

3)网络是否正常

ip a ip r ping 8.8.8.8 ping 内网IP

确认:

  • IP / 网关 / DNS 正确
  • 外网 / 内网是否可达

三、第二步:系统初始化(高频操作)

1)修改主机名

hostnamectl set-hostname web-01

2)配置时区和时间同步

timedatectl set-timezone Asia/Shanghai timedatectl set-ntp true

时间不准 → 日志、证书、监控全乱。


3)更新系统

# Ubuntu apt update && apt upgrade -y # CentOS/Rocky yum update -y

4)安装基础工具

apt install -y vim curl wget net-tools lsof htop unzip

四、第三步:安全加固

1)创建普通用户,禁止直接 root 登录

useradd ops passwd ops usermod -aG sudo ops # Ubuntu

2)SSH 安全加固

编辑/etc/ssh/sshd_config

PermitRootLogin no PasswordAuthentication no Port 2222
systemctl restart sshd

改端口 + 禁 root + 禁密码是标配。


3)防火墙配置(最小化原则)

# Ubuntu ufw allow 2222 ufw allow 80 ufw allow 443 ufw enable

4)SELinux(有就确认状态)

getenforce
  • 生产常见:Enforcing
  • 测试环境:Permissive

五、第四步:运维规范

1)目录规划

/opt 第三方软件 /data 业务数据 /logs 业务日志 /backup 备份

2)日志策略(防止磁盘爆)

logrotate -d /etc/logrotate.conf

必要时为业务单独配置。


3)系统参数优化(示例)

vim /etc/sysctl.conf

常见的有文件句柄数,网络连接数


六、第五步:监控与备份(真正的运维)

1)监控(至少三样)

  • CPU
  • 内存
  • 磁盘
  • 进程存活

常见方案:

  • Zabbix
  • Prometheus + Grafana
  • 云厂商监控

2)备份策略(必须想清楚)

备什么:数据库 / 配置 / 业务数据 怎么备:全量 / 增量 放哪:异地 / 对象存储 多久:7天 / 30天

七、第六步:部署业务与验证

1)安装运行环境

  • Nginx
  • Java / Python / Node
  • Docker / Kubernetes

2)健康检查

curl localhost ss -lntp systemctl status nginx

3)压测 & 回滚预案

  • 服务是否能重启
  • 磁盘满了怎么办
  • 端口冲突如何处理

八、总结

拿到一台新服务器,

通常会先进行系统和资源检查,确认CPU、内存、磁盘和网络是否正常;

然后完成系统初始化,包括更新系统、配置时间同步、安装常用工具

接着进行安全加固,例如创建普通用户、加固 SSH、配置防火墙。

之后会规范目录结构、日志和系统参数,并接入监控和备份系统。

最后部署业务服务,进行健康检查确认服务器可以稳定运行。

← 返回列表