不想聽嘮叨,直接翻到 搭建 web 終端
。
切勿使用服務器做危險的事情
之前 $18/年 的服務器 B 機, 用了差不多 1 年, 還挺 hi 的, 主要用來測試 demo 玩一玩,另外一個就是大家懂的上網功能了。
上個月也就大概 6 月左右, 朋友說給他玩下~ 好吧, 玩着玩着他問我怎么上不了網了。。。
>> ping x.x.x.x
PING x.x.x.x (x.x.x.x): 56 data bytes
Request timeout for icmp_seq 0
Request timeout for icmp_seq 1
Request timeout for icmp_seq 2
Request timeout for icmp_seq 3
Request timeout for icmp_seq 4
^C
--- x.x.x.x ping statistics ---
6 packets transmitted, 0 packets received, 100.0% packet loss
看網上有文章說,可以解封的。但是我關了所有服務,等了一個月,沒解。
另外一個解決方法是更換 ip , 但是好像要 10 幾美元,唉這頂我大半年服務器費用了。
因為還有另一台服務器 A 機,可以上外網,所以我打算用它作為代理登錄B機。最普通的使用方法是先 SSH 到 A 機, 再從 A 機里 SSH 到 B 機。
這樣同一個步驟要做兩次,可真是麻煩。
如何解決這個麻煩呢?之前有用過不少 web 端可以使用控制台的功能,並且相信大家也都使用過服務器提供商的 web 控制台功能。
所以我想搭建這個一個 web 服務器。
搭建 web 終端
百度了幾個 webssh 工具,最終選擇 https://github.com/huashengdun/webssh
。
服用方式:
pip install webssh # 安裝
wssh --address='0.0.0.0' --port=8011 --fbidhttp=False --xsrf=False xsrf_cookies=True # 允許外網訪問並關閉跨域限制
使 A 機代理訪問:
# Nginx 代理配置示例
location / {
proxy_pass http://127.0.0.1:8888;
proxy_http_version 1.1;
proxy_read_timeout 300;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Real-PORT $remote_port;
}
注, 如果 nginx 沒有配置好, xsrf 選項形同虛設。
好了, 這樣就可以在 A 機的 WEB 服務器上直接登錄 B 機了, 再也不用 SSH 兩次了。
其他
這個工具有些可以做得更好的地方。
- 並不自適應移動端。
- 登錄信息明文傳輸。