c-与远程主机安全连接并检查



我需要用C编写一个程序来检查远程文本文件中计算机MAC地址的出现情况。

  1. 有没有简单的ssh-libs可以让程序连接到远程主机并检查文件是否包含内容?

  2. 或者我应该使用system()函数在远程主机上运行ssh和简单命令。

  3. 它应该是安全的,所以我可能需要使用公钥。是否可以从不同的计算机(每个计算机都有我的程序)使用相同的公钥?

我需要的是检查具有给定MAC地址(或其他标识符)的计算机是否被允许执行某些操作。这个操作应该是远程的,这样我就可以远程启用/禁用功能。

1)我不知道它是否简单,但有http://www.libssh.org/来自IIRC,与cURL 相同的人

2) 是的,你可能应该通过shell脚本的"系统函数"(或者system/popen,如果你绝对需要在C程序中获得结果的话)来实现这一点,因为这将为你重新实现东西省去很多麻烦。

3) 公钥,是的;虽然可以在多个主机/用户上重用公钥,但这不是一种好的安全做法;更好的方法是为每个用户/主机生成一个密钥对,然后将公钥添加到需要连接的机器上的.ssh/authorized_keys。这意味着撤销密钥只是删除单个文本文件中的一行,而不是为多个主机重新生成密钥。然而,如果它对安全性不敏感,或者在这种情况下安全性根本不重要(!),那么使用单个密钥可能不会太疯狂。也就是说,如果您需要多个客户端来检查单个主机上是否存在;如果没有,请更新您的问题,使其在这方面更加清晰。

最新更新