您的位置:首页 > 运维架构 > Shell

Shell In A Box:一款访问远程Linux服务器的SSH终端

2016-02-01 14:20 579 查看
Shell In A Box是一款基于Web的终端模拟器,本文将介绍如何安装Shellinabox,并使用在任何机器上的现代Web浏览器,访问远程SSH终端。如果你由防火墙加以保护,只有HTTP(s)流量才能顺利通过,那么基于Web的SSH非常有用。

AD:【51CTO技术沙龙】春节献礼:移动APP创新之美_UI设计

【51CTO精选译文】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上:

$ sudo service shellinaboxd start


在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/

【编辑推荐】

SSH基本原理和免密码登录

用SHELL脚本来防SSH和vsftpd暴力破解

16条高效使用SSH的秘籍

PAC管理器:一款远程SSH/FTP/Telnet会话管理工具

Linux下限制Shell:Rssh和Scponly
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: