CentOS入门宝典:从零到一构建你的Linux服务器帝国

目录

引言

一、CentOS简介与版本选择

[1.1 CentOS是什么?](#1.1 CentOS是什么?)

[1.2 版本选择](#1.2 版本选择)

二、安装CentOS

[2.1 准备安装介质](#2.1 准备安装介质)

[2.2 安装过程](#2.2 安装过程)

三、基础配置与优化

[3.1 更新系统](#3.1 更新系统)

[3.2 配置防火墙](#3.2 配置防火墙)

[3.3 配置SELinux](#3.3 配置SELinux)

[3.4 系统监控与日志](#3.4 系统监控与日志)

四、网络配置与管理

[4.1 配置静态IP](#4.1 配置静态IP)

[4.2 网络调试与诊断](#4.2 网络调试与诊断)

五、服务管理

六、文件系统与权限管理

[6.1 文件系统结构](#6.1 文件系统结构)

[6.2 文件权限与所有权](#6.2 文件权限与所有权)

七、软件包管理

[7.1 YUM/DNF](#7.1 YUM/DNF)

八、用户与组管理

九、安全加固


引言

在这个数字化时代,服务器作为支撑互联网应用与服务的基石,其重要性不言而喻。而CentOS,作为一款稳定、开源的Linux发行版,因其卓越的性能和广泛的应用场景,成为了众多开发者和系统管理员的首选。本文将带你深入CentOS的世界,从安装配置到日常运维,一步步打造你的Linux服务器帝国。

一、CentOS简介与版本选择

1.1 CentOS是什么?

CentOS(Community Enterprise Operating System)是一个基于Red Hat Enterprise Linux(RHEL)源代码的开源操作系统,由社区驱动维护。它继承了RHEL的稳定性和安全性,同时提供免费使用和自由修改的特性,广泛应用于企业级服务器、云计算平台和科学计算等领域。

1.2 版本选择

CentOS目前主要有两大分支:CentOS Stream和CentOS Linux(已停止更新,但旧版本仍被广泛使用)。对于初学者而言,推荐关注CentOS Stream,因为它代表了最新的技术和包更新,是RHEL未来的预览版。然而,为了稳定性和兼容性考虑,本文也会涉及CentOS 7/8(已停止更新,但教程具有参考价值)的内容。

二、安装CentOS

2.1 准备安装介质
  • 下载ISO镜像:访问CentOS官网下载对应版本的ISO镜像文件。
  • 制作启动盘:使用如Rufus(Windows)、Etcher(跨平台)等工具将ISO文件写入U盘或DVD。
2.2 安装过程
  1. 启动安装:将制作好的启动盘插入电脑,重启并选择从该设备启动。
  2. 语言选择:选择你的语言,然后点击"继续"。
  3. 安装信息配置
    • 时间和日期:设置正确的时区。
    • 键盘布局:根据你的键盘类型选择。
    • 安装源:确认或修改安装源(如网络安装或本地介质)。
    • 软件选择:初学者可选择"带GUI的服务器"或"最小安装",根据需要自定义安装的软件包。
    • 安装位置:选择磁盘并配置分区(建议使用LVM,便于管理)。
  4. 网络和主机名:配置网络连接和设置主机名。
  5. 开始安装:点击"开始安装",安装过程中可设置root密码和创建新用户。
  6. 重启并登录:安装完成后,重启系统并使用设置的用户名和密码登录。

三、基础配置与优化

3.1 更新系统

安装完成后,首先更新系统和所有已安装的包以获取最新的安全补丁和功能。

sudo yum update -y  # CentOS 7/8  
sudo dnf update -y  # CentOS Stream
3.2 配置防火墙

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

  • 启动防火墙

    sudo systemctl start firewalld  
    sudo systemctl enable firewalld
    
  • 开放端口

    sudo firewall-cmd --permanent --zone=public --add-port=80/tcp  
    sudo firewall-cmd --reload
    

    3.3 配置SELinux

  • SELinux(Security-Enhanced Linux)提供额外的安全层。

  • 查看SELinux状态

    getenforce
    
  • 临时关闭SELinux (不推荐长期关闭):

    sudo setenforce 0
    
  • 临时关闭SELinux (不推荐长期关闭):

    SELINUX=disabled
    
3.4 系统监控与日志
  • 查看系统日志 :使用journalctl(CentOS 7.x需安装systemd-journal包),dmesg等命令。
  • 安装监控工具 :如htopiftopnmon等,便于实时监控系统资源使用情况。

四、网络配置与管理

4.1 配置静态IP

编辑网络配置文件(以CentOS 7为例,CentOS 8及以后版本可能有所不同):

sudo vi /etc/sysconfig/network-scripts/ifcfg-ens192  # ens192为你的网络接口名

修改或添加以下内容:

BOOTPROTO=static  
ONBOOT=yes  
IPADDR=192.168.1.100  
NETMASK=255.255.255.0  
GATEWAY=192.168.1.1  
DNS1=8.8.8.8  
DNS2=8.8.4.4

重启网络服务:

sudo systemctl restart network
4.2 网络调试与诊断
  • ping命令:测试网络连接。
  • traceroute/tracepath:追踪数据包路由路径。
  • netstat/ss:查看网络连接、路由表、接口统计等信息。

五、服务管理

CentOS使用systemd作为初始化系统和系统服务管理器。

启动服务

sudo systemctl start <服务名>

停止服务

sudo systemctl stop <服务名>

设置服务开机自启

sudo systemctl enable <服务名>

禁止服务开机自启

sudo systemctl disable <服务名>

查看服务状态

sudo systemctl status <服务名>

六、文件系统与权限管理

6.1 文件系统结构
  • /:根目录,所有文件和目录的起点。
  • /bin:存放基本命令的二进制文件。
  • /etc:存放系统配置文件。
  • /home:普通用户的家目录。
  • /var:存放经常变化的文件,如日志文件。
6.2 文件权限与所有权
  • 查看权限 :使用ls -l命令。
  • 修改权限 :使用chmod命令。
  • 修改所有权 :使用chown命令。

七、软件包管理

7.1 YUM/DNF

搜索软件包

sudo yum search <关键字>  # CentOS 7  
sudo dnf search <关键字>  # CentOS Stream/8

安装软件包

sudo yum install <包名>  # CentOS 7  
sudo dnf install <包名>  # CentOS Stream/8

更新软件包

sudo yum update <包名>  # CentOS 7  
sudo dnf update <包名>  # CentOS Stream/8

卸载软件包

sudo yum remove <包名>  # CentOS 7  
sudo dnf remove <包名>  # CentOS Stream/8

八、用户与组管理

创建用户

sudo useradd <用户名>  
sudo passwd <用户名>  # 设置密码

创建组

sudo groupadd <组名>

添加用户到组

sudo usermod -aG <组名> <用户名>

九、安全加固

  • 使用强密码:定期更换用户密码,并确保密码复杂性。
  • 限制root登录:禁用root远程登录,使用sudo管理权限。
  • 安装安全更新:定期更新系统和软件包。
  • 配置SSH:禁用root登录,限制登录IP,使用密钥认证等。

【9月截稿 | 长篇优惠 | EI稳定】2024年计算机与信息安全国际会议(WCCIS 2024)_艾思科蓝_学术一站式服务平台

更多学术会议请看 学术会议-学术交流征稿-学术会议在线-艾思科蓝

相关推荐
ac.char6 小时前
在CentOS下安装RabbitMQ
linux·centos·rabbitmq
爱折腾的小码农11 小时前
记一次宝塔centos出现Failed to start crond.service: Unit crond.service not found.解决
python·centos·numpy
医学影像处理11 小时前
tmux旧版本配置鼠标滑动页面| tmux运行时如何让新的配置文件生效
centos·计算机外设·tmux
编程墨客12 小时前
第02章 CentOS基本操作
linux·运维·centos
谦谦均14 小时前
CentOS网络配置
linux·网络·centos
明明跟你说过15 小时前
【CentOS】中的Firewalld:全面介绍与实战应用(下)
linux·运维·centos·firewalld
这里是苏同学19 小时前
Linux操作系统之软件安装与包管理器工具
linux·运维·网络·centos·云计算
BillKu1 天前
Linux(CentOS)开放端口/关闭端口
linux·服务器·centos·端口
明明跟你说过1 天前
【CentOS】中的Firewalld:全面介绍与实战应用(上)
linux·运维·centos·firewall
J老熊2 天前
RabbitMQ 在 Linux CentOS 和 Docker 环境下的部署及分布式部署指南
linux·分布式·后端·docker·面试·centos·rabbitmq