请求提示:将文件从路由器记录到服务器的可能性

时间:2012-01-20 13:16:04

标签: c logging ssh openwrt

情况如下:

我已经写了一个C程序在WRT54GL路由器(OpenWRT White Russian,Busybox 1.00,Dropbear客户端v0.49)上进行一些无线测量。请注意,我无法在路由器上使用更新版本的操作系统或安装其他软件包(只允许脚本或小程序)。

到目前为止,我每隔15分钟将测量结果从路由器记录到服务器上 cat localfile | ssh target_address cat ">" remotefile

我从我的C程序(system())调用日志启动时创建或存在的每个日志文件。我不喜欢的是,系统调用为每个调用打开一个新shell,导致一些开销。好处是,通过这种方式数据被加密,因为我为每个文件建立连接,我可以直接从服务器获取每个文件的反馈,这样我就可以从路由器中删除日志。 (其他从服务器上的路由器调用脚本的方法,然后返回日志记录的值不起作用,因为dropbear ssh客户端不支持此返回)。

所以我要求的是:这可能是一种更优雅的方式,并减少这种开销?到目前为止,我已经阅读了一些关于如何使用TLS / TCP套接字的教程(因此我可以将加密的数据发送到服务器)。另一种可能是HTTP PUT或POST,但我不知道如何获得发送数据的反馈。所以我只想听听你的对手以及你们将如何解决这个问题。

祝你好运

1 个答案:

答案 0 :(得分:1)

由于您正在谈论日志文件,这听起来像是syslog protocol的作业。

我非常确定OpenWRT支持开箱即用。