1. 使用ssh公钥私钥登陆服务器

  1. 打开gitbash,输入ssh-keygen,然后会给很多的提示信息,包括公钥要存放在哪里等,直接一路回车,只要记住默认存放的文件位置在哪里就可以
  2. 打开产生文件的文件夹,如果是默认,应该就在c盘个人用户目录下,其中,.pub文件就是公钥,要放到服务器上去,另一个文件就是私钥,在使用Xshell等登录服务器时需要明确私钥文件位置。
  3. 随便找个文本编辑器打开那个.pub文件,复制一下其中的内容,然后在服务器中,进入.ssh文件夹,找到authorized_keys文件,使用vim编辑,把自己产生的公钥复制进去(可以有多个公钥)
  4. 打开Xshell或者MobaXterm,不再使用密码登陆,改成使用私钥登陆, 另外,如果嫌弃MobaXTerm总是掉线(和服务器的连接中断),可以 参考:MobaXterm远程连接经常中断

2. 配置Sublime的SFTP使用私钥登陆服务器

一开始也只是靠感觉去改sftp-config.json文件,类似下面这样

服务器上修改公钥文件 服务器私钥在哪_服务器上修改公钥文件

然后就报错,无法登录

服务器上修改公钥文件 服务器私钥在哪_服务器上修改公钥文件_02

主要步骤有两个:

  1. 将.rsa文件转换为.ppk文件,可以参考这个PuTTY的ppk密钥与OpenSSH密钥之间的相互转换进行,以windows为例,需要下载putty,使用其配套的一个组件:PuttyGen,打开,File->Load private key->选择自己的.rsa私钥文件->点击Save private key->自己定义一个名字,保存
  2. 服务器上修改公钥文件 服务器私钥在哪_sftp_03

  3. 将得到的.ppk文件的路径写入sftp配置文件中私钥的部分。类似
  4. 服务器上修改公钥文件 服务器私钥在哪_服务器_04

  5. 路径一定要写对,不然还是会报错。然后没就没啥问题了,就可以正常使用了

参考:

  • Stack-Overflow-Sublime text sftp rsa private key
  • sublime Text SFTP使用密钥远程登录Linux 上传文件
  • linux私钥id_rsa转换成ppk
  • 累,终于搞定 Sublime sftp 插件里的密钥登录
  • PuTTY的ppk密钥与OpenSSH密钥之间的相互转换

3. 关于sublime使用SFTP过程中的一些问题

暂停上传/下载任务

ctrl + alt +( u , x ) - Stop the current SFTP/FTP server activity (connection, upload or download). 在我的win10上,ctrl+alt+x有效(没有修改过SFTP的快捷键情况下)

服务器上修改公钥文件 服务器私钥在哪_ssh_05

取消后的提示如上图,对于数据集这种东西,一张一张上传太慢了,,,还是压缩成文件夹,然后解压吧。