从零开始在CentOS上搭建服务器是一个涉及多个步骤的过程,以下是一个详细的指南:
准备工作
- 购买服务器:选择一台服务器并确保可以远程连接(如通过SSH)。
- 下载CentOS镜像:访问CentOS官网或其他镜像站点,下载所需版本的CentOS ISO镜像文件。
- 准备启动介质:可以使用光盘、U盘或通过网络引导进行安装。推荐使用U盘,因为它速度更快且更便携。可以使用工具如Rufus或Etcher制作启动U盘。
安装CentOS
- 设置BIOS/UEFI:将制作好的启动U盘插入服务器,开机并进入BIOS/UEFI设置界面(通常通过按F2、Del、F10等键进入),将U盘设置为第一启动项,保存设置并退出。
- 启动安装程序:服务器重启后,会自动从U盘启动,进入CentOS安装界面,选择“Install CentOS”(或相应版本),按回车键继续。
- 安装设置:
- 语言与键盘布局:选择安装语言(通常为English),并设置键盘布局(如US)。
- 磁盘分区:选择“Disk Partitioning”进行磁盘分区,可以选择自动分区或手动分区。对于初学者,建议选择自动分区,系统会自动创建必要的分区。
- 网络配置:选择“Network & Host Name”进行网络配置,设置主机名(hostname)和网络接口(如eth0),并根据需要配置静态IP地址或动态获取IP地址。
- 软件选择:根据需求选择安装的软件包,最小化安装只包含基本的系统组件,而GUI服务器则包括图形界面和常用软件。
- 用户设置:设置root用户的密码,并创建一个普通用户(如admin),为了方便管理,可以将普通用户加入sudoers组。
安装后的配置
- 更新系统:重启后,以root用户登录系统,执行以下命令更新系统到最新版本:
sudo yum update
- 配置网络:
- 编辑网络配置文件:
sudo vi /etc/sysconfig/network-scripts/ifcfg-eth0
- 设置IP地址、网关等网络参数。例如:
DEVICE=eth0 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
- 编辑网络配置文件:
- 安装和配置基本服务:
- 安装Web服务器(如Apache或Nginx):
sudo yum install -y httpd
- 安装数据库服务器(如MySQL或MariaDB):
sudo yum install -y mariadb-server
- 配置和启动服务:
sudo systemctl enable httpd sudo systemctl start httpd sudo systemctl enable mariadb sudo systemctl start mariadb
- 安装Web服务器(如Apache或Nginx):
- 安全设置:
- 配置防火墙:
sudo firewall-cmd --zone=public --add-port=80/tcp --permanent sudo firewall-cmd --reload
- 禁用不必要的超级用户:
cat /etc/passwd | awk -F: '{print $1}' | grep -v '^root$' | xargs -n1 passwd -dl
- 强化用户口令:修改
/etc/login.defs
文件以强制执行复杂的口令要求。 - 保护口令文件:使用
chattr
命令给/etc/passwd
,/etc/shadow
,/etc/group
, 和/etc/gshadow
文件加上不可更改属性。 - 设置root账户自动注销时限:修改
/etc/profile
文件中的TMOUT
参数。 - 限制su命令:编辑
/etc/pam.d/su
文件,限制只有特定组的用户才能使用su
命令切换到root。 - 防止登录时显示系统信息:避免在登录时显示系统和版本信息。
- 限制NFS网络访问:确保
/etc/exports
文件具有最严格的访问权限设置。 - 防止IP欺骗和DoS攻击:编辑
host.conf
文件和设置资源限制。
- 配置防火墙:
通过以上步骤,你可以从零开始在CentOS上搭建一个稳定且安全的服务器环境。每个步骤都详细解释了操作方法和注意事项,方便读者理解和操作。