本篇主要记录CentOS8的安装及配置过程。配置主要包括,IP地址设置,主机名设置,SSH配置及端口更改,YUM源更改,防火墙配置等。
下载CentOS8的ISO文件
我本次要安装的版本是CentOS 8.3.2011,已经不是最新版本了,查看国内的几个源,CentOS8的版本都到了8.5.2111,所以去年的版本就只能到CentOS的官方下载了,好在现在官方链接的下载速度也不慢。
如果熟悉官方网站的话,各个版本找起来就容易多了,我用的版本,官方链接我直接贴出来是:https://vault.centos.org/8.3.2011/isos/x86_64/CentOS-8.3.2011-x86_64-dvd1.iso,如果需要其他的版本,可以官网自行下载,官网地址为:https://vault.centos.org/。官方网站截屏如下:
主页下级路径就是各个版本号,需要各种版本都有保留。不过若是需要最新的版本,建议还是国内的源比较好点,毕竟速度更快。
不管是哪家的源,路径都是一样的。版本号下面选择isos目录,再下面x86_64目录,打开后截屏如下:
选择我框住的种子文件下载,用下载工具(如迅雷)打开种子文件下载即可。
ISO文件如何变成U盘启动安装,本公众号已有多篇文章介绍了多种方式,这里就不赘述了。
安装CentOS8
启动服务器,用刚刚下载的ISO文件做成的安装盘启动,会到安装提示界面如下:
直接选择第一项,安装CentOS Linux 8就可以了,默认是第二项测试介质并安装,多了个介质测试的步骤,咱刚刚做的新鲜介质,不用它再测试了,耽误时间。
启动过程一会后,到了选择安装语言界面。各人根据自己情况选择,小编这种英文很糟糕的,肯定是选中文-简体中文。
CentOS7之前的版本,安装向导会一项一项地带着用户设置的,后面的版本,设置就放在一个整体界面上了。上图就是一个安装设置界面,如果想熟悉的话,可以在这个界面各个按钮多试试。
如上图,我的选择列举如下:
本地化:
键盘布局---默认值未修改;
语言支持---除英文外,还增加简体中文的支持;
时区---亚洲上海,并修改成正确的时间;
软件:
安装源---默认值,本地介质,这个没啥说的;
软件选择---根据需要,一般选带GUI的服务器,不过我本次选的是最小安装,后期的应用用不上图形界面;
系统:
这个下面比较重要的就是系统分区,至于KDUMP、网络和主机名、安全策略都是进系统后再设置。
安装目的地这块,因为我的机器配置比较低,也比较常规,就选择了自动分区。单C4核,8G内存,60G的固态。
一般情况下手动修改分区有个建议方案:
(1)手动分成4个区,分别是/boot启动分区,/根分区,swap交换分区和/home用户数据分区,前面三个分区是系统必须的,/home可以不划分,如果不划分的话会自动从/根下面拿空间。
(2)/boot启动分区,划分个500MB容量,xfs文件系统,现在的空间比较大,不在乎那个0.5GB。
(3)swap分区,设置大小为机器内存容量的2倍大小。
(4)关于根分区和/home分区大小,根据用户自身习惯。我是将大部分空间分给/根分区的,/home分区给个几G,硬盘容量大的话给个几十G。
(5)最后一个分区,剩余容量不用计算,直接输入一个比较大的值,系统会计算剩余容量全部分给该分区的。
用户设置
我将root账号设置了一个密码,不创建新用户,各位根据需求设置。有一点提醒一下,root账户可以弱密码,两次完成按钮就可以了。
感觉比Windows原版安装做得还要简单,一个进度条之后就完成了。
CentOS网络配置
服务器的工作就是提供网络服务,所以网络配置比较重要。
通过上面的命令结果看到,本机只有一块物理网卡,命名为ens160,网卡已经通过网线接上了。不过这个时候网络肯定是不通的,因为没有配置,计划配置IP地址为192.168.28.132/24,网关192.168.28.2,主机名LAMP。
ls /etc/sysconfig/network-scripts/
ifcfg-ens160
cat /etc/sysconfig/network-scripts/ifcfg-ens160
TYPE=EthernetBOOTPROTO=staticDEFROUTE=yesIPV4_FAILURE_FATAL=noDEVICE=ens160ONBOOT=yesIPADDR=192.168.28.132NETMASK=255.255.255.0GATEWAY=192.168.28.2
IP地址通过上面的配置文件更改就可以了,再查看下主机名并修改:
hostnamectl
Static hostname: localhost.localdomain Icon name: computer-vm Chassis: vm Machine ID: 22008940b19a4edf8226cb350aa411ce Boot ID: b25d45d93e7849ac8f4d3ac60692b690 Virtualization: vmware Operating System: CentOS Linux 8 CPE OS Name: cpe:/o:centos:centos:8 Kernel: Linux 4.18.0-240.el8.x86_64 Architecture: x86-64
hostnamectl set-hostname LAMPcat /etc/hosts
127.0.0.1 LAMP
再查看下SSH服务状态,更改SSH服务端口:
systemctl status sshd
● sshd.service - OpenSSH server daemon Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled; vendor preset> Active: active (running) since Sun 2022-12-18 13:36:53 CST; 3h 27min ago Docs: man:sshd(8) man:sshd_config(5) Main PID: 1010 (sshd) Tasks: 1 (limit: 49294) Memory: 5.3M CGroup: /system.slice/sshd.service └─1010 /usr/sbin/sshd -D -oCiphers=aes256-gcm@openssh.com,chacha20-p>12月 18 13:36:53 localhost.localdomain systemd[1]: Starting OpenSSH server daem>12月 18 13:36:53 localhost.localdomain sshd[1010]: Server listening on 0.0.0.0 >12月 18 13:36:53 localhost.localdomain sshd[1010]: Server listening on :: port >12月 18 13:36:53 localhost.localdomain systemd[1]: Started OpenSSH server daemo>12月 18 16:53:40 localhost.localdomain sshd[1946]: Accepted password for root f>12月 18 16:53:40 localhost.localdomain sshd[1946]: pam_unix(sshd:session): sess>
在配置文件中加一条Port 1225,将SSH的端口号指定成1225。
查看SELINUX状态,设置禁用并关闭
sestatus
SELinux status: enabledSELinuxfs mount: /sys/fs/selinuxSELinux root directory: /etc/selinuxLoaded policy name: targetedCurrent mode: enforcingMode from config file: enforcingPolicy MLS status: enabledPolicy deny_unknown status: allowedMemory protection checking: actual (secure)Max kernel policy version: 32[root@localhost ~]# vi /etc/sysconfig/selinux[root@localhost ~]# cat /etc/sysconfig/selinux# This file controls the state of SELinux on the system.# SELINUX= can take one of these three values:# enforcing - SELinux security policy is enforced.# permissive - SELinux prints warnings instead of enforcing.# disabled - No SELinux policy is loaded.SELINUX=disabled# SELINUXTYPE= can take one of these three values:# targeted - Targeted processes are protected,# minimum - Modification of targeted policy. Only selected processes are protected.# mls - Multi Level Security protection.SELINUXTYPE=targeted
将配置文件中修改为SELINUX=disabled。
查看防火墙状态,增加SSH端口
systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor pres> Active: active (running) since Sun 2022-12-18 13:36:53 CST; 3h 42min ago Docs: man:firewalld(1) Main PID: 967 (firewalld) Tasks: 2 (limit: 49294) Memory: 39.2M CGroup: /system.slice/firewalld.service └─967 /usr/libexec/platform-python -s /usr/sbin/firewalld --nofork --no>12月 18 13:36:52 localhost.localdomain systemd[1]: Starting firewalld - dynamic fi>12月 18 13:36:53 localhost.localdomain systemd[1]: Started firewalld - dynamic fir>12月 18 13:36:53 localhost.localdomain firewalld[967]: WARNING: AllowZoneDrifting >
firewall-cmd --list-port
firewall-cmd --zone=public --add-port=1225/tcp --permanent
success
systemctl restart firewalldfirewall-cmd --list-port
1225/tcp
系统参数检查
设置完成后,重新启动服务器,启动完成后一项项验证设置是否正确:
首先已经看到主机名修改完成了。
通过ip address命令查看网络配置正常。
查看SELINUX已经关闭。
查看监听端口为1225,SSH端口更改完成。
防火墙端口增加完成。
后面就可以通过ssh工具对服务器进行设置了,包括应用软件的安装等。