自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Linux:一行代碼創(chuàng)建一個可執(zhí)行命令的 Web 服務器

系統(tǒng) Linux
因為有一個始終執(zhí)行的循環(huán)使用 while true,讓 nc 命令持續(xù)在端口 8080 監(jiān)聽瀏覽器請求,每次刷新時,都會執(zhí)行作為參數(shù)傳遞給 web.sh 的腳本,其結果連同一些 HTTP 標頭會傳遞給 nc,后者又會發(fā)送給我們的瀏覽器。

如果你想讓系統(tǒng)更加安全,那可能要花費很多時間,相反,如果你想讓系統(tǒng)不安全,那就是分分鐘的事情,本文分享一個不安全的方式在 Linux 上快速建立一個 Web 服務,它可以將 bash 指令的執(zhí)行結果返回給前端,提醒一下,千萬別在生產(chǎn)環(huán)境使用。

首先編寫這樣一行代碼,保存為 web.sh

#!/bin/bash
while true; do
echo -e "HTTP/1.1 200 OK\n\n$($1)" | nc -l -k -p 8080 -q 1;
done

然后添加可執(zhí)行權限:

chmod u+x web.sh

執(zhí)行這個腳本,給他一個命令參數(shù),比如 ps aux:

./web.sh "ps aux"

打開瀏覽器,輸入網(wǎng)址 http://127.0.0.1:8080,就會看到下圖所示的結果:

圖片

每次刷新瀏覽器都會打印 ps aux 命令的最新結果!

為什么可以這樣?

#!/bin/bash
while true; do
echo -e "HTTP/1.1 200 OK\n\n$($1)" | nc -l -k -p 8080 -q 1;
done

因為有一個始終執(zhí)行的循環(huán)使用 while true,讓 nc 命令持續(xù)在端口 8080 監(jiān)聽瀏覽器請求,每次刷新時,都會執(zhí)行作為參數(shù)傳遞給 web.sh 的腳本,其結果連同一些 HTTP 標頭會傳遞給 nc,后者又會發(fā)送給我們的瀏覽器。

一條簡單的命令就可以起到遠程監(jiān)控服務器進程的效果,是不是很方便?不過這樣并不安全,自己玩玩可以,不推薦生產(chǎn)環(huán)境使用。

責任編輯:武曉燕 來源: Python七號
相關推薦

2018-01-18 10:57:48

Linux服務器命令

2014-04-14 15:54:00

print()Web服務器

2023-03-30 13:22:45

nginxweb服務器

2021-08-31 09:49:37

CPU執(zhí)行語言

2019-05-08 14:37:49

Web服務器HTTP

2019-04-25 09:52:38

SSHLinux服務器

2020-09-09 16:00:22

Linux進程

2016-12-02 08:53:18

Python一行代碼

2022-02-22 11:57:32

BOAWeb服務器

2022-08-16 14:47:08

服務器端Web端腳本

2017-05-24 12:30:34

2010-03-02 13:23:02

VNC Linux服務

2017-04-05 11:10:23

Javascript代碼前端

2022-09-28 10:12:50

Python代碼可視化

2021-03-22 16:45:58

服務器命令

2022-09-20 08:43:37

Go編程語言Web

2017-11-20 14:46:27

命令代碼

2024-03-08 12:45:00

C#Web服務器

2022-03-28 17:10:18

樹莓派服務器舊硬件

2022-02-01 16:02:03

PythonWeb服務器
點贊
收藏

51CTO技術棧公眾號