安装CentOS时需要进行初始配置。
出版日期:2020年12月8日。
INFOMARTION > 安装CentOS时需要进行初始配置。
概述。
本节介绍安装CentOS后的第一个必要设置。 它是用CentOS 7.6(1810)构建的。
目录
1. 基本设置
本节介绍了安装CentOS后需要立即进行的基本设置。
1-1. 检查操作系统
首先,检查你是否安装了正确的操作系统。
[root@hostname ~]# cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)
CentOS Linux release 7.6.1810 (Core)" 是已安装的操作系统。 检查它是否正确。
1-2. 安装工具
安装后,诸如ifconfig等基本命令不能立即执行。 因此,进行安装时,基本的网络和其他命令可以由yum命令来执行。
如果有必要,请进行这项工作,因为可以用 "yum -y update "对已经安装的东西进行更新。
[root@hostname ~]# yum install -y net-tools
[root@hostname ~]# yum install -y wget
[root@hostname ~]# yum install -y tcpdump
[root@hostname ~]# yum install -y traceroute
net-tools・・・安装后可以使用ifconifg命令和其他命令。
wget・・・从字面上看,但可以使用wget命令。 简而言之,该命令发送了一个http请求。
tcpdump・・・从字面上看,但可以使用tcpdump命令。 简而言之,它可以监控发送到服务器的请求。
traceroute・・・从字面上看,但可以使用traceroute命令。 简而言之,它显示目的地IP的路线。
1-3. 禁用selinux
禁用selinux,因为它被启用后可能会有意外的表现。
首先,selinux是一个与安全有关的设置。 如果你能够使用它,你可以启用它,但如果它很困难,就禁用它。 禁用selinux并不一定会使安全受到影响。如果启用它,更有可能造成问题,尽管我个人对它不甚了解。 简单的解释是,selinux是在服务器被攻破后的安全措施(配置为在被攻破的情况下将损失降到最低),所以采取安全措施防止服务器被攻破反而更重要。
以下是停用的步骤。
[username@hostname ~]$ getenforce
Disabled
如果不是 "禁用",可以通过以下程序进行更改。
[username@hostname ~]$ vi /etc/selinux/config
SELINUX=enforcing
SELINUX=disabled
'SELINUX'和'SELINUXTYPE',但需要改变的是'SELINUX'。 注意,如果你错误地改变了 "SELINUXTYPE",服务器将无法启动。
重新启动服务器,配置将生效。
1-4. 额外的业务用户
以根用户身份登录和工作是很危险的,所以要添加一个用户来登录。 在随后的步骤中,禁止根用户登录。
以根用户身份登录工作的风险是,你可以做任何你想做的事情。 能够做任何事情的风险是,你可能不小心改变或删除与操作系统有关的重要变化。 如果你使用服务器是为了个人用途,比如爱好或学习,而且你不犯这种普通的错误,我个人认为以root用户身份登录没有任何问题。 不允许根用户登录的首要原因是权力的分离。 应用开发团队使用只接触目录的用户进行应用开发。 批量开发团队使用的用户只接触批量开发目录。 最好将用户分开,以便必要的团队能够接触到必要的目录,例如
以下是添加用户的步骤。
[root@hostname ~]# useradd xxxxxx
[root@hostname ~]# passwd xxxxxx
※xxxxxxxx是要添加的用户的名字。 设置任何密码。
1-5. 更改根用户密码
如果你不是根用户,用su-切换到根用户,并执行以下命令
[username@hostname ~]$ su -
[root@hostname ~]# passwd
※设置任何密码。
千万不要退出初始密码。 密码 "root "是最糟糕的。 密码 "password "和 "1234 "也相当危险。 至少有八位数字,包括字母数字符号,是好的。
这个密码设置对安全措施相当重要,应以最谨慎的方式设置。 更改根用户的密码是相当基本的,但要注意,我们已经听到了许多因此而引起的安全事件的故事。 不要以为你的服务器规模小,就没有人会攻击你的服务器。 攻击者以用户名 "root "和密码 "root "访问一个随机服务器。
1-6. 禁止非操作性用户登录的配置(禁止根用户和其他用户的登录)。
限制可以登录的用户数量。 特别是,根用户不应该被允许登录。 如果你以root身份登录,等于所有安全措施都被禁用。
下面是禁用根用户登录和添加可以登录的用户的步骤。 切换到根用户,然后修改配置文件。 (可以用'su-'切换到根用户,只是不能登录)。
[username@hostname ~]$ su -
[root@hostname ~]# vi /etc/ssh/sshd_config
#LoginGraceTime 2m
#PermitRootLogin yes
#StrictModes yes
#MaxAuthTries 6
#MaxSessions 10
#LoginGraceTime 2m
PermitRootLogin no
AllowUsers xxxxxx
#StrictModes yes
#MaxAuthTries 6
#MaxSessions 10
※xxxxxxxx是你刚刚添加的操作用户名。
这里要注意的一点是,如果AllowUsers的名字不对,就没有人能够登录,所以要仔细检查用户名。
检查语法并重新启动sshd。
[root@hostname ~]# /usr/sbin/sshd -t
[root@hostname ~]# systemctl restart sshd
一旦你注销并确认你不能以root身份登录,而你可以以添加的操作用户身份登录,你就完成了。
1-7. 时间同步
检查时间是否同步。 有时,服务器的时间不同步,所以日志输出的日期和时间与预期的不同,需要很长的时间来分析这个问题。
检查时间同步进程的启动情况(chronyd)。 检查时间同步状态。 注意,CentOS7是'chronyd',但更早的是'ntpd',所以如果你是在6或更早的版本,要小心。
[root@hostname ~]# ps aux | grep chronyd
chrony 567 0.0 1.3 117804 13664 ? SL 5月04 0:04 /usr/sbin/chronyd
root 32489 0.0 0.0 112732 972 pts/1 S+ 16:30 0:00 grep --color=auto chronyd
[root@hostname ~]# timedatectl
Local time: 日 2020-11-29 16:30:43 JST
Universal time: 日 2020-11-29 07:30:43 UTC
RTC time: 日 2020-11-29 07:30:43
Time zone: Asia/Tokyo (JST, +0900)
NTP enabled: yes
NTP synchronized: yes
RTC in local TZ: no
DST active: n/a
如果 "本地时间 "与当前时间相符,"NTP启用 "是,"NTP同步 "是,就可以了。
1-8. 密钥认证设置
对于你刚刚添加的操作用户,只允许他们用钥匙认证来登录。
简单地停用密码认证就能大大增加安全性。 在密码认证的情况下,如果你使用一个复杂的密码,基本上不会被登录,但可能性不是百分之零。 然而,在钥匙认证的情况下,只有在你首先拥有钥匙的情况下才能登录,所以只要你妥善管理你的钥匙,你就不会被登录。
以下是设置密钥认证的程序。
[username@hostname ~]$ su - xxxxxx
[xxxxxx@hostname ~]$ ssh-keygen -t rsa -b 2048
※xxxxxxxx是额外操作用户的名称。
※在执行 "ssh-keygen -t rsa -b 2048 "命令后,系统会提示你作出反应,所有默认值并按 "Enter"。 设置的时候也没有密码。 (输入密码可以提供额外的安全性,就像钥匙认证加密码认证一样,但在这种情况下不需要假设密码)。
然后检查钥匙是否已经被创建。
[xxxxxx@hostname ~]$ ll /home/xxxxxx/.ssh
※xxxxxxxx是额外操作用户的名称。
检查私钥 "id_rsa "公钥 "id_rsa.pub "是否被存储。
重命名公钥并移动下载私钥的目录。
[xxxxxx@hostname ~]$ mv /home/xxxxxx/.ssh/id_rsa.pub /home/xxxxxx/.ssh/authorized_keys
[xxxxxx@hostname ~]$ mv /home/xxxxxx/.ssh/id_rsa /home/xxxxxx/id_rsa
※xxxxxxxx是额外操作用户的名称。
将私钥(id_rsa)移到本地后,从服务器上删除。
将/home/xxxxxxxx/id_rsa移到本地。 (转到例如WinSCP)。
移动之后,执行删除命令。
[xxxxxx@hostname ~]$ rm /home/xxxxxx/id_rsa
※xxxxxxxx是步骤(3)中添加的用户名。
这样就完成了密钥认证的设置。 检查你是否能用你创建的私钥登录。
一旦你确认可以登录,最后一步是改变设置,使你不能使用密码验证来登录。
[username@hostname ~]$ su -
[root@hostname ~]# vi /etc/ssh/sshd_config
PasswordAuthentication yes
PasswordAuthentication no
检查语法并重新启动sshd。
[root@hostname ~]# /usr/sbin/sshd -t
[root@hostname ~]# systemctl restart sshd
这样就完成了密钥认证的设置。
2. 摘要
我们已经介绍了安装CentOS时需要的初始配置。
本文中的信息是安装CentOS时应该实现的最低限度,如果你在阅读本文后觉得有不足之处,请尝试设置。
谢谢你一直看到最后。