作者:mobiledu2502884243 | 来源:互联网 | 2017-06-22 22:56
Shellinabox是一个利用Ajax技术构建的基于Web的远程Terminal模拟器,也就是说安装了该软件之后,不需要开启ssh服务,通过Web网页就可以对远程主机进行维护操作了,出于安全考虑,Shellinabox默认强制使用了https协议,这是个挺有趣的技术,因而就在centos上面折腾了下,下面记录了主要的操作步骤
1、shellinabox安装
wget http://shellinabox.googlecode.com/files/shellinabox-2.10.tar.gz
tar -zxvf shellinabox-2.10.tar.gz
cd shellinabox-2.10
./configure --prefix=/usr/local/shellinabox
make && make install
2、shellinabox试启动
/usr/local/shellinabox/bin/shellinaboxd
/usr/local/shellinabox/bin/shellinaboxd -b -t
#-b选项代表在后台启动,-t选项表示不使用https方式启动,默认以nobody用户身份,监听TCP4200端口
netstat -ntpl |grep shell
#查看shellinabox启用的端口
killall shellinaboxd
#结束进程
3、生成pem证书,以https方式启动,pem证书的格式为公钥加私钥,并以x509的格式进行打包
openssl genrsa -des3 -out my.key 1024
#这条命令运行后需要输入大量信息
openssl req -new -key my.key -out my.csr
cp my.key my.key.org
openssl rsa -in my.key.org -out my.key
openssl x509 -req -days 3650 -in my.csr -signkey my.key -out my.crt
cat my.crt my.key > certificate.pem
/usr/local/shellinabox/bin/shellinaboxd -c /root -u root -b
#-c参数指定pem证书目录,默认证书名为certificate.pem,-u 选项指定启动的用户身份
netstat -ntpl |grep 4200
ps -ef |grep shell
好了,现在可以实现用IE做为SSH客户端访问服务器了,在IE地址栏输入 https://192.168.0.99:4200 (这是我的内网测试服务器IP),就可以看到下面的页面了。
接下来你就可以像登陆SSH客户端一样输入命令了。
安装过程中出了点问题,整个过程安装完的时候,在IE已经能看到 login: 信息了,但是一直root登陆不上去,后来问了下一个linux群里的朋友,他说好像默认是不让root登陆的,只能其它用户登陆,然后再 su - 切换过去。