安装CentOS时需要进行初始配置。


出版日期:2020年12月8日。



INFOMARTION > 安装CentOS时需要进行初始配置。

概述。

本节介绍安装CentOS后的第一个必要设置。 它是用CentOS 7.6(1810)构建的。

目录

  1. 基本设置
  2. 摘要

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


config【改变之前】


SELINUX=enforcing


config【变化后】


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


sshd_config【改变之前】


#LoginGraceTime 2m
#PermitRootLogin yes
#StrictModes yes
#MaxAuthTries 6
#MaxSessions 10


sshd_config【变化后】


#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


sshd_config【改变之前】


PasswordAuthentication yes


sshd_config【变化后】


PasswordAuthentication no

检查语法并重新启动sshd。

[root@hostname ~]# /usr/sbin/sshd -t
[root@hostname ~]# systemctl restart sshd

这样就完成了密钥认证的设置。


2. 摘要

我们已经介绍了安装CentOS时需要的初始配置。

本文中的信息是安装CentOS时应该实现的最低限度,如果你在阅读本文后觉得有不足之处,请尝试设置。

谢谢你一直看到最后。




■INFORMATION

请点击这里,进入信息首页。


■PROFILE

请点击这里查看简介。


■联系方式。

有关文章的查询,请在此与我们联系。