生成ssh密钥(windows+linux)


579a429daf314744b995f37351b46548

什么是SSH密钥

SSH密钥是一种用于身份验证和加密通信的安全机制。SSH(Secure Shell)是一种网络协议,用于在不安全的网络上安全地进行远程登录和文件传输。

SSH密钥由一对密钥组成:私钥和公钥。私钥保存在用户的本地计算机上,而公钥则被存储在远程服务器上。私钥是用户的身份验证凭证,而公钥用于加密和解密数据。

在SSH密钥身份验证过程中,用户使用私钥对数据进行加密,然后将加密后的数据发送到远程服务器。远程服务器使用存储在其上的公钥对数据进行解密,并验证用户的身份。如果解密成功并且用户的身份验证通过,用户将被授予访问远程服务器的权限。

SSH密钥优点

image-20231109185010651

安全性

SSH密钥使用非对称加密算法,提供了更高的安全性,相比于传统的密码身份验证方式更难以破解。

方便性

一旦设置好SSH密钥,用户可以通过私钥进行身份验证,无需输入密码,提供了更便捷的登录方式。

可扩展性

SSH密钥可以用于多个服务器,用户只需在每个服务器上配置其公钥即可。

不可伪造性

SSH密钥使用了数字签名技术,保证了密钥的真实性和完整性,防止了密钥被篡改或伪造。

Windows

要在 Windows 10 上生成 SSH 密钥,您可以按照以下步骤操作:

1.打开 PowerShell(或者按下 Windows + X 并选择 “Windows PowerShell”);

2.在 PowerShell 中输入以下命令来生成 SSH 密钥:

ssh-keygen -t rsa

3.输入您要保存密钥文件的路径和名称。例如:C:\Users\YourName.ssh\id_rsa。您可以选择保留默认名称,因为它已经被 SSH 所识别(id_rsa);

4.在弹出的窗口中输入密码,或者直接敲击回车键选择不设置密码;

5.这个时候,您会得到一个公共密钥(id_rsa.pub)和一个私有密钥(id_rsa)。

现在您已经成功地生成了 SSH 密钥对。公钥是要提供给远程服务器的,私钥则要保留在本地,并加以保护。

Liunx

在 Linux 上生成 SSH 密钥的步骤与在 Windows 上类似。您可以按照以下步骤操作:

1.打开终端(或者按下 Ctrl + Alt + T);

2.输入以下命令来生成 SSH 密钥:

ssh-keygen -t rsa

3.输入您要保存密钥文件的路径和名称,或者直接敲击回车键选择默认值,例如:/home/YourName/.ssh/id_rsa;

4.在弹出的窗口中输入密码,或者直接敲击回车键选择不设置密码;

5.这个时候,您会得到一个公共密钥(id_rsa.pub)和一个私有密钥(id_rsa)。

现在您已经成功地生成了 SSH 密钥对。公钥是要提供给远程服务器的,私钥则要保留在本地,并加以保护。另外,如果您想要让 SSH 代理管理您的密钥,您还需要在本地配置 SSH 代理。


使用场景

image-20231109185357407

远程登录

使用SSH密钥对进行身份验证,可以实现更安全的远程登录。相比于传统的用户名和密码方式,SSH密钥更难以破解,提供了更高的安全性。

自动化脚本和任务

在自动化脚本和任务中使用SSH密钥可以实现无人值守的远程操作。通过将SSH密钥嵌入脚本中,可以实现自动化的远程命令执行、文件传输等操作。

Git和版本控制

在与Git和其他版本控制系统进行交互时,使用SSH密钥可以实现安全的代码仓库访问和代码推送。开发人员可以将SSH密钥与其Git账户关联,以便进行代码的安全传输和管理。

服务器集群和自动化部署

在服务器集群和自动化部署中,使用SSH密钥可以实现服务器之间的安全通信。通过在服务器之间相互信任的方式,可以实现自动化的部署和配置管理。

云计算和容器化环境

在云计算和容器化环境中,使用SSH密钥可以实现安全的远程访问和管理。通过将SSH密钥与云服务器或容器实例关联,可以实现安全的远程操作和管理。


总结

SSH密钥是一种安全的身份验证和加密通信机制,提供了更高的安全性和便捷性,广泛应用于远程登录和文件传输等场景。

SSH密钥在许多场景下都是一种安全、可靠的身份验证和加密通信方式,广泛应用于远程登录、自动化脚本、Git和版本控制、服务器集群、云计算和容器化环境等领域。


写在最后

感谢您的支持和鼓励! 😊🙏

如果大家对相关文章感兴趣,可以关注公众号"架构殿堂",会持续更新AIGC,系统架构, 分布式, java, GO, python, 游戏相关 等系列文章,一系列干货随时送达!

csdn-end

Windows环境下安装OpenSSH并通过生成SSH密钥登录Linux服务器的步骤如下: 1. 首先,在Windows系统上下载OpenSSH软件包。最常用的是从OpenSSH官方网站下载最新版本的安装程序。 2. 下载完成后,运行安装程序。选择所需的安装选项,如安装路径和组件。 3. 在安装过程中,选择将OpenSSH添加到系统环境变量中。这将使得SSH命令在任意位置都可以被识别。 4. 安装完成后,打开PowerShell或命令提示符,输入“ssh”命令来验证OpenSSH是否成功安装。 5. 安装完成后,需要生成SSH密钥对。在PowerShell或命令提示符中输入“ssh-keygen”命令。 6. 接下来,按照提示输入密钥生成过程中需要的信息,如保存密钥的文件名和密码(可选项)。 7. 生成密钥过程完成后,会在默认的.ssh目录中生成公钥(id_rsa.pub)和私钥(id_rsa)。 8. 将公钥(id_rsa.pub)复制到要登录的Linux服务器上的用户主目录下的.ssh目录中。 9. 在Linux服务器上,使用root权限登录,并使用“mkdir .ssh”命令创建.ssh目录(如果目录不存在)。 10. 然后使用“chmod 700 .ssh”命令将.ssh目录权限设置为仅限所有者读写执行。 11. 使用“cd .ssh”命令进入.ssh目录,并使用“touch authorized_keys”命令创建authorized_keys文件。 12. 运行“chmod 600 authorized_keys”命令将authorized_keys文件权限设置为仅限所有者读写。 13. 通过“cat id_rsa.pub >> authorized_keys”命令将公钥添加到authorized_keys文件末尾。 14. 退出Linux服务器,并回到Windows系统。 15. 在Windows系统上打开PowerShell或命令提示符,输入“ssh username@ip_address”命令来通过SSH密钥登录Linux服务器。 通过以上步骤,您就可以成功安装OpenSSH,并通过生成SSH密钥登录Linux服务器。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

The-Venus

您的鼓励是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值