当前位置: 首页 > news >正文

CentOS 7服务器初始化全攻略:从基础配置到安全加固

在搭建服务器的过程中,初始化配置是奠定稳定运行和安全防护的基础。无论是用于生产环境还是测试场景,一套规范的初始化流程都能帮你避免后续诸多麻烦。本文将详细介绍CentOS 7服务器的初始化步骤,从源配置到防火墙加固,带你一步步完成服务器的"初始化体检"。

一、配置国内Yum源:加速软件安装

CentOS默认的官方软件源位于国外,下载速度较慢且不稳定。将其替换为国内源(如阿里云、清华源),能显著提升软件安装和更新效率。

操作步骤:

  1. 备份原有源文件(以防配置出错时恢复):

  2. 在这里插入图片描述

  3. 下载国内源文件(推荐阿里云,速度快且稳定):
    在这里插入图片描述
    下载成功

  4. 配置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
  1. 刷新缓存(使新源生效):
sudo yum clean all
sudo yum makecache

在这里插入图片描述

二、更新系统与安装必备工具

系统更新能获取最新安全补丁,而常用工具则是后续管理和开发的基础。

操作步骤:

  1. 更新系统(内核更新需重启生效):
sudo yum update -y
  1. 安装常用工具集(涵盖编辑、网络、监控等场景):
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"

三、网络连接验证:确保基础通信正常

网络是服务器与外界交互的基础,初始化阶段需确认网络通畅。

操作步骤:

  1. 查看IP地址(确认网络接口已启动):
ip addr show  # 或 ifconfig

在这里插入图片描述

  1. 测试DNS解析(检查域名解析是否正常):
ping -c 4 www.baidu.com  # 发送4个ICMP包测试

在这里插入图片描述

  1. 测试外网访问(排除DNS问题,直接通过IP测试):
ping -c 4 114.114.114.114  # 国内常用DNS服务器IP

在这里插入图片描述

若无法上网,需检查网络配置文件:cat /etc/sysconfig/network-scripts/ifcfg-eth0(网卡名可能为ens33等,需根据实际情况调整)

四、配置主机名:便于识别与管理

默认主机名通常无意义,自定义主机名能更清晰地标识服务器角色(如web服务器、数据库服务器)。

操作步骤:

  1. 查看当前主机名
hostname
  1. 设置新主机名(以yufei为例):
sudo hostnamectl set-hostname yufei

在这里插入图片描述

  1. 配置本地解析(避免部分软件因主机名无法解析报错):
sudo vim /etc/hosts  # 在文件末尾添加一行
# 示例:127.0.0.1 yufei

在这里插入图片描述

五、同步时间:保障系统时间准确性

服务器时间不准确可能导致日志混乱、证书验证失败等问题,需配置自动时间同步。

操作步骤:

  1. 安装chrony服务(CentOS 7推荐的时间同步工具):
sudo yum install -y chrony

在这里插入图片描述

  1. 启动并设置开机自启
sudo systemctl start chronyd
sudo systemctl enable chronyd

在这里插入图片描述

  1. 强制立即同步时间
sudo chronyc -a makestep

在这里插入图片描述
在这里插入图片描述
时间同步成功

  1. 验证时间同步状态
sudo chronyc sources -v  # 查看同步源状态
date  # 查看当前系统时间

在这里插入图片描述

六、配置防火墙:筑牢服务器安全防线

防火墙是服务器的第一道安全屏障,需遵循"最小权限"原则,仅开放必要端口。CentOS 7提供两种防火墙配置方式,可根据需求选择。

6.1 使用iptables配置防火墙

iptables是经典的防火墙工具,适合需要精细控制规则的场景。

配置思路:
  • 关闭默认的firewalld,改用iptables
  • 设置默认策略为"拒绝入站、允许出站"
  • 开放必要端口(如SSH、HTTP等)
  • 保存规则并设置开机自启
详细步骤:
  1. 停止并禁用firewalld
sudo systemctl stop firewalld
sudo systemctl disable firewalld

在这里插入图片描述

  1. 安装iptables服务
sudo yum install -y iptables-services
sudo systemctl start iptables
sudo systemctl enable iptables

在这里插入图片描述
在这里插入图片描述

  1. 设置默认策略与基础规则(重要:先确保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

在这里插入图片描述

  1. 开放必要端口
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

在这里插入图片描述

  1. 保存规则并生效
sudo service iptables save  # 保存规则到配置文件
sudo systemctl restart iptables  # 重启服务

在这里插入图片描述

  1. 验证配置
sudo iptables -L -v -n --line-numbers  # 查看规则及行号(便于修改)

在这里插入图片描述

总结

完成以上步骤后,你的CentOS 7服务器已具备基本的稳定性和安全性。建议最后执行sudo reboot重启服务器,确保所有配置(如内核更新、主机名)完全生效。

服务器初始化是系统运维的基础,合理的配置不仅能提升效率,更能减少后续故障和安全风险。根据实际业务需求,你还可以进一步优化(如配置SSH密钥登录、关闭不必要的服务等),为服务器构建更坚实的运行环境。

http://www.dtcms.com/a/351173.html

相关文章:

  • AI应用--接口测试篇
  • Maya绑定基础:驱动关键帧的使用
  • C# .NET支持多线程并发的压缩组件
  • 视频创作者如何用高级数据分析功能精准优化视频策略
  • 红色文化与前沿科技的融合:VR呈现飞夺泸定桥的震撼历史场景​
  • LWIP协议栈
  • Java项目-苍穹外卖_Day3-Day4
  • MyBatis-Flex:一个支持关联查询的MyBatis
  • android vehicle
  • SOME/IP-SD协议含配置选项键值信息的报文示例解析
  • 贝叶斯优化提升化学合成反应效率(附源码)
  • 如何将数据从vivo手机传输到另一部vivo手机
  • 《高并发场景下数据一致性隐疾的实战复盘》
  • Coze Studio开源版:AI Agent开发平台的深度技术解析- 入门篇
  • 深度学习篇---LeNet-5网络结构
  • iOS 开发中的 UIStackView 使用详解
  • Linux-服务器初始化
  • RHEL8.6环境下批量验证服务器凭据并配置Ansible免密管理全流程
  • 用wp_trim_words函数实现WordPress截断部分内容并保持英文单词完整性
  • Ansible 文件管理与 Jinja2 模板全解析:从模块应用到动态配置生成
  • Ansible核心技巧:循环条件与错误处理
  • nginx代理 flink Dashboard、sentinel dashboard的问题
  • HarmonyOS之深入了解装饰器
  • 服务器初始化流程***
  • Rust 符号体系全解析:分类、应用与设计意图
  • CentOS 7 升级 OpenSSL 3.5.1 的详细教程
  • 【Linux】Socket编程——TCP版
  • 【Python】shutil.make_archive() 方法详解
  • 支持向量机(SVM)核心原理与应用解析
  • SOME/IP-SD规范中,对 服务(Service) 和 实例(Instance)的理解