1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
<code>我的部落格已遷移到xdoujiang.com請去那邊和我交流</code>
<code>The shellinaboxd daemon implements a webserver that listens on the specified port.</code>
<code>The web server publishes one or </code><code>more</code> <code>services that will be displayed </code><code>in</code> <code>a VT100 emulator implemented as an AJAX web application. </code>
<code>By default, the port is 4200 and the default service URL is http:</code><code>//localhost</code><code>:4200/.</code>
<code>If no particular service was requested,the server launches </code><code>/bin/login</code> <code>querying the user </code><code>for</code> <code>their username and password.</code>
<code>It </code><code>then</code> <code>starts the user s default login shell.Any modern JavaScript and CSS enabled browser will be able to access the published</code>
<code>service without requiring additional plugins.</code>
<code>Shellinabox是一個基于web的終端模拟器,采用C語言編寫,使用Ajax與後端服務通信。</code>
<code>它實作了一個Webserver,預設監聽4200端口,在支援Javascript和CSS的浏覽器上通路http:</code><code>//host</code><code>:4200即可。并且可以配置SSL</code><code>/TLS</code><code>證書,使用https方式加密通信。</code>
<code>一、基礎環境</code>
<code>1、</code><code>cat</code> <code>/etc/debian_version</code>
<code>7.8</code>
<code>2、</code><code>uname</code> <code>-r</code>
<code>3.2.0-4-amd64</code>
<code>3、ip</code>
<code>10.1.10.117</code>
<code>二、shellinabox安裝</code>
<code>1、直接使用apt-get安裝shellinabox</code>
<code>apt-get -y </code><code>install</code> <code>shellinabox</code>
<code>2、使用dpkg來檢視下一共安裝哪些配置檔案、指令、文檔及路徑在哪裡</code>
<code>dpkg -L shellinabox</code>
<code>/.</code>
<code>/usr</code>
<code>/usr/bin</code>
<code>/usr/bin/shellinaboxd</code>
<code>/usr/share</code>
<code>/usr/share/man</code>
<code>/usr/share/man/man1</code>
<code>/usr/share/man/man1/shellinaboxd</code><code>.1.gz</code>
<code>/usr/share/doc</code>
<code>/usr/share/doc/shellinabox</code>
<code>/usr/share/doc/shellinabox/changelog</code><code>.Debian.gz</code>
<code>/usr/share/doc/shellinabox/AUTHORS</code>
<code>/usr/share/doc/shellinabox/TODO</code>
<code>/usr/share/doc/shellinabox/examples</code>
<code>/usr/share/doc/shellinabox/examples/cgi-mode-example</code><code>.sh</code>
<code>/usr/share/doc/shellinabox/changelog</code><code>.gz</code>
<code>/usr/share/doc/shellinabox/README</code>
<code>/usr/share/doc/shellinabox/copyright</code>
<code>/usr/share/doc/shellinabox/NEWS</code><code>.gz</code>
<code>/usr/share/lintian</code>
<code>/usr/share/lintian/overrides</code>
<code>/usr/share/lintian/overrides/shellinabox</code>
<code>/etc</code>
<code>/etc/shellinabox</code>
<code>/etc/shellinabox/options-enabled</code>
<code>/etc/shellinabox/options-enabled/README</code>
<code>/etc/shellinabox/options-available</code>
<code>/etc/shellinabox/options-available/00_White</code> <code>On Black.css</code>
<code>/etc/shellinabox/options-available/00</code><code>+Black on White.css</code>
<code>/etc/shellinabox/options-available/01_Monochrome</code><code>.css</code>
<code>/etc/shellinabox/options-available/README</code>
<code>/etc/shellinabox/options-available/01</code><code>+Color Terminal.css</code>
<code>/etc/default</code>
<code>/etc/default/shellinabox</code>
<code>/etc/init</code><code>.d</code>
<code>/etc/init</code><code>.d</code><code>/shellinabox</code>
<code>/etc/shellinabox/options-enabled/00_White</code> <code>On Black.css</code>
<code>/etc/shellinabox/options-enabled/00</code><code>+Black on White.css</code>
<code>/etc/shellinabox/options-enabled/01_Monochrome</code><code>.css</code>
<code>/etc/shellinabox/options-enabled/01</code><code>+Color Terminal.css</code>
<code>3、修改配置</code>
<code>1)先備份下配置檔案</code>
<code>cp</code> <code>/etc/default/shellinabox</code> <code>/etc/default/shellinabox</code><code>.bak</code>
<code>2)修改内容</code>
<code>diff</code> <code>/etc/default/shellinabox</code> <code>/etc/default/shellinabox</code><code>.bak</code>
<code>5c5</code>
<code>< SHELLINABOX_PORT=8888</code>
<code>---</code>
<code>> SHELLINABOX_PORT=4200</code>
<code>18c18</code>
<code>< SHELLINABOX_ARGS=</code><code>"--no-beep -s /:SSH:10.1.10.117"</code>
<code>> SHELLINABOX_ARGS=</code><code>"--no-beep"</code>
<code>3)參數說明</code>
<code>--no-beep not only are audible signals undesired </code><code>in</code> <code>some working environments,</code>
<code>but browser support </code><code>for</code> <code>media playback is often buggy,too.</code>
<code>Setting this option suppresses all audio playback and enables the visual bell by default.</code>
<code>4、重新開機服務</code>
<code>/etc/init</code><code>.d</code><code>/shellinabox</code> <code>restart</code>
<code>5、檢視端口和程序</code>
<code>1)</code><code>netstat</code> <code>-tupnl|</code><code>grep</code> <code>shell</code>
<code>tcp 0 0 0.0.0.0:8888 0.0.0.0:* LISTEN 17230</code><code>/shellinaboxd</code>
<code>2)</code><code>ps</code> <code>-ef |</code><code>grep</code> <code>shell</code>
<code>102 17230 1 0 00:11 ? 00:00:00 </code><code>/usr/bin/shellinaboxd</code> <code>-q --background=</code><code>/var/run/shellinaboxd</code><code>.pid -c </code><code>/var/lib/shellinabox</code> <code>-p 8888 -u shellinabox -g shellinabox --user-css Black on White:+</code><code>/etc/shellinabox/options-enabled/00</code><code>+Black on White.css,White On Black:-</code><code>/etc/shellinabox/options-enabled/00_White</code> <code>On Black.css;Color Terminal:+</code><code>/etc/shellinabox/options-enabled/01</code><code>+Color Terminal.css,Monochrome:-</code><code>/etc/shellinabox/options-enabled/01_Monochrome</code><code>.css --no-beep -s /:SSH:10.1.10.117</code>
<code>102 17231 17230 0 00:11 ? 00:00:00 </code><code>/usr/bin/shellinaboxd</code> <code>-q --background=</code><code>/var/run/shellinaboxd</code><code>.pid -c </code><code>/var/lib/shellinabox</code> <code>-p 8888 -u shellinabox -g shellinabox --user-css Black on White:+</code><code>/etc/shellinabox/options-enabled/00</code><code>+Black on White.css,White On Black:-</code><code>/etc/shellinabox/options-enabled/00_White</code> <code>On Black.css;Color Terminal:+</code><code>/etc/shellinabox/options-enabled/01</code><code>+Color Terminal.css,Monochrome:-</code><code>/etc/shellinabox/options-enabled/01_Monochrome</code><code>.css --no-beep -s /:SSH:10.1.10.117</code>
<code>三、web用戶端測試</code>
<a href="http://s3.51cto.com/wyfs02/M01/6F/A9/wKioL1Wkq37RqNHOAAJpuO182ng667.jpg" target="_blank"></a>
<code>四、參考文章</code>
<code>http:</code><code>//www</code><code>.tecmint.com</code><code>/shell-in-a-box-a-web-based-ssh-terminal-to-access-remote-linux-servers/</code>
<code>https:</code><code>//github</code><code>.com</code><code>/shellinabox/shellinabox</code>
本文轉自 xdoujiang 51CTO部落格,原文連結:http://blog.51cto.com/7938217/1674056,如需轉載請自行聯系原作者