shell指令碼編寫放行封鎖埠和放行封鎖IP

2021-10-02 05:44:45 字數 1440 閱讀 7003

vim iptables.sh
#!/bin/bash

function ask(

)while

true

doecho -e " 1.放行埠

2.封鎖埠

3.放行ip

4.封鎖ip"

read -ep "請選擇你的操作:" menu

case

$menu

in 1)

read -ep "請輸入要放行的埠:" port

echo

"正在放行$port...."

sleep 1

iptables -i input -p tcp --dport $port -j accept

echo

"放行$port成功"

ask;

; 2)

read -ep "請輸入要封鎖的埠:" port

echo

"正在封鎖$port...."

sleep 1

iptables -i input -p tcp --dport $port -j drop

echo

"封鎖$port成功"

ask;

; 3)

echo

"正在放行$ip...."

sleep 1

iptables -i input -s $ip -j accept

echo

"放行$ip成功"

ask;

; 4)

echo

"正在封鎖$ip...."

sleep 1

iptables -i input -s $ip -j drop

echo

"封鎖$ip成功"

ask;

; *)

echo

"輸入有誤,退出指令碼!"

封鎖埠之前效果可以正常訪問測試web頁面

封鎖埠之後效果

放行封鎖port和ip指令碼

bin bash echo 1.放行的埠 2.封鎖的埠 3.放行ip 4.封鎖ip read ep 請選擇你的操作 menu case menu in 1 while true do read ep 請輸入要放行的埠 port iptables i input p tcp dport port j ...

編寫Shell指令碼

獲取變數的方式 1 echo path 2 echo 3 echo path 引數的提取 引數的個數 n 第n個引數 0 當前指令碼名稱 取出所有引數 shift 引數左移 執行過程 2 編寫指令碼內容 單獨講解 3 新增執行許可權 chmod a x abc.sh 4 當前目錄執行 abc.sh ...

Shell 指令碼編寫

shell 指令碼與 windows dos 下的批處理相似,也就是用各類命令預先放入到乙個檔案中,方便一次性執行的乙個程式檔案,主要是方便管理員進行設定或者管理用的。但是它比 windows 下的批處理更強大,比用其他程式設計程式編輯的程式效率更高,它使用了 linux unix 下的命令。方法一...