在嵌入式Linux*开发中,经常遇到的是情况是有一台开发机Host,和一台目标机Target,它们之间使用SSH进行通信来进行开发的工作。为了方便,我们经常希望能免密码进行登录。下面是关于如何设置免密码登录的方法。
一般来说,Host机器可能是Windows*或者Linux*,下面分别分析其设置方式。
SSH连接的建立
首先,你要确保你的SSH连接已经建立了,关于如何建立SSH就不属于这里讨论的问题了,Target系统需要提供并启动SSH服务,由于不同的嵌入式系统搭建SSH服务的方式不一定相同,所以这里不讨论这部分内容。下面分别针对几种情况讨论无密码SSH的设置。
OpenSSH服务举例:对于Ubuntu系统,可以使用sudo apt-get install openssh-server来安装SSH服务。
Dropbear服务举例:在嵌入式Linux系统中使用较多,比如Yocto自带的SSH服务。
Windows Host (putty.exe) + Linux Target (OpenSSH server):
1. SSH客户端工具
对于Host来说,如果是windows,那么下载一个SSH客户端即可,如:putty。在如下页面下载putty.exe:
http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
2. 免密码登录的设置步骤
A. 用PuTTY SSH 密钥生成工具puttygen.exe生成密钥
下载puttygen.exe:http://www.chiark.greenend.org.uk