以下內容從wetty簡介、環境準備、wetty安裝、以及驗證方面給大家分析,具體詳情請看下文吧。
1. Wetty簡介
Wetty是使用Node.js和websockets開發的一個開源Web-based SSH。關於Web-based SSH的更多資料請參考https://en.wikipedia.org/wiki/Web-based_SSH。
而wetty的資料請參考https://github.com/krishnasrinivas/wetty。
2. 環境準備
因為wetty是使用Node.js編寫的,所以我們要事先安裝好相關的Node.js環境。請看考這篇博文。
3. Wetty安裝
運行下面命令進行安裝,
$ git clone https://github.com/krishnasrinivas/wetty
$ cd wetty
$ sudo npm install
安裝過程可能會出錯,請參考下面的可能問題處理。
4. 驗證
安裝完成之後,然後運行下面命令啟動wetty服務,監聽3000連接埠號碼,
$ node app.js -p 3000
然後開啟瀏覽器,輸入http://127.0.0.1:3000,然後輸入密碼登陸成功後便可以進行命令列操作了,效果如下圖所示,
5. 可能問題處理
5.1安裝時報error: 'Use' is not a member of 'node::Buffer'
因為我安裝的Node是4.1.1版本的,太新了。而wetty原本依賴的pty.js太老,導致編譯出現的問題。修改以下wetty原始碼目錄下的package.json,將依賴的pty.js修改成最新版本0.3.0(原本是^0.2.7-1)。儲存檔案,然後重新運行sudo npm install命令即可。
5.2 ssh訪問失敗
啟動wetty服務後,在瀏覽器中輸入http://127.0.0.1:3000時報一個類似於下面截圖的”ssh: connect to host localhost port 22: Connection refused”的錯誤。
運行以下下面的命令重新安裝openssl-client和openssl-server即可,
$ sudo apt-get remove openssh-client openssh-server
$ sudo apt-get installopenssh-client openssh-server
PS:學習linux tty命令
tty命令用來列印與標準輸入串連的終端名稱,如果顯示的是/dev/console,那麼此終端為控制台終端;
如果顯示的是/dev/pts/n,那麼此終端為虛擬終端(遠端連線到linux server的終端)。通過查看tty命令執行的返回碼為0,確認標準輸入是一個終端。
sh-# tty
/dev/console
sh-# echo $?
0
sh-# tty
/dev/pts/6
通過如下命令,我們知道/dev/console是一個字元裝置(linux系統幾乎把所有的裝置都看作是檔案),
sh-# ls -l /dev/console
crw-r--r-- 1 root root 5, 1 Jan 1 00:11 /dev/console
以上是小編給大家分享的Linux系統下安裝wetty和使用說明,希望大家喜歡。