首頁  >  問答  >  主體

python - 检测sshd端口误封

1,检查sshd端口误封,如果误封就重新添加。
2,代码如下:

#!/bin/bash
##written by lin
##check port 22
iptables -P INPUT ACCEPT;
iptables -P OUTPUT ACCEPT;
a=`iptables -nvL |grep dpt:22|awk  '{print $3}'`
#if [ $a == "REJECT" ]||[ $a == "DROP" ]
if [ $a != "ACCEPT" ]
then iptables -I INPUT -p tcp --dport 22 -j ACCEPT
fi

3.提示错误

4,不是可以指定变量等于某个字符串吗?

5,如果有更好的建议,请附上您的脚本,感谢。

`

高洛峰高洛峰2741 天前2399

全部回覆(2)我來回復

  • 阿神

    阿神2017-04-17 17:54:49

    貌似不等於的比較用的是-ne而不是!=把~

    回覆
    0
  • ringa_lee

    ringa_lee2017-04-17 17:54:49

    1. 你的錯誤是因為a變數為空

    2. 可以使用以下腳本檢查

    #!/usr/bin/env bash
    
    block_22=`iptables -vnL | grep 'tcp dpt:22' | egrep 'DROP|REJECT' | wc -l`
    [ $block_22 -gt 0 ] && iptables -I INPUT -p tcp --dport 22 -j ACCEPT

    回覆
    0
  • 取消回覆