首页>建站相关>putty实现免密码ssh登陆云服务器

putty实现免密码ssh登陆云服务器

为服务器设置了定时任务,每天准时备份一次数据库,但备份的文件始终还是在云端。本着不能把鸡蛋放在一个篮子里的原则,想要利用putty自带的psftp工具把备份文件同步到本地,因为是一个需要长期持续的操作,手动来完成实在有点儿枯燥,于是想利用批处理命令来完成这个步骤。

自动化的处理自然需要省略掉输入账户密码的流程,于是首先需要解决的是免密码登陆的问题,服务器使用的是阿里云的服务器,在阿里云的官网云服务器ECS管理页面申请并绑定了密钥,然后按照官网教程将下载好的pem文件转化成ppk文件,最后用putty加载ppk登陆。虽然阿里云的动态教程说的很详细,然而并没有什么用,折腾了一下午,最后还是没能成功登陆......

利用puttygen自主生成密钥对

免密登陆的原理,其实是在本地主机生成一组相关的数据,一部分用于登陆时由本地发送给服务器验证,另一部分用来放在服务器上,供服务器验证请求的数据。就象武侠剧里的玉佩梗,两块玉咔哒一合上,就算是找到亲人了。为啥本地生成的数据可以供服务器用于验证呢,因为这一块数据你得先登陆上服务器,然后再粘贴进指定的文件。反正都已经上来了,管你是主子还是黑客呢,一个字从了。

putty_password_free_p1

puttygen是putty自带的用来生成密钥对的小工具,点击主界面上的“Generate”按钮,软件就会开始生成随机码,比较有意思的设定是:在生成随机码期间需要用户不断的移动鼠标,鼠标的轨迹可能会被读取并影响随机码的生成。

putty_password_free_p2

进度条刷满进行下一步操作,首先点击“Save private key”,保存用于本地的私钥文件,文件名随意,自己觉得方便输入就行,注意该文件的后缀名为“ppk”,如果用户输入为“bitop”,那么就会生成一个全名为“bitop.ppk”的私钥文件。

接下来复制上方文本框内的所有内容,上方的文本框因为尺寸较小,所以框选复制的时候需要注意下拉一下鼠标,以避免漏掉一些内容导致最后无法通过验证。

登陆服务器提交数据

putty_password_free_p3

进入根目录下的隐藏文件夹“.ssh”:

cd .ssh

打开密钥文件,这个文件是个空文件,利用vim打开它,把从本地复制过来的一堆数据粘贴进去,粘贴前记得先按一下insert切换到输入模式:

vim authorized_keys

putty免密码登陆

接下来测试一下是否能够成功免密登陆,打开putty,选择左侧菜单中的connection -> ssh -> auth,在该界面找到“Browse”,点击并选择我们刚才生成的“bitop.ppk”文件;

putty_password_free_p4

选择左侧菜单顶部的“Session”返回登录页面,有设置完后找不着返回按钮直接关掉整个程序经历的同仁过来握个爪。

putty_password_free_p5

在host name对话框输入用户名与服务器ip地址,不带上用户名的情况下会要求输入用户名,输入后直接登陆不会再跳出密码输入窗口,用户名与服务器ip之间需要加一个@符号,假设用户名为root;

root@101.102.103.104

putty_password_free_p6

成功实现免密码登陆,阿里云给的密钥是pem格式的,教程里说明要用puttygen转换为ppk格式,但按教程操作进行转换后,仍旧会提示“服务器拒绝了这个key”。反而是用puttygen自主生成密钥对更为可靠一些。

权限导致的问题

因为涉及到用户登陆这样的安全性操作,“.ssh”文件夹与“authorized_keys”是有权限要求的,笔者的服务器默认已经设置好了权限,所以可以顺利登陆,如果有遇到按照上述教程无法登陆的情况,请查询或者干脆用以下命令重新设置一下权限:

cd ~
chmod 700 ~/.ssh
cd ~/.ssh
chmod 600 authorized_keys

标签: ssh

移动端可扫我直达哦~

推荐阅读

ssh 2023-09-09

psftp批量上传文件与批量下载文件

下载单个文件get 文件名称上传单个文件put 文件名称下载多个文件多个文件指令支持通配符,如果下载当前文件夹内所有的jpg文件则使用如下命令mget *.jpg上传多个文件多个文件指令支持通配符,如果上传当前文件夹内所有的jpg文件...

建站相关 ssh

ssh 2022-11-18

psftp利用私钥实现免密码登陆的方法

代替密码的私钥文件putty提供了私钥制作工具puttygen,私钥其实就是很长一串靠人力无法记忆的密码,以文件格式被保存起来,本地一份,在服务器端也保存一份。登陆的时候putty会拿出私钥文件给服务器,服务器拿出自己的私钥文件一比对...

建站相关 ssh

ssh 2022-10-11

命令行式ssh工具putty历史版本下载

putty是一个适用于Windows和Unix平台的SSH和Telnet的免费实现,以及xterm终端仿真器。它主要由 Simon Tatham编写和维护。putty的官网极其简陋,随便截个图感受一下:官网截图官网地址与历史版本官网的...

建站相关 ssh

ssh 2022-10-11

让win7自动从服务器下载一个文件

在本地实现了利用批处理命令一键下载服务器上的数据库备份,然后就犯嘀咕了,linux这个小弟都可以定时自动运行一个任务,咱windows系统不可能没有呀。以前老看见什么windows计划任务,不会那个就是类似的功能吧。windows计划...

建站相关 ssh

ssh 2022-10-11

psftp设置选项与登陆后支持命令详解

psftp的设置项psftp是putty自带的sftp客户端,它提供了丰富的设置选项,也允许通过读取一个预格式化文件来完成一系列的自动化操作。以下是0.76版本的putty下psftp所支持的所有设置项,供参考: 选项 ...

建站相关 ssh

ssh 2022-10-11

利用psftp向远程服务器上传文件

putty是一个很轻量的ssh远程连接工具,很难想象其简陋的官网,小巧的体积背后,是一套完整的远程访问解决方案,而psftp是putty附带的一个sftp工具,用于在本地与服务器间安全传输文件。刚安装完putty的时候有点不太明白,怎...

建站相关 ssh