Shell In A Box - 通過 Web 瀏覽器訪問 Linux SSH 終端
Shell In A Box(發(fā)音為 shellinabox)是由 Markus Gutschke 開發(fā)的基于 Web 的終端仿真器。內(nèi)置 Web 服務(wù)器,作為基于 Web 的 SSH 客戶端在專用端口上運(yùn)行,并要求您訪問 Web 終端仿真器,以使用 AJAX/JavaScript 和 CSS 遠(yuǎn)程訪問和管理您的 Linux 服務(wù)器 SSH Shell 。無需額外的數(shù)據(jù)庫插件(例如 FireSSH)即可啟用數(shù)據(jù)庫。
在本教程中,我將解釋如何在任何計(jì)算機(jī)上安裝 Shellinabox 并使用現(xiàn)代 Web 瀏覽器訪問遠(yuǎn)程 SSH 終端。當(dāng)您受到防火墻保護(hù)并且只有 HTTPS 流量可以通過時(shí),對(duì) Linux 服務(wù)器的 Web SSH 訪問特別有用。
在 Linux 系統(tǒng)上安裝 Shellinabox
默認(rèn)情況下,Shellinabox 工具使用默認(rèn)包管理器通過默認(rèn)存儲(chǔ)庫安裝在基于 Debian 的 Linux 發(fā)行版上,如圖所示。
$ sudo apt install openssl shellinabox
在基于 Red Hat 的發(fā)行版上,您必須使用以下命令從源安裝它。
# yum install git openssl-devel pam-devel zlib-devel autoconf automake libtool
# git 克隆 https://github.com/shellinabox/shellinabox.git && cd shellinabox
# 自動(dòng)重新配置-i
# ./配置 && 制作
在 Linux 系統(tǒng)中配置 Shellinabox
默認(rèn)情況下,shellinaboxd 偵聽本地主機(jī)上的 TCP 端口 4200。出于安全原因,我隨機(jī)更改了此默認(rèn)端口(即 6175),以使任何人更難訪問您的 SSH 盒子。
此外,在安裝過程中,會(huì)在“/var/lib/shellinabox”下自動(dòng)生成新的自簽名 SSL 證書,以使用 HTTPS 協(xié)議。
$ sudo vi /etc/default/shellinabox
或者
$ sudo nano /etc/default/shellinabox
進(jìn)行配置更改,如下所示...
# shellinaboxd 是否應(yīng)該自動(dòng)啟動(dòng)
SHELLINABOX_DAEMON_START=1
# shellinboxd 的網(wǎng)絡(luò)服務(wù)器監(jiān)聽的 TCP 端口
SHELLINABOX_PORT=6175
# 由系統(tǒng)管理的參數(shù),通常不需要
# 改變:
# SHELLINABOX_DATADIR=/var/lib/shellinabox
# SHELLINABOX_USER=shellinabox
# SHELLINABOX_GROUP=shellinabox
# 任何可選參數(shù)(例如額外的服務(wù)定義)。確保
# 該參數(shù)被引用。
#
# 由于 VLC 插件崩潰的報(bào)告,蜂鳴聲被禁用
# Linux/x86_64 上的 Firefox。
SHELLINABOX_ARGS="--無嘟嘟聲"
# 指定SSH服務(wù)器的IP地址
OPTS =“-s /:SSH:192.168.0.140”
# 如果您想限制僅從本地主機(jī)訪問 shellinaboxd
OPTS =“-s /:SSH:192.168.0.140 --僅本地主機(jī)”
配置完成后,您可以重新啟動(dòng) shellinabox 服務(wù)并通過發(fā)出以下命令進(jìn)行驗(yàn)證。
$ sudo systemctl 重新啟動(dòng) shellinabox
$ sudo systemctl 狀態(tài) shellinabox
現(xiàn)在讓我們使用 netstat 命令檢查 Shellinabox 是否正在端口 6175 上運(yùn)行。
$ sudo netstat -nap | sudo netstat -nap grep shellinabox
確保您已在防火墻上安裝了 shellinabox 標(biāo)頭,并為特定 IP 地址打開 6175 端口以遠(yuǎn)程訪問您的 Linux shell。
------- 在Debian、Ubuntu 和 Mint上-------
$ 須藤 ufw 允許 6175/tcp
$ sudo ufw 允許從 192.168.0.103 到任何端口 6175
------- 在RHEL/CentOS/Fedora和Rocky Linux/AlmaLinux上-------
$ sudo 防火墻-cmd --zone=public --add-port=6175/tcp
$ sudo 防火墻-cmd --zone=public --add-source=192.168.0.103/6175 --permanent
通過 Web 服務(wù)轉(zhuǎn)至 Linux SSH 終端
現(xiàn)在打開瀏覽器,然后導(dǎo)航到 https://Your-IP-Adress:6175。您應(yīng)該能夠訪問基于 Web 的 SSH 終端。使用您的用戶名和密碼登錄,您應(yīng)該會(huì)看到 shell 提示符。
您可以右鍵單擊以使用許多功能和操作,包括更改球體的外觀和感覺。
欲了解更多信息,請(qǐng)?jiān)L問 Shellinabox 的官方 github 頁面。