如何在Systemd(ArchLinux)中自動啟動iptables規則

有人認為我在安全性方面有些偏執,這就是為什麼使用防火牆對我至關重要。 在我的筆記本電腦上,我有敏感信息,這些信息對我來說非常重要。 並且因為防火牆是用於PC的,例如鎖或 安全 對我們來說,還記得在計算機上,我們存儲了電子郵件訪問密碼,銀行帳戶數據(無論擁有者),服務器信息以及其他直接影響我們身體生活的虛擬信息...毫無疑問,毫無疑問地遍歷整個網絡不建議您在我們的計算機上沒有適當安全性配置防火牆。

前段時間我向您展示瞭如何啟動iptables規則 自動在Debian等發行版上,Ubuntu或其他包含/etc/rc.local文件的文件,但是在ArchLinux中,作為systemd使用的文件不存在。

因此,我發現可以按照自己的意願配置iptables的方法是創建一個配置iptables的bash腳本,然後修改/usr/lib/systemd/system/iptables.service文件...但是,讓我們進入零件🙂

1. 我們必須 創建一個bash腳本 包含我們的iptables規則,如下所示: Bash + iptables腳本示例

2.創建腳本,在其中編寫規則並授予其執行權限後,我們將繼續編輯systemd iptables服務:

以下命令必須在具有管理權限的情況下執行,或者像我一樣使用sudo或直接與root用戶一起執行

sudo nano /usr/lib/systemd/system/iptables.service

我們會遇到這樣的事情:

[單位]描述=數據包過濾框架[服務]類型=單發ExecStart = / usr / bin / iptables-restore /etc/iptables/iptables.rules ExecReload = / usr / bin / iptables-restore /etc/iptables/iptables.rules ExecStop = / usr / lib / systemd /腳本/ iptables-flush RemainAfterExit =是[安裝] WantedBy =多用戶。target

3. 假設先前創建的腳本位於/home/myuser/script-iptables.sh中,則將保留打開的iptables.service文件,如下所示:

[單位]描述=數據包過濾框架[服務]類型= oneshot ExecStart = / home / myuser / script-iptables.sh ExecReload = / home / myuser / script-iptables.sh ExecStop = / usr / lib / systemd /腳本/ iptables -flush RemainAfterExit =是[安裝] WantedBy = multi-user.target

4. 然後,我們需要確保iptables自動啟動:

sudo systemctl enable iptables

5. 我們開始:

sudo systemctl start iptables

6. 我們可以檢查規則:

sudo iptables -nL

這是我發現(1)擁有自己的bash腳本為我配置iptables的最簡單方法,還(2)規則自動啟動,最後(3)腳本本身是獨立的,也就是說,如果明天,我想在安裝的Debian上使用它(例如),而無需重新配置。

無論如何,我希望你覺得它有用useful

問候


發表您的評論

您的電子郵件地址將不會被發表。 必填字段標有 *

*

*

  1. 負責數據:MiguelÁngelGatón
  2. 數據用途:控制垃圾郵件,註釋管理。
  3. 合法性:您的同意
  4. 數據通訊:除非有法律義務,否則不會將數據傳達給第三方。
  5. 數據存儲:Occentus Networks(EU)託管的數據庫
  6. 權利:您可以隨時限制,恢復和刪除您的信息。

  1.   埃利奧時間3000 他說:

    有趣…。

  2.   掃羅 他說:

    編輯iptables.rules文件本來不是一件容易的事,如果您已經具有sudo的root訪問權限,則值得對其進行修改,對嗎?

  3.   ph 他說:

    我這樣做的方式略有不同,儘管還利用了您上載的腳本來啟動規則。

    1-我們啟動服務(如果尚未啟動):
    # systemctl enable iptables.service
    # systemctl start iptables.service

    2-我們看看我們有什麼規則(如果沒有碰觸,我們假設一切都是開放的) sudo iptables -nvL

    3-我們更改所需的規則,啟動配置腳本:
    # sh /home/miusuario/script-iptables.sh

    4-讓我們看看活動規則如何變化:
    # iptables -nvL

    5-我們保存新的iptables配置,以備將來重啟時使用:
    # iptables-save > /etc/iptables/iptables.rules

    5b-如果我們手動編輯文件/etc/iptables/iptables.rules來更改規則,則必須重新加載配置:
    # systemctl reload iptables

    至少對我來說,這樣更容易。 我正在嘗試學習一些bash和kdialog以更圖形化的方式管理設置。 稍後,我將嘗試使用qtcreator做一些更完整的事情,例如,根據我們正在配置的設備(路由器,PC等),擁有多個配置腳本,以查看其是否出來。

  4.   獵人 他說:

    該驗證碼是錯誤過濾器,請更改為另一個或更新它,因為它在多次嘗試後會變得煩人。

    1.    拉夫 他說:

      它與humanOS,Firefoxmania ..使用的相同。也許與緩存有關。

      1.    獵人 他說:

        好吧,我什至不再評論這兩個了。

  5.   mj 他說:

    問候,
    這是一個非常有用的主題。
    無疑對於那些對我們PC上存儲的信息的安全性感興趣的人; “ Iptables”是必須學習使用的工具之一; 儘管就其本身的重要性而言,它的學習有點複雜。
    我找到了有關此主題的視頻,希望您可以允許我分享您的電子郵件地址“ http://www.youtube.com/watch?v=Z6a-K_8FT_Y”; 我感到驚訝的是,這與這裡的情況有所不同。 但是無論如何,我想這將歸因於GNU / Linux(ARCH,DEBIAN,SUSE等)發行版的多樣性,無論如何我們都必須學習。