Linux:一行代碼創(chuàng)建一個可執(zhí)行命令的 Web 服務器
如果你想讓系統(tǒng)更加安全,那可能要花費很多時間,相反,如果你想讓系統(tǒng)不安全,那就是分分鐘的事情,本文分享一個不安全的方式在 Linux 上快速建立一個 Web 服務,它可以將 bash 指令的執(zhí)行結果返回給前端,提醒一下,千萬別在生產(chǎn)環(huán)境使用。
首先編寫這樣一行代碼,保存為 web.sh
然后添加可執(zhí)行權限:
執(zhí)行這個腳本,給他一個命令參數(shù),比如 ps aux:
打開瀏覽器,輸入網(wǎng)址 http://127.0.0.1:8080,就會看到下圖所示的結果:
每次刷新瀏覽器都會打印 ps aux 命令的最新結果!
為什么可以這樣?
因為有一個始終執(zhí)行的循環(huán)使用 while true,讓 nc 命令持續(xù)在端口 8080 監(jiān)聽瀏覽器請求,每次刷新時,都會執(zhí)行作為參數(shù)傳遞給 web.sh 的腳本,其結果連同一些 HTTP 標頭會傳遞給 nc,后者又會發(fā)送給我們的瀏覽器。
一條簡單的命令就可以起到遠程監(jiān)控服務器進程的效果,是不是很方便?不過這樣并不安全,自己玩玩可以,不推薦生產(chǎn)環(huán)境使用。