Linux Shell Web超級終端工具shellinabox
Shell 是 核心應用程式,是指“為使用者提供操作介面”的軟體,也是命令解析器,它類似於Windows作業系統DOS下的cmd.exe應用程式。它接收使用者命令,然後呼叫相應的應用程式,使用者一般管理Linux伺服器都是習慣用putty、Xshell、SecureCRT、secure shell等客戶端端工具,但是使用這些客戶端都是需要在本地安裝後才能使用,如果換其它電腦也是需要重新安裝,這樣非常使用起來非常麻煩,所以,我們今天就來介紹一塊非常方便的shell客戶端工具,使用系統自帶的瀏覽器來管理Linux服務終端,是一款能隨時在任何終端上面管理,這一款執行在linux下面的工具 shellinabox,只需要在Linux伺服器上面安裝並配置好shellinabox。
shellinabox 是由Markus Gutschke建立的基於Web的終端模擬器。它具有內建的Shell Web服務端,在指定埠上作為基於Web的SSH客戶端執行,並提示您使用任何支援AJAX/JavaScript和CSS的瀏覽器遠端訪問和控制Linux Server SSH Shell,而無需任何其他瀏覽器外掛,使用非常方便 ,不過安裝和配置是需要有點點Linux基礎,如果覺得自己完全不懂Linux,可以建議去購買 這本教程,非常適合初學者入門,或者去此教程的官網檢視詳細的資料,直接在百度輸入此書名就可以直接進入官網 。
shellinbox 是一款在Linux伺服器下有一個內建的web server作為基本的web ssh client,允許你透過指定的埠訪問linux伺服器的ssh shell,只要你的瀏覽器支援AJAX/JS/CSS就可以訪問,不過現在主流的作業系統自帶的瀏覽器都支援,shellinabox是一款開源的輕量級軟體,在安裝shellinabox之前要確定Linux服務端是否安裝了openssl庫;debian和ubuntu官方還提供有deb安裝包,而centos也有rpm包,也可以透過yum源安裝,安裝及配置也比較簡單,下面我們來詳細的安裝和配置shellinabox。
一、在RHEL、 CentOS系統上面安裝及配置步驟如下
# yum install openssl shellinabox
Loaded plugins: fastestmirror
Determining fastest mirrors
epel/x86_64/metalink | 9.2 kB 00:00:00
* base: mirrors.aliyun.com
* epel: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
base | 3.6 kB 00:00:00
epel | 3.2 kB 00:00:00
extras | 3.4 kB 00:00:00
updates | 3.4 kB 00:00:00
(1/6): extras/7/x86_64/primary_db | 156 kB 00:00:00
(2/6): base/7/x86_64/group_gz | 166 kB 00:00:01
(3/6): epel/x86_64/updateinfo | 940 kB 00:00:08
(4/6): updates/7/x86_64/primary_db | 1.3 MB 00:00:10
(5/6): epel/x86_64/primary | 3.6 MB 00:00:21
(6/6): base/7/x86_64/primary_db | 6.0 MB 00:00:26
epel 12745/12745
Resolving Dependencies
--> Running transaction check
---> Package openssl.x86_64 1:1.0.2k-12.el7 will be updated
---> Package openssl.x86_64 1:1.0.2k-16.el7 will be an update
--> Processing Dependency: openssl-libs(x86-64) = 1:1.0.2k-16.el7 for package: 1:openssl-1.0.2k-16.el7.x86_64
---> Package shellinabox.x86_64 0:2.20-5.el7 will be installed
--> Running transaction check
---> Package openssl-libs.x86_64 1:1.0.2k-12.el7 will be updated
--> Processing Dependency: openssl-libs(x86-64) = 1:1.0.2k-12.el7 for package: 1:openssl-devel-1.0.2k-12.el7.x86_64
---> Package openssl-libs.x86_64 1:1.0.2k-16.el7 will be an update
--> Running transaction check
---> Package openssl-devel.x86_64 1:1.0.2k-12.el7 will be updated
---> Package openssl-devel.x86_64 1:1.0.2k-16.el7 will be an update
--> Finished Dependency Resolution
Dependencies Resolved
======================================================================================
Package Arch Version Repository Size
======================================================================================
Installing:
shellinabox x86_64 2.20-5.el7 epel 136 k
Updating:
openssl x86_64 1:1.0.2k-16.el7 base 493 k
Updating for dependencies:
openssl-devel x86_64 1:1.0.2k-16.el7 base 1.5 M
openssl-libs x86_64 1:1.0.2k-16.el7 base 1.2 M
Transaction Summary
======================================================================================
Install 1 Package
Upgrade 1 Package (+2 Dependent packages)
Total download size: 3.3 M
Is this ok [y/d/N]: y
Downloading packages:
No Presto metadata available for base
(1/4): openssl-1.0.2k-16.el7.x86_64.rpm | 493 kB 00:00:01
(2/4): shellinabox-2.20-5.el7.x86_64.rpm | 136 kB 00:00:01
(3/4): openssl-devel-1.0.2k-16.el7.x86_64.rpm | 1.5 MB 00:00:05
(4/4): openssl-libs-1.0.2k-16.el7.x86_64.rpm | 1.2 MB 00:00:05
-----------------------------------------------------------------------------------------------------------------------
Total 469 kB/s | 3.3 MB 00:00:07
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Updating : 1:openssl-libs-1.0.2k-16.el7.x86_64 1/7
Updating : 1:openssl-1.0.2k-16.el7.x86_64 2/7
Installing : shellinabox-2.20-5.el7.x86_64 3/7
Updating : 1:openssl-devel-1.0.2k-16.el7.x86_64 4/7
Cleanup : 1:openssl-devel-1.0.2k-12.el7.x86_64 5/7
Cleanup : 1:openssl-1.0.2k-12.el7.x86_64 6/7
Cleanup : 1:openssl-libs-1.0.2k-12.el7.x86_64 7/7
Verifying : 1:openssl-libs-1.0.2k-16.el7.x86_64 1/7
Verifying : 1:openssl-devel-1.0.2k-16.el7.x86_64 2/7
Verifying : shellinabox-2.20-5.el7.x86_64 3/7
Verifying : 1:openssl-1.0.2k-16.el7.x86_64 4/7
Verifying : 1:openssl-devel-1.0.2k-12.el7.x86_64 5/7
Verifying : 1:openssl-1.0.2k-12.el7.x86_64 6/7
Verifying : 1:openssl-libs-1.0.2k-12.el7.x86_64 7/7
Installed:
shellinabox.x86_64 0:2.20-5.el7
Updated:
openssl.x86_64 1:1.0.2k-16.el7
Dependency Updated:
openssl-devel.x86_64 1:1.0.2k-16.el7 openssl-libs.x86_64 1:1.0.2k-16.el7
Complete!
二、 配置shellinaboxd
192.168.3.160 是SSH伺服器IP地址 ,
# vim /etc/sysconfig/shellinaboxd
# TCP port that shellinboxd's webserver listens on
PORT =6175
# specify the IP address of a destination SSH server
OPTS="-s /:SSH:192.168.3.160" #(https 協議)
#OPTS="-t -s /:SSH:192.168.3.160" #(http 協議)
# if you want to restrict access to shellinaboxd from localhost only
# 下面配置是僅主機訪問,其它主機不能訪問
#OPTS="-s /:SSH:192.168.3.160 --localhost-only"
shellinaboxd 預設埠是:4200,我這裡修改為6175。
Shellinaboxd 常用引數使用的幫助手冊
# shellinaboxd --help
List of command line options:
-b, --background[=PIDFILE] run in background
-c, --cert=CERTDIR set certificate dir (default: $PWD)
--cert-fd=FD set certificate file from fd
--css=FILE attach contents to CSS style sheet
--cgi[=PORTMIN-PORTMAX] run as CGI
-d, --debug enable debug mode
-f, --static-file=URL:FILE serve static file from URL path
-g, --group=GID switch to this group (default: nobody)
-h, --help print this message
--linkify=[none|normal|aggressive] default is "normal"
--localhost-only only listen on 127.0.0.1
--no-beep suppress all audio output
-n, --numeric do not resolve hostnames
-m, --messages-origin=ORIGIN allow iframe message passing from origin
--pidfile=PIDFILE publish pid of daemon process
-p, --port=PORT select a port (default: 4200)
-s, --service=SERVICE define one or more services
-t, --disable-ssl disable transparent SSL support
--disable-ssl-menu disallow changing transport mode
--disable-utmp-logging disable logging to utmp and wtmp
-q, --quiet turn off all messages
--unixdomain-listen on unix socket
-u, --user=UID switch to this user (default: nobody)
--user-css=STYLES defines user-selectable CSS options
-v, --verbose enable logging messages
--version prints version information
--disable-peer-check disable peer check on a session
三、啟動、停止、自啟動服務
Centos 6
# service shellinaboxd start // 啟動服務
# service shellinaboxd stop // 停止服務
# service shellinaboxd restart // 重啟服務
# chkconfig shellinaboxd on // 自啟服務
Centos 7
# systemctl start shellinaboxd.service
# systemctl stop shellinaboxd.service
# systemctl restart shellinaboxd.service
# systemctl enable shellinaboxd.service
強制關閉 Shellinaboxd
查詢到 Shellinaboxd 的程式 pid ,kill 即可
# ps -aux|grep shellinaboxd | grep -v grep | awk ‘{print $1}’
也可在啟動時加上 -p 引數,將程式 pid 儲存到指定的檔案中,需要關閉時讀取它並進行 kill
四、檢視服務狀態
# netstat -nap | grep shellinabox
tcp 0 0 0.0.0.0:6175 0.0.0.0:* LISTEN 118916/shellinaboxd
預設60s不登入自動斷開
登入成功
退出web Shell終端:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31559985/viewspace-2657200/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- LINUX終端是不是就是SHELL?Linux
- 10 個超級有趣的 Linux 終端遊戲Linux遊戲
- 美化Linux終端和Shell提示符Linux
- Linux分享筆記:shell終端的介紹Linux筆記
- Ubuntu超級終端Terminator使用教程Ubuntu
- 鴻蒙系統超級終端怎麼使用?鴻蒙系統超級終端開啟教程鴻蒙
- flink~使用shell終端
- 認識終端和shell
- 鴻蒙系統超級終端是幹什麼用的?鴻蒙系統超級終端的作用詳解鴻蒙
- 終端和shell的區別
- 【推薦】5款超好用的Linux虛擬終端!Linux
- chkservice:在 Linux 終端管理 systemd 單元的工具Linux
- Mac 終端執行 shell 指令碼Mac指令碼
- 終端SSH工具SecureCRTSecurecrt
- Linux終端的概念Linux
- win10系統如何開啟超級終端【圖文】Win10
- 分散式資料物件:超級終端的"全域性變數"分散式物件變數
- Linux終端是什麼?終端有什麼作用?Linux
- 終端SSH工具:SecureCRT for macSecurecrtMac
- SecureCRT for mac 終端SSH工具SecurecrtMac
- SecureCRT for mac(終端SSH工具)SecurecrtMac
- 終端SSH工具:SecureCRT MacSecurecrtMac
- 輕量級超級 css 工具CSS
- Linux終端記錄神器Linux
- 又一款眼前一亮的Linux終端工具!Linux
- SecureCRT Mac_終端SSH工具SecurecrtMac
- 修改Kali Linux終端主題Linux
- 修改linux終端提示符Linux
- 【Linux】命令終端美化優化Linux優化
- Linux如何安裝Terminus終端Linux
- Linux終端回話記錄和回放工具 - asciinema使用總結LinuxASCII
- linux shell 指令碼語言教程(超詳細!)Linux指令碼
- 深度佈局智慧終端產業,竹芒科技打造自有“超級工廠”產業
- web模擬終端部落格系統Web
- Web 模擬終端部落格系統Web
- linux下啟動和終止JAVA程式shell指令碼LinuxJava指令碼
- SecureCRT 9.3.2 終端模擬SSH工具Securecrt
- prometheus指標終端繪圖工具Prometheus指標繪圖