centos8设置ssh密钥实现ssh密钥远程登录命令教程

admin3年前主机评测100

centos8怎么设置ssh密钥?我们登录Linux服务器SSH账户都是用什么办法登录的?

我相信很多人都跟我一样,服务器生成的或者设置的ROOT密码,然后通过SSH远程工具进行连接,一般都是通过端口对接的密码登录的。比如搬瓦工相对还安全一些,他的22端口默认是不用的,而是使用的是随机的五个数字的端口。目前,最流行的两种SSH身份验证机制是基于密码的身份验证和基于公钥的身份验证。使用SSH密钥通常比传统的密码身份验证更安全和方便。

实际上,如果我们能用ssh密钥登录,相对比密码登录安全很多的。在这篇文章中介绍了如何在 CentOS 8 系统上生成 SSH 密钥。 我们还将向展示如何设置基于 SSH 密钥的身份验证并在不输入密码的情况下连接到远程 Linux 服务器,我们不要觉得不输入密码不安全,实际上我们只要对接的密钥,一般人是没有我们本地的密钥文件的。

执行以下ls命令查看key文件是否存在:

ls -l ~/.ssh/id_*.pub

如果命令的输出返回类似 No such file or directory, or no matching found 的内容,则表示用户没有 SSH 密钥,我们可以开始继续下一步并生成 SSH 密钥对。

如果我们有 SSH 密钥对,我们可以使用这些密钥或备份旧密钥并生成新密钥。要使用我们的电子邮件地址作为注释生成新的 4096 位 SSH 密钥对,请运行:

ssh-keygen -t rsa -b 4096 -C “your_email@cnbanwagong”

系统将提示您指定文件名:

Enter file in which to save the key (/home/yourusername/.ssh/id_rsa):

回车按 Enter 接受默认文件位置和文件名。接下来,系统会要求我们输入安全密码。 是否要使用密码,由我们自己决定。 密码短语将增加额外的安全层。 如果我们不想使用密码,只需按 Enter。

Enter passphrase (empty for no passphrase):

整个交互看起来是这样的:

我们我们需要验证生成了新的 SSH 密钥对,请键入:

ls ~/.ssh/id_*

返回值:

/home/yourusername/.ssh/id_rsa /home/yourusername/.ssh/id_rsa.pub

就是这样。我们已在 CentOS 客户端计算机上成功生成了 SSH 密钥对。

既然生成了 SSH 密钥对,下一步就是将公钥复制到我们要管理的服务器上。

将公钥复制到远程服务器的最简单且推荐的方法是使用 ssh-copy-id 实用程序。 在我们的本地机器终端类型上:

ssh-copy-id remote_username@server_ip_address

该命令将要求我们输入 remote_username 密码:

remote_username@server_ip_address’s password:

一旦用户通过身份验证,公钥文件(~/.ssh/id_rsa.pub)的内容将附加到远程用户的 ~/.ssh/authorized_keys 文件中,并关闭连接。

Number of key(s) added: 1

Now try logging into the machine, with: “ssh ‘username@server_ip_address'”

and check to make sure that only the key(s) you wanted were added.

如果我们的本地计算机上没有 ssh-copy-id,请使用以下命令复制公钥:

cat ~/.ssh/id_rsa.pub | ssh remote_username@server_ip_address “mkdir -p ~/.ssh chmod 700 ~/.ssh cat ~/.ssh/authorized_keys chmod 600 ~/.ssh/authorized_keys”

完成上述步骤后,我们可以能够登录远程服务器而不会提示输入密码。 要验证它,请尝试通过 SSH 登录到您的服务器:

ssh remote_username@server_ip_address

如果我们没有为私钥设置密码,需要立即登录。 否则,您将被要求输入密码。

要为远程服务器添加额外的安全层,我们可以禁用 SSH 密码身份验证。在继续之前,请确保您可以在没有密码的情况下以具有 sudo 权限的用户身份登录到您的服务器。

请按照以下步骤禁用 SSH 密码验证:

ssh sudo_user@server_ip_address

sudo nano /etc/ssh/sshd_config

vi /etc/ssh/sshd_config

编辑文件。

PasswordAuthentication no

ChallengeResponseAuthentication no

UsePAM no

sudo systemctl restart ssh

此时,基于密码的身份验证被禁用。

最后:

这里我们已经演示到如何生成新的 SSH 密钥对并设置基于 SSH 密钥的身份验证。我们可以使用相同的密钥来管理多个远程服务器。 预计我们可以设置如何禁用 SSH 密码身份验证并向服务器添加额外的安全层。 默认情况下,SSH 侦听端口 22。一般我们都会修改默认端口的。

免责声明:本文内容来自用户上传并发布,站点仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。请核实广告和内容真实性,谨慎使用。

相关文章

DMIT:万圣节双十一活动,美国vps特价,洛杉矶CN2 GIA VPS,八折优惠+1.3倍流量

DMIT怎么样?DMIT万圣节双十一活动,购买vps服务器半年付、年付订购单可获得1.3x的流量活动目前仍然有效,同时账户上有正在使用的洛杉矶vps服务器,新购订单可以享受8折优惠,没有已开通产品的用...

Virtono夏季促销:美国/德国/罗马尼亚/英国vps;1核/1G内存/25G SSD/2T流量@1Gbps带宽,€21.33/年

virtono怎么样?virtono成立于2014年,罗马尼亚注册公司Virtono Networks SRL(RO 33431948),主营域名注册、虚拟主机、VPS和独立服务器等;VPS目前主要分...

wordpress外贸建站主题 wordpress经典制造工业外贸企业网站模板

wordpress经典制造工业外贸企业网站模板,wordpress英文外贸主题,实用型行业外贸营销推广模板 + 完善多行业功能性外贸建站模块,更利于SEO搜索优化收录排名 + 更符合欧美用户的网站操作...

阿里云国际站与阿里云国内站云服务器有什么区别?

阿里云国际站和中国站有什么不同?大家对于阿里云已经很熟悉了,但是提到阿里云首先想到的是阿里云国内站,最近阿里云国际站的呼声也很高,那么阿里云国际站是什么呢?跟中国站又有什么不同呢?下面我们来说一下。阿...

ReCloud:香港静态HGC/静态CMI;台湾Hinet家宽/Hinet 1G款;英国家宽IP,日本软银BGP/BBTEC

recloud怎么样?recloud,国人商家,提供各类VPS,有美国NTT、香港hgc、香港CMI、日本软银等。看ReCloud官网成立于2020年9月,虽然成立时间不长,但口碑不错,有不少用户采购...

腾讯云标准型Sn3ne和标准型S3服务器区别及如何选择?

腾讯云标准网络优化型Sn3ne和标准型S3服务器区别及如何选择?这两款服务器都是较新一代网络优化型实例,此实例提供了平衡的计算、内存和网络资源,网络收发能力非常突出,是很多应用程序的最佳选择。目前,腾...