基于ssh协议免密码的openwrt环境下数据传输及远程指令执行

这个名字起的简直是有点过于装X。

其实,问题很简单,一般情况下,openwrt运行在一些嵌入式平台或者路由器上,而这种平台往往没有太多的资源,如硬盘存储。但一些数据,如流量又只能捕获下来暂时存放于其上,日积月累,如果不把数据拷贝回来并删除openwrt上的,便会造成空间不足。当然在这个过程中,不可避免的要使用一些脚本,用到一些命令,那么,又如何远程执行命令呢。

首先,我用的openwrt是BARRIER BREAKER版本的,其他版本未经测试。
回到问题,怎么解决呢。当然,一种方法是nfs,不过最终没有成功,止步于这个问题:

mount.nfs: No such device


跟这个帖子遇到的问题基本相同,http://www.openwrt.org.cn/bbs/thread-509-1-1.html,cat /proc/filesystems也没有发现nfs的支持,我想我这个系统其实当初是由别人的vmdk上克隆过来的,可能是内核编译的时候没有加上nfs模块吧。不管怎样,这种方法还是放弃!

那么,我们转到第二种方法,使用scp远程往回拷贝。

我们要在脚本中执行scp命令,最大一个问题在于密码怎么办。幸好,有关于scp和ssh的免密码拷贝和登录。可以参考这几篇:

http://it.oyksoft.com/post/1836/
http://www.thegeekstuff.com/2008/06/perform-ssh-and-scp-without-entering-password-on-openssh/
http://www.360doc.com/content/13/1013/21/3884271_321222563.shtml
http://blog.csdn.net/shangzhiliang_2008/article/details/8602756

这个过程中,我走了一些弯路,在此写出来,做以小记,也免得看到的人继续走弯路。

很多文档跟上面第一篇一样,上来就是怎样怎样,但是弄了半天,你发现怎么还是不得行,于是这时候你去求助万能的google,找到了第二篇文章,恍然大悟,原来尼玛得要求ssh服务的一方必须是openssh,这就很显而易见了,我们openwrt上提供的是dropbear啊,那怎么办,我们要换ssh服务器吗?

答案当然是no,no,no....这时候我们检索openwrt scp不就行了吗,然后你终于得到了第三篇文档,这个文档很短,但是足以告诉我们在dropbear中应该如何设置。好了,就这样,大功就告成了。之后,在你scp以前,你得知道openwrt上有哪些文件啊,这时候你会用到第四篇文章,对,这样下来,你就可以用脚本很方便的监控拷贝了哦。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值