通常情况下我们在访问任何远程服务器时,会使用常见的通信工具如OpenSSH和Putty等但是,有可能我们在防火墙后面不能使用这些工具访问远程系统或者防火墙只允许HTTPS流量才能通过。不用担心!即使你在这样的防火墙后面我们依然有办法来访问你的远程系统。而且你不需要安装任何类似于OpenSSH或Putty的通讯工具。伱只需要有一个支持JavaScript和CSS的现代浏览器并且你不用安装任何插件或第三方应用软件。
这个shellinaboxd守护进程实现了一个web服务怎么开发器能够侦听指定的端口。其web服务怎么开发器可以发布一个或多个服务这些服务显示在用 AJAX Web 应用实现的VT100模拟器中。默认情况下端口为4200。你可以更改默認端口到任意选择的任意端口号在你的远程服务器安装shellinabox以后,如果你想从本地系统接入打开Web浏览器并导航到:http://IP-Address:4200/。输入你的用户名和密碼然后就可以开始使用你远程系统的Shell。看起来很有趣不是吗?确实 有趣!
shellinabox不是SSH客户端或任何安全软件它仅仅是一个应用程序,能够通过Web浏览器模拟一个远程系统的Shell同时,它和SSH没有任何关系这不是可靠的安全地远程控制您的系统的方式。这只是迄今为止最简单的方法之一无论如何,你都不应该在任何公共网络上运行它
shellinabox在默认库是可用的。所以你可以使用命令来安装它:
首先,使用命令安装EPEL仓庫:
正如我之前提到的shellinabox侦听端口默认为4200。你可以将此端口更改为任意数字以防别人猜到。
更改你的端口到任意数字因为我在本地网絡上测试它,所以我使用默认值
在RHEL/CentOS系统,运行下面的命令能在每次重启时自动启动shellinaboxd服务
如果你正在运行一个防火墙记得要打开端口4200或任何你指定的端口。
例如在RHEL/CentOS系统,你可以如下图所示允许端口
注意:如果你改变了端口,请填写修改后的端口
你会得到一个证书问題的警告信息。接受该证书并继续
而且注意访问URL时记得用“https”的方式
输入远程系统的用户名和密码。现在您就能够从浏览器本身访问遠程系统的外壳。
右键点击你浏览器的空白位置你可以得到一些有很有用的额外菜单选项。
从现在开始你可以通过本地系统的Web浏览器茬你的远程服务器随意操作。
当你完成工作时记得输入exit
退出。
当再次连接到远程系统时单击连接按钮,然后输入远程服务器的用户名囷密码
如果想了解shellinabox更多细节,在你的终端键入下面的命令:
同时参考,来了解shellinabox的综合使用细节
正如我之前提到的,如果你在服务器運行在防火墙后面那么基于web的SSH工具是非常有用的。有许多基于web的SSH工具但shellinabox是非常简单而有用的工具,可以从的网络上的任何地方模拟┅个远程系统的Shell。因为它是基于浏览器的所以你可以从任何设备访问您的远程服务器,只要你有一个支持JavaScript和CSS的浏览器