Web终端之使用shellinabox在浏览器进行ssh登录
shellinabox[root@localhost centos]# yum install openssl shellinabox部分系统可能找不到shellinabox包,可手动下载rpm包安装
下载地址
下载rpm包(从上面给的下载地址中找到自己需要版本的下载的地址):
wget http://dl.fedoraproject.org/pub/epel/6/x86_64/Packages/s/shellinabox-2.20-5.el6.x86_64.rpmrpm安装:
[root@localhost centos]# yum install -y shellinabox-2.20-5.el6.x86_64.rpmrpm方式查看安装了哪些文件及安装位置命令:
rpm -ql shellinabox无论哪种安装方式,安装后可编辑/etc/sysconfig/shellinaboxd配置文件来更改端口,默认是4200端口,其它配置如不了解可不更改,本文中只是简单更改端口号为4993
二、安装shellinabox
在Debian / Ubuntu系统上:
shellinabox在默认库是可用的。所以,你可以使用命令来安装它:
$ sudo apt-get install shellinabox
在RHEL / CentOS系统上:
首先,使用命令安装EPEL仓库:
# yum install epel-release
然后,使用命令安装shellinabox:
# yum install shellinabox
完成!


二 修改配置
OPTS="--disable-ssl --localhost-only --user-css Normal:+white-on-black.css -s /admin:LOGIN"
三 重启服务
2. 重启shelinabox服务
在Debian/Ubuntu/Cenotos:
$ sudo systemctl restart shellinabox
或者
$ sudo service shellinabox restart
在RHEL/CentOS系统,运行下面的命令能在每次重启时自动启动shellinaboxd服务
# systemctl enable shellinaboxd
或者
# chkconfig shellinaboxd on
service shellinaboxd restart

4 # Basic options
5 USER=shellinabox
6 GROUP=shellinabox
7 CERTDIR=/var/lib/shellinabox
8 PORT=4993
9 OPT="--disable-ssl-menu -s /:LOGIN"
service shellinaboxd start ,浏览器输入:https://本机ip:4993访问即可外网访问问题:部分用户本地浏览器可以访问,远程无法访问,可能是端口被防火墙屏蔽了,解决方案为,编辑/etc/sysconfig/iptables文件,加入如下的第10行:
7 -A INPUT -p icmp -j ACCEPT
8 -A INPUT -i lo -j ACCEPT
9 -A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
10 -A INPUT -p tcp -m state --state NEW -m tcp --dport 4993 -j ACCEPT
重启iptables服务:service iptables restart
好了现在可以通过浏览器访问Linux主机了,浏览器报ssl证书错误,直接跳过即可
注意:shellinabox默认好像不允许使用root用户登录,新建一个普通用户登陆后切换身份即可
2.修改完保存退出,重启网卡服务
service iptables restart
3.查看端口开放信息
service iptables status
查看是否启动
$ 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
在RHEL/CentOS系统,运行下面的命令能在每次重启时自动启动shellinaboxd服务
# systemctl enable shellinaboxd
或者
# chkconfig shellinaboxd on
当我们采用root用户登录时,登录失败,普通用户登录是没有问题的。
先以普通用户登录,然后su到root用户。其他的工作就和SSH登录是一样的了。

修改配置文件etc/sysconfig/shellinaboxd 中OPTS节点
OPTS="--user-css Normal:+white-on-black.css --disable-ssl-menu -s /:LOGIN"
让背景色是黑色
保存配置 重启
chkconfig shellinaboxd on
sudo service shellinaboxd restart
修改shellinabox的配置
在Debian/Ubuntu系统上shellinabox配置文件的默认位置是/etc/default/shellinabox。在RHEL/CentOS/Fedora上,默认位置在/etc/sysconfig/shellinaboxd。
如果要更改默认端口,
在Debian / Ubuntu:
$ sudo vi /etc/default/shellinabox
在RHEL和CentOS / Fedora:
# vi /etc/sysconfig/shellinaboxd
更改你的端口到任意数量。因为我在本地网络上测试它,所以我使用默认值。
重启shelinabox服务。
在Debian/Ubuntu:
$ sudo systemctl restart shellinabox
或者
$ sudo service shellinabox restart
重启shelinabox服务。
在RHEL/CentOS系统,运行下面的命令能在每次重启时自动启动shellinaboxd服务
# systemctl enable shellinaboxd
或者
# chkconfig shellinaboxd on
现在,去你的客户端系统,打开Web浏览器并导航到:https://ip-address-of-remote-servers:4200。
如果你改变了端口,请填写修改后的端口。
7
你会得到一个证书问题的警告信息。接受该证书并继续。
8
输入远程系统的用户名和密码。现在,您就能够从浏览器本身访问远程系统的外壳。从现在开始,你可以通过本地系统的Web浏览器在你的远程服务器随意操作。
9
当你完成时,记得点击退出。
参考
Web终端之使用shellinabox在浏览器进行ssh登录的更多相关文章
- java web实现同一账号在不同浏览器不能同时登录
网上看了很多方法,个人也看了,自己也总结了几个比较常用的: 前提都是用session监听器,对session的创建与销毁进行监听 一.在用户登录时保存该用户的状态有这几种保存方式: 1.保存到内存中( ...
- jumpserver堡垒机web终端支持复制粘贴功能
公司最近内部搭建了一个jumpserver堡垒机,但是web终端连接Windows时候没法复制粘贴文字文本 然后找了一下jumpserver官方说明没找到相应的说明,但是知道是guacamole这个组 ...
- 支持多用户web终端实现及安全保障(nodejs)
背景 笔者近期从事在线IDE工作的开发,作为本地IDE普遍拥有的功能,terminal(命令行)对项目的git操作以及文件操作有着非常强大的支持.而之前没有web伪终端的情况下,仅仅提供已封装好的gi ...
- 在局域网内部实现远程web终端服务
在局域网内部实现远程web终端服务 前言 如题,本文主要介绍了在局域网内部实现访问web终端服务功能. 实验环境 如下图所示,实验环境由三个部分组成:分别由局域网内部客户端.重定向服务器.以及两台提供 ...
- 第三百三十七节,web爬虫讲解2—PhantomJS虚拟浏览器+selenium模块操作PhantomJS
第三百三十七节,web爬虫讲解2—PhantomJS虚拟浏览器+selenium模块操作PhantomJS PhantomJS虚拟浏览器 phantomjs 是一个基于js的webkit内核无头浏览器 ...
- Web终端SSH功能
http://www.laozuo.org/10703.html------ CentOS安装配置GateOne实现Web终端SSH功能
- Progressive Web App是一个利用现代浏览器的能力来达到类似APP的用户体验的技术——不就是chrome OS吗?
什么是Progressive Web App? Progressive Web App是一个利用现代浏览器的能力来达到类似APP的用户体验的技术,由Google实现,让浏览器打开的网址像APP一样运行 ...
- Web应用多账号系统设计及微信扫码登录实现
Web应用多账号系统设计及微信扫码登录实现 1 前言概述 公司对功能测试,性能测试,安全测试等等都做了比较好的自动化后,急需要一个MIS系统来统一管理这些结果及报表. 此MIS系统特点如下: 仅内 ...
- 终端ssh登录mac用shell打包ipa报错:replacing existing signature
终端ssh登录mac用shell打包ipa报错:replacing existing signature 报错原因:login.keychain被锁定,ssh登录的没有访问权限 解决方法:终端敲入 s ...
随机推荐
- Leetcode 529.扫雷游戏
扫雷游戏 让我们一起来玩扫雷游戏! 给定一个代表游戏板的二维字符矩阵. 'M' 代表一个未挖出的地雷,'E' 代表一个未挖出的空方块,'B' 代表没有相邻(上,下,左,右,和所有4个对角线)地雷的已挖 ...
- RESTful-rest_framework应用第一篇
一:了解RESTful 主要是做前后端分离用的,RESTful只做后台数据和接口,供外面去调用. REST是Representational State Transfer的简称,中文翻译为“表征状态转 ...
- Linux下c++使用pthread库
pthread 库是纯c库,没有类指针的概念,当想phread_create中传递类成员函数时,就会报错,这里针对这种情况,对线程创建做了必要封装,较为简单,继承类,实现run接口,然后使用start ...
- webpack vue-cli 常见问题总结
1. webpack打包压缩 ES6 js..vue报错: ERROR in js/test.js from UglifyJs Unexpected token punc ?(?, expected ...
- HDU 4180 扩展欧几里得
RealPhobia Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total ...
- 个人环境搭建——搭建jenkins持续构建集成环境
---恢复内容开始--- 搭建jenkins持续构建集成环境 要搭建jenkins持续构建集成环境,首先要安装tomcat和JDK: 第一部分,基本说明: 敏捷(Agile) 在软件工程领域 ...
- 基于kubuntu的C/C++开发环境搭建
基于kubuntu的环境搭建 系统: kubuntu 14.04 中文输入法: SICM ibus fcitx:sougou 中文输入法的安装比较复杂,由于各种的不兼容,可能会出现各种的问题: 终端配 ...
- 字符串函数 (strfun)
字符串函数 (strfun) 题目描述 两个等长的由大写英文字母构成的字符串a和b,从a中选择连续子串x,从b中选出连续子串y.子串x与子串y的长度相等. 定义函数f(x,y)为满足条件xi=yi(1 ...
- Codeforces 2014-2015 ACM-ICPC, NEERC, Southern Subregional Contest L. Useful Roads
L. Useful Roads time limit per test:4 seconds memory limit per test:512 megabytes input:standard inp ...
- 【CF1043B】Lost Array(枚举)
题意:给定n与数组a,求所有的k使得存在x数组能按以下规则构造出a n<=1e3,a[i]<=1e6 思路: #include<cstdio> #include<cstr ...