如何在centos 7上配置和保护服务器设置
在本文中,我们将学习一些配置步骤,在安装新服务器之后,出于安全性和可用性的考虑,应该注意这些步骤。这将帮助我们建立坚实的基础。
避免“root”用户登录
根是Linux环境中的管理员或超级用户,他们具有系统上的所有特权。通常,强烈建议不要直接使用root用户,因为它可能会导致许多问题或任何意外的数据丢失,或者由于意外进行的任何更改。
在下一步中,我们将设置具有root权限的替代用户,这将减小系统管理员日常活动的影响范围。
创建一个新用户
以root用户身份登录后,我们可以创建一个新用户以登录到服务器,然后可以使用以下命令创建一个用户
# adduser manager
创建用户后,建议您设置一个强密码
# passwd manager
分配root权限
现在,一旦以普通权限创建了新用户,我们需要具有管理权限才能执行一些任务,我们将分配root权限,并在需要root用户权限的命令之前在“sudo”之前添加所需的用户。。
要添加具有管理特权的用户,我们需要以root用户身份登录,并将该用户添加为超级用户,我们需要将新用户添加到“wheel”组,默认情况下,在Centos7中是wheel中的用户允许组使用“sudo”运行命令
下面是将新用户添加到wheel组的命令
# gpasswd –a manager wheel
为登录添加公钥身份验证
在此步骤中,我们将通过为新用户设置公钥身份验证来保护服务器,这将通过要求私密SSH密钥登录来提高服务器的安全性。
生成密钥对
如果我们没有SSH密钥对(由公钥和私钥组成)。我们需要生成新密钥。
以下是生成新密钥对的命令–
# ssh-keygen Generating public/private rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa): Created directory '/root/.ssh'. Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /root/.ssh/id_rsa. Your public key has been saved in /root/.ssh/id_rsa.pub. The key fingerprint is: a3:5d:58:cc:7f:94:30:bf:ae:1e:5c:11:25:f7:96:41 root@server1 The key's randomart image is: +--[ RSA 2048]----+ | o +Eo| | o + =+| | + =.o| | o . . + | | S . . + | | o o . + | | . . o . | | o | | .o | +-----------------+
默认情况下,如果我们未提供文件名,它将自动将文件名作为id_rsa.pub和id_rsa_ppk生成,文件名将位于用户主目录的.ssh目录中。
复制公钥
生成SSH密钥后,我们需要复制公共密钥,然后就不应该将私有密钥共享给不应该访问服务器的任何人。
我们可以使用两种方式复制公钥-
使用ssh-copy-id
如果我们已经安装了ssh-copy-id,我们可以使用它来将公钥安装到任何其他用户或机器上。
运行以下命令以复制公钥–
# ssh-copy-id manager@ipaddress-of-machine
公钥将添加到用户或计算机中的.ssh/authorized_keys中。我们需要使用相应的私钥登录服务器。
手动添加密钥
假设我们已经生成了密钥,请使用以下命令打印密钥
$ cat .ssh/id_rsa.pub
将命令中打印的密钥复制到剪贴板中
我们需要将此密钥添加到.ssh/authorized_keys文件中
如果没有.ssh文件夹和authorized_keys文件,则需要按照以下步骤进行创建。
$ mkdir .ssh $ chmod 700 .ssh $ touch .ssh/authorized_keys $ chmod 600 .ssh/authorized_keys
然后,我们需要打开authorized_keys文件并粘贴剪贴板中的文本
# vi .ssh/authorized_keys
从剪贴板复制文本并保存文件
使用SSH禁用root登录
由于我们已经创建了具有root用户或超级用户权限的新用户,因此我们现在可以使用SSH禁用root用户登录。
使用以下命令打开ssh配置文件
$ vi /etc/ssh/sshd_config
在这里,我们需要找到“#PermitRootLoginyes”行,然后取消注释该行并将其更改为如下所示
PermitRootLogin no
现在,只需重新加载SSH服务,即可完成配置
# systemctl reload sshd
现在,可以阻止“root”登录使用SSH,我们可以直接在计算机上使用root用户。
在本文中,我们学习了如何使用最佳实践来保护服务器的安全,例如创建具有root特权的用户以及阻止root登录,以便我们避免意外命令导致数据意外丢失,以及防止使用SSH使用密码密钥文件,并使用SSH从计算机外部使用root用户保护服务器安全。