本地Windows免密登录虚拟机

本地Windows免密登录虚拟机

步骤

  • 在Windows本地生成密钥
  • 使用scp命令将公钥复制到虚拟机中的authorized_keys

一、在Windows本地生成密钥

本地计算机win+R输入cmd打开命令行,执行以下命令

ssh-keygen -t rsa 

为了避免发生错误,根据按照返回情况需要,如果是y/n的就输y,没要求的直接回车就行。如果之前生成过,则会询问是否Overwrite

C:\Users\mgemc>ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (C:\Users\mgemc/.ssh/id_rsa):
C:\Users\mgemc/.ssh/id_rsa already exists.
Overwrite (y/n)? y
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in C:\Users\mgemc/.ssh/id_rsa.
Your public key has been saved in C:\Users\mgemc/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:sSfnnibSJeyj7MbPTNCQAvj5gMzr5NZFcDd1MaYa33Q mgemc@DESKTOP-BAR2L0G
The key's randomart image is:
+---[RSA 2048]----+
| ..     .. =.    |
|.  o . +  + .    |
|oo .+ +.o. . E   |
|.o+  o o+oo .    |
|  .o. .oS.o.     |
| o  .. .o=.      |
|+ . .. o.o.      |
| + . .++=...     |
|.    o++++o      |
+----[SHA256]-----+

C:\Users\mgemc>

如上,即表示密钥创建成功,并且告诉了密钥的存储位置

Your identification has been saved in C:\Users\mgemc/.ssh/id_rsa.
Your public key has been saved in C:\Users\mgemc/.ssh/id_rsa.pub.

这里把mgemc换成你自己的用户名就可以找到密钥的位置了,如果在命令行里面找,直接

C:\Users\mgemc>dir .ssh
 驱动器 C 中的卷是 Windows
 卷的序列号是 90E2-38CB

 C:\Users\mgemc\.ssh 的目录

2020/04/17  15:55    <DIR>          .
2020/04/17  15:55    <DIR>          ..
2019/07/17  09:09             1,766 demo
2019/07/17  09:09               404 demo.pub
2020/04/30  18:03             1,679 id_rsa
2020/04/30  18:03               404 id_rsa.pub
2020/04/30  16:33               585 known_hosts
               5 个文件          4,838 字节
               2 个目录 395,645,841,408 可用字节

C:\Users\mgemc>

二、使用scp命令将公钥复制到虚拟机中的authorized_keys

上面的id_rsa.pub就是要上传的文件,先切到上面的.ssh目录下,再使用如下命令上传至服务器下自定义的目录,这里的/home/lal/mykey为自定义目录

cd .ssh
scp id_rsa.pub root@192.168.137.137:/home/lal/mykey

如果这里使用root用户无法登录而使用普通用户可以,那可以使用以下方法步骤解决:

  • 普通用户登录并切换到root用户,或者直接root用户登录
  • vi /etc/ssh/shhd_config
  • 注释掉#PermitRootLogin without-password,添加 PermitRootLogin yes
  • service ssh restart重启ssh服务即可

接下来可以去虚拟机的自定义目录下,能找到id_rsa.pub即表示上传成功了

[root@mycentos lal]# cd mykey/
[root@mycentos mykey]# ls
id_rsa.pub
[root@mycentos mykey]# 

最后只需要将该公钥传入

# ~/.ssh这个目录如果没有就新建一个
cat id_rsa.pub >> ~/.ssh/authorized_keys

这样就可以实现本地的Windows系统免密登录远程虚拟机了

C:\Users\mgemc\.ssh>ssh root@192.168.137.137
Last login: Thu Apr 30 16:13:26 2020 from mylinux
[root@mylinux_clone ~]#   

Ctrl+d或者exit即可退出登陆上的远程虚拟机系统

以上就是Windows本地免密登录虚拟机的方法。

注意:密钥如果使用在多台机器上,则第一次生成后不要再生成该文件,不然会造成之前已经拷贝了该文件的免密登录失效

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

⁣北潇

老板大气!

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

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

打赏作者

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

抵扣说明:

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

余额充值