问题: 有3个设备:我的服务器(Linux),跳转服务器(Linux)和Cisco箱。 我可以手动SSH到跳转服务器上,并从那里ssh到思科盒并交互式运行命令。 有没有一种方法可以实现这个使用PHP编程? 我希望能够在思科盒子中对来自思科盒子的响应进行interogate,并相应地裁剪下一个命令。 我在Python中做了类似的事情,但能够直接使用套接字(中间没有跳转服务器) 但我更喜欢使用PHP,如果我可以。ssh通过跳转服务器进行交互式会话
回答
man ssh
:
-t Force pseudo-terminal allocation. This can be used to execute
arbitrary screen-based programs on a remote machine, which can be
very useful, e.g. when implementing menu services. Multiple -t
options force tty allocation, even if ssh has no local tty.
因此,ssh -t jump_server ssh -t cisco_box ...
此外,您还可以通过proc_open或exec在PHP中使用这样的命令。然后你将得到PHP中执行的ssh的stdin,stdout和stderr(以及其他文件描述符),这样你就可以向/从cisco框发送/接收命令和数据。
这取决于另一端的程序是否需要tty(其中-t
强制执行)。像mc这样的程序确实需要tty,但是大多数命令行工具不需要(然后简单地省略-t
)。
如果这个想法有任何有效性,我怎么能把它封装在PHP中,然后发送命令并接收输出。我很抱歉,但我觉得这个时候我有点模糊了。 –
经过许多不成功的尝试之后,我现在正在尝试使用Python。我的新问题是在http://stackoverflow.com/questions/42557671/how-do-i-capture-password-prompt –
尝试simpe使用从shell,当它的工作,弄清楚如何从PHP调用它。 –
- 1. 通过SSH在PHP中与多台服务器进行交互
- 2. 非交互式ssh到服务器,但交互式
- 3. 通过PHP进行SSH会话
- 4. 通过web服务器上的多个文件进行交互
- 5. SSH挂在“进入交互式会话”阶段
- 6. 流浪汉模式中通过登录服务器(多跳SSH)
- 7. 如何从Ruby中的跳伞服务器SSH跳转到服务器和SSH
- 8. 如何与clisp中的ssh会话进行交互?
- 9. python ssh到跳转服务器,然后从跳转服务器ssh到主机执行命令
- 10. 与运行在非交互式SSH会话参数不工作
- 11. 在交互式python调试会话中跳过指令
- 12. selenium无服务器通过SSH运行
- 13. 如何使用SSH交互会话
- 14. 如何通过web服务从xamarin与SQL Server进行交互?
- 15. 与通过HTTP请求公开的服务进行交互
- 16. 无法通过SSH从JAVA程序进行交互
- 17. 通过SSH进行SSH(或如何通过SSH“通过SSH进行通信”)
- 18. Angular2 Observable,通过服务中的对象进行交互会产生错误
- 19. 通过互联网进行客户机/服务器通信
- 20. 无法在Windows服务器上通过SSH会话与Plink执行命令
- 21. 使用SSH通过另一台服务器通过SSH连接到服务器
- 22. 通过服务器的Rails会话
- 23. 通过SSH密钥进行服务器身份验证失败
- 24. 通过ssh运行交互式Bash命令
- 25. 我可以通过ssh交互式运行程序吗?
- 26. 如何通过red5服务器在音频中进行双向交互
- 27. 设置网络服务与QuickBooks通过网络连接器进行交互
- 28. 通过互联网与客户端/服务器应用程序进行交互的最佳方式?
- 29. 从PHP启动交互式SSH bash会话
- 30. 来自交互式SSH会话的PHP CLI记录输出
谷歌'php ssh' – Ibu
或谷歌交互式php外壳。 – Dimi
我一直在谷歌搜索 - PHP + SSH,SSH隧道,端口转发等整天,但没有发现任何作品。请实用建议。 –