我有一个脚本,用C写的,这需要3个参数:主机名,密码,就像这样:隐藏命令的参数()
./myscript 1.1.1.1 name mypassword
我把这个使用PHP exec命令(需要,PHP中没有的功能)。
exec('./myscript $host $name $password');
在Linux上,使用ps命令,我可以看到:
./myscript 1.1.1.1 name password.
如何隐藏我的密码,你不能用ps看到它在Linux上?
谢谢。
我有一个脚本,用C写的,这需要3个参数:主机名,密码,就像这样:隐藏命令的参数()
./myscript 1.1.1.1 name mypassword
我把这个使用PHP exec命令(需要,PHP中没有的功能)。
exec('./myscript $host $name $password');
在Linux上,使用ps命令,我可以看到:
./myscript 1.1.1.1 name password.
如何隐藏我的密码,你不能用ps看到它在Linux上?
谢谢。
有一些例子可以做你喜欢的事情: http://www.lenzg.net/archives/256-Basic-MySQL-Security-Providing-passwords-on-the-command-line.html 请记住,你的密码在一小段时间内仍然可见。
您可以在开始执行C脚本后简单地提示密码,并通过PHP exec中的管道转发密码。
由于您处于运行环境。我会暂时将您的密码存储在环境变量(SET
)中,并在您的exec()
中使用此变量。这样你的密码就不会出现在ps
。
一个小例子请。 P.S.名称和密码正在改变(它们是用于用户身份验证的) – nn4n4s
既然你已经接受了一个答案,我怀疑这仍然是userfull,但是为了设置一个环境变量:http://php.net/manual/en/function.putenv.php –
您是否需要'。/ myscript'的其他输出,或者是否可以由另一个进程运行?你需要知道从它返回的数据,如果是这样的话添加'&'应该这样做'exec(./ myscript $ host $ name $ password&')'这将基本上产生另一个进程来处理exec ...(类似于在这种情况下的一个线程) – brendosthoughts