CentOS 7服务器初始化全攻略:从基础配置到安全加固
在搭建服务器的过程中,初始化配置是奠定稳定运行和安全防护的基础。无论是用于生产环境还是测试场景,一套规范的初始化流程都能帮你避免后续诸多麻烦。本文将详细介绍CentOS 7服务器的初始化步骤,从源配置到防火墙加固,带你一步步完成服务器的"初始化体检"。
一、配置国内Yum源:加速软件安装
CentOS默认的官方软件源位于国外,下载速度较慢且不稳定。将其替换为国内源(如阿里云、清华源),能显著提升软件安装和更新效率。
操作步骤:
-
备份原有源文件(以防配置出错时恢复):
-
-
下载国内源文件(推荐阿里云,速度快且稳定):
下载成功 -
配置EPEL源(提供额外的开源软件包):
sudo yum install -y epel-release
sudo sed -e 's|^metalink=|#metalink=|g' \-e 's|^#baseurl=|baseurl=|g' \-e 's|^//download.fedoraproject.org/pub|//mirrors.aliyun.com|g' \-e 's|http://download.example|https://mirrors.aliyun.com|g' \-i /etc/yum.repos.d/epel.repo /etc/yum.repos.d/epel-testing.repo
- 刷新缓存(使新源生效):
sudo yum clean all
sudo yum makecache
二、更新系统与安装必备工具
系统更新能获取最新安全补丁,而常用工具则是后续管理和开发的基础。
操作步骤:
- 更新系统(内核更新需重启生效):
sudo yum update -y
- 安装常用工具集(涵盖编辑、网络、监控等场景):
sudo yum install -y \vim-enhanced \ # 增强版文本编辑器wget \ # 命令行下载工具curl \ # 网络数据传输工具telnet \ # 网络诊断工具net-tools \ # 包含ifconfig等网络工具bash-completion \ # 命令自动补全lsof \ # 查看打开的文件sysstat \ # 系统性能监控(iostat、sar等)htop \ # 交互式进程管理器tree \ # 树状目录展示git \ # 版本控制工具unzip \ # 解压zip文件lrzsz # 终端文件传输(sz/rz命令)
若需开发环境,可额外安装:
sudo yum groupinstall -y "Development Tools"
三、网络连接验证:确保基础通信正常
网络是服务器与外界交互的基础,初始化阶段需确认网络通畅。
操作步骤:
- 查看IP地址(确认网络接口已启动):
ip addr show # 或 ifconfig
- 测试DNS解析(检查域名解析是否正常):
ping -c 4 www.baidu.com # 发送4个ICMP包测试
- 测试外网访问(排除DNS问题,直接通过IP测试):
ping -c 4 114.114.114.114 # 国内常用DNS服务器IP
若无法上网,需检查网络配置文件:
cat /etc/sysconfig/network-scripts/ifcfg-eth0
(网卡名可能为ens33等,需根据实际情况调整)
四、配置主机名:便于识别与管理
默认主机名通常无意义,自定义主机名能更清晰地标识服务器角色(如web服务器、数据库服务器)。
操作步骤:
- 查看当前主机名:
hostname
- 设置新主机名(以
yufei
为例):
sudo hostnamectl set-hostname yufei
- 配置本地解析(避免部分软件因主机名无法解析报错):
sudo vim /etc/hosts # 在文件末尾添加一行
# 示例:127.0.0.1 yufei
五、同步时间:保障系统时间准确性
服务器时间不准确可能导致日志混乱、证书验证失败等问题,需配置自动时间同步。
操作步骤:
- 安装chrony服务(CentOS 7推荐的时间同步工具):
sudo yum install -y chrony
- 启动并设置开机自启:
sudo systemctl start chronyd
sudo systemctl enable chronyd
- 强制立即同步时间:
sudo chronyc -a makestep
时间同步成功
- 验证时间同步状态:
sudo chronyc sources -v # 查看同步源状态
date # 查看当前系统时间
六、配置防火墙:筑牢服务器安全防线
防火墙是服务器的第一道安全屏障,需遵循"最小权限"原则,仅开放必要端口。CentOS 7提供两种防火墙配置方式,可根据需求选择。
6.1 使用iptables配置防火墙
iptables是经典的防火墙工具,适合需要精细控制规则的场景。
配置思路:
- 关闭默认的firewalld,改用iptables
- 设置默认策略为"拒绝入站、允许出站"
- 开放必要端口(如SSH、HTTP等)
- 保存规则并设置开机自启
详细步骤:
- 停止并禁用firewalld:
sudo systemctl stop firewalld
sudo systemctl disable firewalld
- 安装iptables服务:
sudo yum install -y iptables-services
sudo systemctl start iptables
sudo systemctl enable iptables
- 设置默认策略与基础规则(重要:先确保SSH端口开放,避免远程连接断开):
# 设置默认策略:拒绝入站和转发,允许出站
sudo iptables -P INPUT DROP
sudo iptables -P FORWARD DROP
sudo iptables -P OUTPUT ACCEPT
# 允许本地回环接口通信(系统内部必要)
sudo iptables -A INPUT -i lo -j ACCEPT
# 允许已建立的连接及相关流量(保证对外请求的响应能正常进入)
sudo iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
- 开放必要端口:
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT # SSH(远程管理必备)
sudo iptables -A INPUT -p icmp -j ACCEPT # 允许PING(便于网络诊断)
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT # HTTP(Web服务)
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT # HTTPS(加密Web服务)
# 如需其他端口(如MySQL 3306),可添加:sudo iptables -A INPUT -p tcp --dport 3306 -j ACCEPT
- 保存规则并生效:
sudo service iptables save # 保存规则到配置文件
sudo systemctl restart iptables # 重启服务
- 验证配置:
sudo iptables -L -v -n --line-numbers # 查看规则及行号(便于修改)
总结
完成以上步骤后,你的CentOS 7服务器已具备基本的稳定性和安全性。建议最后执行sudo reboot
重启服务器,确保所有配置(如内核更新、主机名)完全生效。
服务器初始化是系统运维的基础,合理的配置不仅能提升效率,更能减少后续故障和安全风险。根据实际业务需求,你还可以进一步优化(如配置SSH密钥登录、关闭不必要的服务等),为服务器构建更坚实的运行环境。