windows10开启ssh服务 windows自带的ssh工具是干什么的( 二 )
最后,就会生成私钥和公钥,屏幕上还会给出公钥的指纹,以及当前的用户名和主机名作为注释,用来识别密钥的来源 。
公钥文件和私钥文件都是文本文件,可以用文本编辑器看一下它们的内容 。公钥文件的内容类似下面这样 。
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAIEAvpB4lUbAaEbh9u6HLig7amsfywD4fqSZq2ikACIUBn3GyRPfeF93l/weQh702ofXbDydZAKMcDvBJqRhUotQUwqV6HJxqoqPDlPGUUyo8RDIkLUIPRyqypZxmK9aCXokFiHoGCXfQ9imUP/w/jfqb9ByDtG97tUJF6nFMP5WzhM= username@shell.isp.com
上面示例中,末尾的username@shell.isp.com是公钥的注释,用来识别不同的公钥,表示这是哪台主机(shell.isp.com)的哪个用户(username)的公钥,不是必需项 。
博主在使用时删除了末尾的注释,亲测可以使用
注意,公钥只有一行 。因为它太长了,所以上面分成三行显示 。
手动上传公钥 生成密钥以后,公钥必须上传到服务器,才能使用公钥登录 。
OpenSSH 规定,用户公钥保存在服务器的~/.ssh/authorized_keys文件 。你要以哪个用户的身份登录到服务器,密钥就必须保存在该用户主目录的~/.ssh/authorized_keys文件 。只要把公钥添加到这个文件之中,就相当于公钥上传到服务器了 。每个公钥占据一行 。如果该文件不存在,可以手动创建 。
用户可以手动编辑该文件,把公钥粘贴进去,也可以在本机计算机上,执行下面的命令 。
$ cat ~/.ssh/id_rsa.pub | ssh user@host "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"
上面示例中,user@host要替换成你所要登录的用户名和主机名 。
注意,authorized_keys文件的权限要设为644,即只有文件所有者才能写 。如果权限设置不对,SSH 服务器可能会拒绝读取该文件 。
$ chmod 644 ~/.ssh/authorized_keys
只要公钥上传到服务器,下次登录时,OpenSSH 就会自动采用密钥登录,不再提示输入密码 。
$ ssh -l username shell.isp.comEnter passphrase for key '/home/you/.ssh/id_dsa': ************Last login: Mon Mar 24 02:17:27 2014 from ex.ample.comshell.isp.com>
上面例子中,SSH 客户端使用私钥之前,会要求用户输入密码(passphrase),用来解开私钥 。
需要注意的是在Windows terminal中ssh-copy-id无法使用,只能手动上传
密钥创建示例 附上我的密钥创建实例:
PS C:Usersadmin> ssh-keygenGenerating public/private rsa key pair.Enter file in which to save the key (C:Usersadmin/.ssh/id_rsa): C:UsersadminOneDrive/.ssh/id_rsaEnter passphrase (empty for no passphrase):Enter same passphrase again:Your identification has been saved inC:UsersadminOneDrive/.ssh/id_rsa.Your public key has been saved in C:UsersadminOneDrive/.ssh/id_rsa.pub.The key fingerprint is:***The key's randomart image is:***PS C:Usersadmin> cat C:UsersadminOneDrive/.ssh/id_rsa.pub//此步显示所创建的公钥,复制所有内容PS C:Usersadmin> ssh kerm@52.184.**.**kerm@HK1:~$ sudo -iroot@HK1:~# mkdir -p ~/.sshroot@HK1:~# nano ~/.ssh/authorized_keys//将之前复制的公钥贴入,我将=号后的内容删除,因为有多台设备利用这个公钥登录root@HK1:~# chmod 644 ~/.ssh/authorized_keys
备注:为了实现多端同步免密登录,这里我密钥的存储位置选为了OneDrive同步文件夹 。这样虽然不安全,但是很方便 。
将登录信息写入配置文件,一键登录也可以直接编辑配置文件 。新版既然已经提供GUI,我就直接在GUI操作了 。
导航栏下拉进入设置-配置文件-添加新配置文件-新建空配置文件 。在命令行一栏填入:
ssh -i 密钥路径 user@ip示例:ssh -i C:UsersadminOneDrive/.ssh/id_rsa root@52.184.***.**
其他参数,例如名称、外观可以参照另外一篇文章进行自定义 。这里不做赘述 。
保存,导航栏下拉找到对应配置名称即可一键连接 。也可以使用快捷键:
效果
同步问题 【windows10开启ssh服务 windows自带的ssh工具是干什么的】理论上是可以多端同步的,但是目前我两台电脑上的配置还没有同步,不知道为什么 。
推荐阅读
- 小米|稳定连接上百款设备!小米中枢网关今日开启众筹:309元
- 国际汽联批准F1夏休期提前为赛季开启多补赛腾空间
- 马赛克|谁把谁当真:黎朔病弱沉沦,锦辛化身行走马赛克,开启特殊治疗
- 许魏洲|新剧《谁都知道我爱你》,许魏洲被宋茜暗恋八年开启姐弟恋!
- 盛英豪|电影《雪鹰领主》定档3月27日 盛英豪领衔开启超凡征途!
- 白敬亭|《明侦》开启收官录制,全明星阵容引期待,刘昊然回归白敬亭缺席
- 考试|“军工央企”开启春招进程,本科生年薪15W+,专科生也有报考机会
- 宋慈韶华录|《宋慈韶华录》来袭,众星云集,阵容强大,开启熬夜追剧模式
- |中铁一局开启校招模式,众多岗位可挑选,高学历人才不容错过
- 比亚迪|亚迪汉DM-i/P正式开启预售:共五款车型、21.68万起售