Shell In A Box(发音是shellinabox)是一款基于Web的终端模拟器,由Markus Gutschke开发而成。它有内置的Web服务器,在指定的端口上作为一个基于Web的SSH客户端而运行,可以为你提供一个Web终端模拟器,以便使用任何支持AJAX/JavaScript和CSS的浏览器,远程访问和控制你的Linux服务器SSH外壳,不需要像FireSSH这些任何额外的浏览器插件。
在本教程中,我介绍如何安装Shellinabox,并使用在任何机器上的现代Web浏览器,访问远程SSH终端。如果你由防火墙加以保护,只有HTTP(s)流量才能顺利通过,那么基于Web的SSH非常有用。
将Shellinabox安装在Linux上
默认情况下,借助默认软件库,Shellinabox工具已包含在许多Linux发行版上,其中包括Debian、Ubuntu和Linux Mint。
确保你的软件库已启用,并可以用来从该软件库安装Shellinabox。为了核实,请使用"apt-cache"命令搜索Shellinabox,然后使用"apt-get"命令来安装它。
在Debian、Ubuntu和Linux Mint上:
$ sudo apt-cache search shellinabox
$ sudo apt-get install openssl shellinabox
在RHEL、CentOS和Fedora上:
在基于红帽的发行版上,你需要先启用EPEL软件库,然后使用下面这个"yum"命令来安装它。(Fedora用户不需要启用EPEL软件库,因为它已经是Fedora项目的一部分。)
# yum install openssl shellinabox配置Shellinabox
默认情况下,shellinaboxd侦听本地主机上的TCP端口4200。出于安全方面的原因,我将这个默认端口改成了随机端口(比如端口6175),那样任何人都很难企及你的SSH设备。此外,在安装过程中,一个新的自签名SSL证书会在"/var/lib/shellinabox"下自动创建,以便使用HTTPS协议。
在Debian、Ubuntu和Linux Mint上:
$ sudo vi /etc/default/shellinabox # shellinboxd的Web服务器侦听的TCP端口 SHELLINABOX_PORT=6175 # 指定目的地SSH服务器的IP地址 SHELLINABOX_ARGS="--o-beep -s /:SSH:172.16.25.125" # 如果你想限制只能从本地主机访问shellinaboxd SHELLINABOX_ARGS="--o-beep -s /:SSH:172.16.25.125 --localhost-only"在RHEL、CentOS和Fedora上:
# vi /etc/sysconfig/shellinaboxd # shellinboxd的Web服务器侦听的TCP端口 PORT=6175 # 指定目的地SSH服务器的IP地址 OPTS="-s /:SSH:172.16.25.125" # 如果你想限制只能从本地主机访问shellinaboxd OPTS="-s /:SSH:172.16.25.125 --localhost-only" 启动Shellinabox 一旦你完成了配置工作,就可以使用下面这个命令,启动这项服务。在Debian、Ubuntu和Linux Mint上:
在RHEL和CentOS上:
# service shellinaboxd start在Fedora上:
# systemctl enable shellinaboxd.service # systemctl start shellinaboxd.service 验证Shellinabox 现在不妨使用"netstat"这个命令,验证Shellinabox是否在端口6175上运行。 $ sudo netstat -nap | grep shellinabox or # netstat -nap | grep shellinabox tcp 0 0 0.0.0.0:6175 0.0.0.0:* LISTEN 12274/shellinaboxd现在打开你的浏览器,浏览到https://Your-IP-Adress:6175。你应该能够看到一个基于Web的SSH终端。使用你的用户名和密码进行登录,你应该会看到外壳提示符。
Shellinabox SSH登录
Shellinabox SSH外壳
Shellinabox SSH退出
你可以右击鼠标,使用几项特性和操作,包括更改外壳的外观和感觉。
Shellinabox的更多选项
确保你通过防火墙保障shellinabox,并且针对特定的IP地址打开6175端口,以便远程访问你的Linux外壳。
参考链接:Shellinabox的主页
原文链接:http://www.tecmint.com/shell-in-a-box-a-web-based-ssh-terminal-to-access-remote-linux-servers/
转载于:https://blog.51cto.com/fuwenchao/1332900