防火牆的基本配置方法「手機怎麼設置防火牆」

1. UOS支持的防火牆

iptables ufw firewalld Netfilter區別?

iptables ufw firewall 都是前端管理,Netfilter才是內核。

統信的UOS服務器操作系統是基於Debian開發的,因此和Debian和Ubuntu很多命令都是相同的。在Debian和Ubuntu上面可以使用的防火牆在UOS也是可以正常使用的。

默認情況下,Debian使用iptables,Ubuntu有iptables,也使用簡單的ufw,在CentOS7 之前使用的是iptables,CentOS 7開始使用firewall,Centos 7前可以使用iptables命令也可以直接編輯文件/etc/sysconfig/iptables,在firewall一般都是使用命令。在Debian和UOS是使用iptables命令,由於不是直接編輯配置文件,需要對iptables命令比較熟悉,再就是對重啟生效需要編輯文件設置。ufw也可以在UOS使用,由於是簡易的命令,在本文主要討論怎麼使用iptables來設置防火牆功能。

2. 防火牆設置

UOS防火牆設置步驟:

  1. 檢查iptables有沒有安裝

如果之前有使用CentOS經驗使用service iptables status 是檢查不出來的,在CentOS中iptables是以服務形式,這裡iptables只是配置的前端的命令,也不能使用yum list查看。而是使用apt list|grep iptables 看到已經安裝。表示已經正常安裝,如果沒有安裝可以使用apt install iptables 或者apt-get install iptables,如果想要使用ufw安裝apt install ufw,如果希望使用firewall,也可以安裝後使用。

UOS服務器操作系統防火牆設置
  1. 清空原有規則

iptables -L 可以查看現有生效的規則

iptables -P INPUT ACCEPT 清空規則前放開INPUT 否則清空以後可能導致無法遠程連接

#清空配置

iptables -F【清空規則】

iptables -X 【刪除自建鏈】

iptables -Z 【重置過濾包數據】

UOS服務器操作系統防火牆設置
  1. 新建規則配置文件

第一種方式,編輯/etc/iptables.sh然後賦予執行權限chmod +x /etc/iptables.sh。執行以後規則就生效了,如果需要修改規則每次都可以修改此文件。

第二種方式配置文件/etc/iptables(需要使用/sbin/iptables-restore 導入規則,可以配置重啟時就執行該文件)

#清空配置

iptables -F

iptables -X

iptables -Z

#配置,禁止進,允許出,允許迴環網卡

iptables -P INPUT DROP

iptables -A OUTPUT -j ACCEPT

iptables -A INPUT -i lo -j ACCEPT

#允許ping

iptables -A INPUT -p icmp -j ACCEPT

#允許ssh

iptables -A INPUT -p tcp –dport 22 -j ACCEPT

#允許VNC

iptables -A INPUT -p tcp –dport 5900 -j ACCEPT

#學習felix,把smtp設成本地

iptables -A INPUT -p tcp -m tcp –dport 25 -j ACCEPT -s 127.0.0.1

iptables -A INPUT -p tcp -m tcp –dport 25 -j REJECT

#允許DNS

iptables -A INPUT -p tcp -m tcp –dport 53 -j ACCEPT

iptables -A INPUT -p udp -m udp –dport 53 -j ACCEPT

#允許http和https

iptables -A INPUT -p tcp –dport 80 -j ACCEPT

iptables -A INPUT -p tcp –dport 443 -j ACCEPT

# 允許已建立的或相關連的通行

iptables -A INPUT -m state –state ESTABLISHED,RELATED -j ACCEPT

#禁止其他未允許的規則訪問

iptables -A INPUT -j REJECT #(注意:如果22端口未加入允許規則,SSH鏈接會直接斷開。)

iptables -A FORWARD -j REJECT

  1. 導入規則

iptables-save >/etc/iptables 【保存規則】

/sbin/iptables-restore </etc/iptables 【導入規則】

  1. 設置重啟生效腳本

1.)將iptables.sh腳本放到init.d中每次都重啟【需要保障iptables腳本一致都是最新的規則,如果是後續臨時修改的規則可能不在其中】

2.)編輯/etc/network/if-pre-up.d/iptables,重啟會自動生效。要保障/etc/iptables中規則一致是最新的,每次修改規則可以編輯/etc/iptables 如果是使用iptables命令新增,需要增加iptables-save >/etc/iptables 保存。

#!/bin/sh

/sbin/iptables-restore < /etc/iptables

3. 防火牆腳本

編輯如下腳本【第一次執行】,後續編輯/etc/iptables,使用/sbin/iptables-restore < /etc/iptables重新導入,或者直接iptables命令新增,iptables-save>/etc/iptables 保存,防止機器重啟無效

#!/bin/sh

#防火牆腳本

echo “#!/bin/sh

/sbin/iptables-restore < /etc/iptables” >/etc/network/if-pre-up.d/iptables

echo “#清空配置

iptables -F

iptables -X

iptables -Z

#配置,禁止進,允許出,允許迴環網卡

iptables -P INPUT DROP

iptables -A OUTPUT -j ACCEPT

iptables -A INPUT -i lo -j ACCEPT

#允許ping

iptables -A INPUT -p icmp -j ACCEPT

#允許ssh

iptables -A INPUT -p tcp –dport 22 -j ACCEPT

#允許VNC

iptables -A INPUT -p tcp –dport 5900 -j ACCEPT

#學習felix,把smtp設成本地

iptables -A INPUT -p tcp -m tcp –dport 25 -j ACCEPT -s 127.0.0.1

iptables -A INPUT -p tcp -m tcp –dport 25 -j REJECT

#允許DNS

iptables -A INPUT -p tcp -m tcp –dport 53 -j ACCEPT

iptables -A INPUT -p udp -m udp –dport 53 -j ACCEPT

#允許http和https

iptables -A INPUT -p tcp –dport 80 -j ACCEPT

iptables -A INPUT -p tcp –dport 443 -j ACCEPT

# 允許已建立的或相關連的通行

iptables -A INPUT -m state –state ESTABLISHED,RELATED -j ACCEPT

#禁止其他未允許的規則訪問

iptables -A INPUT -j REJECT #(注意:如果22端口未加入允許規則,SSH鏈接會直接斷開。)

iptables -A FORWARD -j REJECT” > /etc/iptables.sh

chmod +x /etc/iptables.sh

chmod +x /etc/network/if-pre-up.d/iptables

/etc/iptables.sh

iptables-save > /etc/iptables

/sbin/iptables-restore < /etc/iptables

4. 關閉防火牆(清空所有規則,刪除腳本,關閉重啟)

iptables -P INPUT ACCEPT

iptables -F

iptables -X

iptables -Z

rm /etc/iptables*

rm /etc/network/if-pre-up.d/iptables

5. 配置黑白名單

#黑白名單

####當只有部分人可以訪問使用白名單,當只有部分人不能訪問使用黑名單

##設置鏈名

iptables -N whitelist

iptables -N blacklist

##設置自定義鏈規則

iptables -A whitelist -s xxxx ACCEPT

iptables -A blacklist -s xxxx DROP

##設置INPUT規則

iptables -A INPUT -p tcp –dport 22 -j whitelist

iptables -A INPUT -p tcp –dport 22 -j blacklist

#刪除規則

iptables -D INPUT 數字(iptables -L INPUT –line-numbers 查看對應鏈的規則序號)

iptables -D INPUT -p tcp –dport 22 -j whitelist (也可以使用設置規則時相同的命令把A改成D)

#刪除自定義鏈

iptables -X 鏈名(注意內置鏈不可刪除)

iptables -Z 置零

iptables -F 清空規則

原創文章,作者:投稿專員,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/268439.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
投稿專員的頭像投稿專員
上一篇 2024-12-16 13:09
下一篇 2024-12-16 13:09

相關推薦

發表回復

登錄後才能評論