本地化部署服务器时,选择CentOS作为操作系统是一个常见的选择。下面以CentOS为例,详细介绍如何进行服务器的本地化部署和配置。
1. 准备工作
- 硬件需求:确保服务器的硬件符合部署需求,CPU、内存和存储应根据预期的工作负载进行适配。
- 安装介质:下载CentOS的ISO镜像(如CentOS Stream或CentOS 7/8),并准备一个启动U盘。
2. 操作系统安装
步骤:
-
制作启动盘:将CentOS的ISO镜像制作成可引导的USB启动盘,可以使用Rufus或Balena Etcher等工具。
-
启动服务器:插入USB启动盘,并从BIOS或UEFI界面设置服务器从USB启动,进入CentOS安装程序。
-
选择安装语言:选择适合的语言和键盘布局,通常选择英文或你所需的语言。
-
磁盘分区:
- 可以选择自动分区或手动分区。建议手动分区以获得更多控制权。
- 一般建议的分区布局为:
/boot
(引导分区):500MB,用于存放启动文件。/
(根分区):用于操作系统,建议分配至少20GB空间。swap
(交换分区):建议分配为物理内存的1-2倍,确保系统性能。/var
(日志分区):如果有大日志需求,建议单独分区,用于存储日志文件。/home
(用户目录):可以根据需求划分,用于用户数据存储。
-
网络配置:
- 一般来说,生产服务器使用静态IP地址。可以在安装过程中配置,也可以稍后手动配置。
-
设置主机名和时区:设置主机名、时区和网络时间协议(NTP)以确保服务器时间准确。
-
选择软件包:在安装过程中,可以选择最小化安装(Minimal Install),这样可以保持服务器轻量且安装基本工具。
-
创建用户:创建管理员用户(非root),并设置密码。
-
完成安装并重启:安装完成后,拔出U盘,重启进入CentOS系统。
3. 网络配置
网络配置对于服务器的稳定运行至关重要。CentOS 7/8 使用 nmcli
工具进行网络管理,或者直接编辑配置文件。
配置静态IP地址:
-
查找网卡名称: 使用命令查看网卡名称:
ip a
网卡名称可能为
ens33
、eth0
等。 -
编辑网络配置文件: 打开并编辑网络配置文件
/etc/sysconfig/network-scripts/ifcfg-ens33
(假设网卡名为ens33
):vi /etc/sysconfig/network-scripts/ifcfg-ens33
配置静态IP的内容如下:
TYPE=Ethernet BOOTPROTO=static NAME=ens33 DEVICE=ens33 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. 基础环境配置
-
更新系统: 在完成安装后,更新系统至最新版本:
sudo yum update -y
-
安装必备工具: 安装一些常用工具:
sudo yum install wget curl vim net-tools -y
5. SSH服务配置
-
安装并启用SSH服务: CentOS通常默认安装了SSH服务,但需要确保其启动:
sudo yum install openssh-server -y sudo systemctl start sshd sudo systemctl enable sshd
-
配置SSH安全性:
- 修改SSH配置文件
/etc/ssh/sshd_config
,关闭root用户登录,改为密钥登录以提高安全性。
PermitRootLogin no
- 允许指定用户通过SSH登录:
AllowUsers your_username
- 修改SSH配置文件
-
重启SSH服务:
sudo systemctl restart sshd
6. 防火墙配置
CentOS使用 firewalld
来管理防火墙规则。
- 启用防火墙并打开必要端口:
- 开启防火墙:
sudo systemctl start firewalld sudo systemctl enable firewalld
- 打开SSH、HTTP、HTTPS端口:
sudo firewall-cmd --permanent --add-service=ssh sudo firewall-cmd --permanent --add-service=http sudo firewall-cmd --permanent --add-service=https sudo firewall-cmd --reload
- 开启防火墙:
7. 软件安装与配置
根据服务器的实际用途安装相关的软件和服务。
-
安装Nginx(作为Web服务器):
- 安装EPEL仓库:
sudo yum install epel-release -y
- 安装Nginx:
sudo yum install nginx -y sudo systemctl start nginx sudo systemctl enable nginx
- 安装EPEL仓库:
-
安装MariaDB(数据库):
- 安装MariaDB:
sudo yum install mariadb-server -y sudo systemctl start mariadb sudo systemctl enable mariadb
- 配置MariaDB的安全性:
sudo mysql_secure_installation
- 安装MariaDB:
-
安装PHP:
- 安装PHP及其必要模块:
sudo yum install php php-fpm php-mysql -y
- 重启Nginx以启用PHP:
sudo systemctl restart nginx
- 安装PHP及其必要模块:
8. 安全加固
-
设置用户和权限管理:
- 禁止root直接登录,使用
sudo
命令执行管理员操作。
- 禁止root直接登录,使用
-
启用SELinux:
- 确保SELinux启用以增加系统安全性,可以使用命令
getenforce
检查其状态。
- 确保SELinux启用以增加系统安全性,可以使用命令
-
启用自动更新:
- 安装
yum-cron
以启用安全补丁的自动更新:sudo yum install yum-cron -y sudo systemctl start yum-cron sudo systemctl enable yum-cron
- 安装
9. 监控与备份
-
安装系统监控工具:
- 安装如
htop
、vnstat
等监控工具监控系统资源使用情况:sudo yum install htop vnstat -y
- 安装如
-
定期备份:
- 使用
rsync
和cron
配置自动备份任务,将重要数据定期备份到本地或远程服务器。
- 使用
总结
通过上述步骤,可以在本地部署并配置一个CentOS服务器。根据实际需要,还可以根据应用环境进一步优化性能和安全性,如数据库优化、缓存配置等。这些配置确保服务器在本地部署后能够高效、安全地运行。