建立SSH信任通道
星期一, 八月 31st, 2009项目中要在两台机器中进行数据传输,协议就是SSH。在Java中调用系统的scp指令,完成数据传送。如果不在两台机器中建立信任通道,就会要求输入密码这些操作。如果在两台机器建立信任通道呢,步骤如下(这里以Client Server为机器名):
1 首先在Client机器上的某一个用户(client-user)下执行:
ssh-keygen -t rsa
这里会提示你输入证书密码,这里千万不要输入证书密码,回车即可
2 这个时候client-user的用户目录下的.ssh子目录有会有两个文件,id_rsa和id_rsa.pub,然后copy id_rsa.pub的内容
3 登录到Server机器上的某一用户(server-user)下,然后创建.ssh/authorized_keys 文件,将id_rsa.pub的内容粘贴到该文件中即可。主要:如果你使用终端,如SecureCTR,确保粘贴的内容在一行中。 另外一个办法就是从客户端执行 scp id_rsa.pub server-user@server:/home/server-user/.ssh/authorized_keys 就可以啦。
4 通道已经建议:从client机器的client-user向server机器的server-user。你就可以进行scp操作啦,不会有问题啦。