之前是用MobaXterm登陆VPS,软件将密码直接缓存,用SSH登陆即可。但最近感觉性能有点卡,就换成Git for windows自带的mintty。非常原始的终端了,自然不能指望它缓存VPS的ip和密码。
查了下,在ssh对应的ssh_config中进行如下设置,就可以在mintty中用ssh vultr代替ip了。
Host vultr
HostName <ip>
User root
可是还要每次输入密码呀。又查了下,想继续偷懒,就只能使用SSH的私钥免密登录了。过程如下
#生成密钥对. 注意单独保存个位置,不要和其他的密钥对混淆
ssh-keygen -r rsa
#将公钥复制到VPS;
#vultr相当于 root@45.76.164.111
ssh-copy-id -i ~/.ssh/id_rsa.pub vultr
然后在ssh_config中继续设置
Host vultr
HostName <ip>
User root
PreferredAuthentications publickey
IdentityFile /xxx/xxx/id_rsa
好了!
总结如下,这样之后换VPS只需要ssh-copy-id这一步即可。
密钥形式登录的大概原理是:利用密钥生成器制作一对密钥——一只公钥和一只私钥。将公钥添加到服务器的某个账户上,然后在客户端利用私钥即可完成认证并登录。这样一来,没有私钥,任何人都无法通过 SSH 暴力破解你的密码来远程登录到系统。此外,如果将公钥复制到其他账户甚至主机,利用私钥也可以登录。