通过浏览器向Linux服务器发送命令

在公有云上,我们常看到通过浏览器能向远程的服务器发送命令,初看是不是很神奇。 今天我们用shellinabox为例来体验一下,shellinabox是一款基于 Web 的远程 Terminal 开源模拟器软件,本篇文章基于centos7.3环境。

安装 EPEL yum源

wget http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -ivh epel-release-latest-7.noarch.rpm
yum repolist     

安装shellinabox,关闭https

默认配置文件我们只加了一个-t 指明不以 SSL 运行,来关闭https,启动服务时会自动产生证书。

yum -y install shellinabox
vim /etc/sysconfig/shellinaboxd
--
OPTS="--disable-ssl-menu  -t -s /:LOGIN"     
--
systemctl start  shellinaboxd
[root@pangu ~]# ls /var/lib/shellinabox/
certificate-localhost.pem  certificate.pem

新建普通用户

useradd  icai
passwd  icai

本地测试连接

curl -I http://10.10.10.128:4200 ,状态码返回200OK,测试通过

远程连接

通过chrome访问http://10.10.10.128:4200/ ,用普通用户 icai
登录成功。

通过浏览器向Linux服务器发送命令_第1张图片
login.PNG

关于深层次的东西,如何支持https,shellinabox实现方式,大家可以自己研究一下。

相关开源软件:

Gate One http://liftoffsoftware.com/Products/GateOne
wssh https://github.com/aluzzardi/wssh
Ajaxterm https://github.com/antonylesuisse/qweb
Anyterm http://anyterm.org/
Commando.io http://commando.io/
tty.js https://github.com/chjj/tty.js/
KeyBox http://sshkeybox.com/
Webmin http://www.webmin.cn/

你可能感兴趣的:(通过浏览器向Linux服务器发送命令)