SSH免密码登录:window远程Linux系统

生成 SSH 密钥对

1.运行以下命令,使用ssh-keygen 工具生成新密钥。如果您使用的是相对较新的系统(本地和远程),我们建议使用 Ed25519 算法生成密钥。如果您更喜欢其他加密算法,请将其替换ed25519为所需的算法类型。请参阅-t下面的选项

ssh-keygen -t ed25519 -C "user@domain.tld"

2.当提示输入文件名时,按Enter使用默认名称和路径。通常,SSH 密钥存储在~/.ssh/目录中。使用 Ed25519 的私钥以id_ed25519默认名称保存,而 RSA 密钥使用默认名称id_rsa。公钥使用相同的文件名,但附加了.pub(例如id_ed25519.pub:)。

Generating public/private ed25519 key pair.
Enter file in which to save the key (/Users/username/.ssh/id_ed25519):

重要的
如果您已经使用默认名称(或您输入的自定义名称)创建了密钥对,则该文件将被覆盖,并且您可能无法访问远程系统。因此,您可能需要在继续之前检查现有密钥,然后运行ls ~/.ssh/id_ed25519

如果您意外将自己锁定在计算实例上的 SSH 服务之外,您仍然可以使用Lish 控制台登录到您的服务器。通过 Lish 登录后,更新您的authorized_keys文件以使用您的新公钥。这应该会重新建立正常的 SSH 访问。*

3.接下来,输入密码,该密码用于在本地加密(和解密)您的私钥。这是可选的,但通常建议这样做,除非您将密钥用于自动化目的。每次使用该密钥登录时,您都必须输入密码(除非您将该密码保存到本地计算机的钥匙串管理器或通过 ssh-add 工具保存)。如果您不想使用密码,请将此字段留空。

Enter passphrase (empty for no passphrase):
Enter same passphrase again:

4.一旦生成了密钥对,您应该会看到类似以下内容的输出:

Your identification has been saved in /Users/username/.ssh/id_ed25519.
Your public key has been saved in /Users/username/.ssh/id_ed25519.pub.
The key fingerprint is: SHA256:AVF3XG5XtwxWmoECKC9xExnStF5JzpXYDfkieOejYJE user@domain.tld

5-1 (方案1)使用ssh-cope-id推送公钥
在这里插入图片描述

5-2(方案2)手动复制公钥到服务器(注意,这个得YourUsername是你的计算机用户名称,每个人得不一样,注意替换)

Get-Content C:\Users\YourUsername\.ssh\id_ed25519.pub

6.链接远程服务器

ssh user@remote_host

7.然后在远程服务器上执行以下命令(确保 ~/.ssh 目录存在)

//创建目录
mkdir -p ~/.ssh
 //把你的公钥写入文件夹
echo "your_public_key_content" >> ~/.ssh/authorized_keys
//给密钥文件设置权限
chmod 600 ~/.ssh/authorized_keys

over:到此就不用每次输入密码了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值