在服务器远程c窗口上执行自定义命令

时间:2013-12-18 10:27:22

标签: c linux windows

我在C中创建了一个Linux文件服务器和一个Windows客户端。我希望能够通过服务器上的客户端执行命令。例如,我希望服务器执行'ls'命令并发回结果。我知道服务器可以用execl()执行ls,但我感兴趣的是如何让服务器知道要执行的命令。

输入示例(客户端):

ls server

输出示例(服务器发送的结果):

mail.c public.html test.txt docu.php

任何代码都会有所帮助,但某种形式的解释会很好。

1 个答案:

答案 0 :(得分:0)

执行此操作的一种方法可能是在Linux主机上设置一个小型Web服务API,以便可以通过http(s)完成此操作。如果您在Linux主机上运行apache和PHP,Windows客户端只需将命令发布到PHP脚本,然后PHP脚本就可以运行命令(通过shell_exec函数),并将结果回显给Windows客户。但是,每当你做这样的事情时,你需要在防御性思考,因为有许多攻击向量与这样的事情。请务必检查PHP脚本以确保命令是安全的。并且,如果可能,仅限制连接到Windows客户端。