![通过 chrome(或任何浏览器)连接 SSH 服务器](https://linux22.com/image/1605361/%E9%80%9A%E8%BF%87%20chrome%EF%BC%88%E6%88%96%E4%BB%BB%E4%BD%95%E6%B5%8F%E8%A7%88%E5%99%A8%EF%BC%89%E8%BF%9E%E6%8E%A5%20SSH%20%E6%9C%8D%E5%8A%A1%E5%99%A8.png)
我的最终目标是在 ssh 服务器上显示 index.html(在浏览器上)。
我是网络新手。我能够使用命令成功将服务器连接到终端ssh -x serverName@ip-address
。但是当我在 chrome 的 URL 栏中输入ip-address:20
或时ip-address
,我收到“无法访问站点”消息。我的第一个问题是,我可以通过 chrome“连接” ssh 服务器吗?如果可以,怎么做?(“连接”的意思是,我必须显示一个 index.html)
系统配置:
- ssh 服务器操作系统:ubuntu 16.04
- 本地机器操作系统:ubuntu 18.04
- 本地和 ssh 服务器都在同一个网络上
(对不起我的英语不好)
提前致谢
答案1
嗯,是也不是。
相同机器当然可以同时提供 SSH 和 HTTP,但是您需要在其上安装单独的 HTTP 服务(Apache、Nginx 等),并且它将在与 SSH 不同的端口上运行。
SSH 是与 HTTP 完全不同的协议。服务器的 SSH 服务将不能够理解浏览器的 HTTP 请求,也不提供浏览器能够理解的 HTTP 响应。
因此,告诉浏览器连接到 SSH 端口不会得到任何结果。(顺便说一下,SSH 的端口号是 22,而不是 20。)有些浏览器甚至会直接拒绝,但其他浏览器还是会尝试,并且只会收到“协议不匹配”消息。
答案2
也许你会想到基于 Web 的 ssh 终端?例如一号门 查看http://liftoffsoftware.com/Products/GateOne
答案3
遇到了同样的问题,刚刚找到了解决方案。
https://github.com/sspreitzer/docker-shellinabox
$ docker run -p 4200:4200 -e SIAB_PASSWORD=xyz678abc -e SIAB_SUDO=true sspreitzer/shellinabox:latest
(默认用户“guest”...密码“xyz678abc”)
然后你就可以使用docker shell访问其他机器了
希望这有帮助!