溫馨提示×

Debian iptables怎樣編寫自定義腳本

小樊
41
2025-04-25 23:58:40
欄目: 智能運維

在Debian系統中,使用iptables編寫自定義腳本可以幫助你自動化地配置防火墻規則。以下是一個簡單的示例,展示了如何編寫一個自定義的iptables腳本。

  1. 創建腳本文件: 首先,創建一個新的腳本文件。例如,創建一個名為setup_iptables.sh的文件:

    nano setup_iptables.sh
    
  2. 添加腳本內容: 在腳本文件中添加以下內容。這個示例腳本將設置一些基本的防火墻規則,包括允許SSH、HTTP和HTTPS流量,并拒絕所有其他流量。

    #!/bin/bash
    
    # 清除現有規則
    iptables -F
    iptables -X
    
    # 設置默認策略
    iptables -P INPUT DROP
    iptables -P FORWARD DROP
    iptables -P OUTPUT ACCEPT
    
    # 允許本地回環接口的流量
    iptables -A INPUT -i lo -j ACCEPT
    iptables -A OUTPUT -o lo -j ACCEPT
    
    # 允許已建立的連接
    iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
    iptables -A OUTPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
    
    # 允許SSH連接
    iptables -A INPUT -p tcp --dport 22 -j ACCEPT
    
    # 允許HTTP和HTTPS連接
    iptables -A INPUT -p tcp --dport 80 -j ACCEPT
    iptables -A INPUT -p tcp --dport 443 -j ACCEPT
    
    # 允許ICMP echo請求(ping)
    iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
    
    # 記錄所有被拒絕的連接
    iptables -A INPUT -j LOG --log-prefix "IPTables-Dropped: " --log-level 4
    
    # 保存規則
    iptables-save > /etc/iptables/rules.v4
    
  3. 賦予腳本執行權限: 保存并關閉文件后,賦予腳本執行權限:

    chmod +x setup_iptables.sh
    
  4. 運行腳本: 運行腳本來應用防火墻規則:

    sudo ./setup_iptables.sh
    
  5. 持久化規則: 為了確保重啟后規則仍然有效,可以將規則保存到/etc/iptables/rules.v4文件中,并在系統啟動時自動加載這些規則。你可以使用iptables-persistent包來實現這一點。

    安裝iptables-persistent

    sudo apt-get update
    sudo apt-get install iptables-persistent
    

    在安裝過程中,選擇“是”以保存當前規則,并選擇“否”以避免在啟動時提示配置IPv6規則。

通過以上步驟,你就可以創建一個自定義的iptables腳本,并在Debian系統中應用這些規則。根據你的具體需求,可以進一步修改和擴展腳本中的規則。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女