【发布时间】:2021-02-08 13:57:28
【问题描述】:
我有两个(linux)服务器:A 和 B
一个 PHP 脚本在 A 上,我想在 B 上执行它但不在 B 上处理它,这个脚本不应该存在于 B 上(仅在 ram 中),所以没有“在 B 上复制,从 A 上的 ssh 命令执行, 擦除 B"。
我有 ssh 密钥可以从 A 访问 B,但没有从 B 访问 A。 也许是这样的:
ssh root@B 'php -r ' | echo /myscript/on_serverA
或
<?php
$script=file_get_contents('executable_php_script');
system('ssh root@IP \'php -r "'.$script.'"\'');
有什么想法吗?
注意:这是一个非常具体的案例,所以我不想要替代或安全建议。
【问题讨论】:
-
我有两辆车。我想开我的快车,但我也不想离开我慢车的舒适座位。如何在不离开舒适的汽车的情况下驾驶我的快速汽车? AKA -- 你为什么不能复制文件?
-
因为我问这个问题....当然我“可以”复制文件,但我不想! (对服务器 B 具有 root 访问权限但不在服务器 A 上的人不应该“操纵”脚本)。
-
一个更好的安全概念是只允许受信任的人使用 root 访问服务器..
-
不可能,非常具体的情况,我不需要安全建议。我可以回答:如果这些人对磁盘有物理访问权限,那么 root 访问权限不是唯一的问题,这只是一个示例。