Mysql

將 IPTables 規則轉換為 UFW

  • July 3, 2013

我們使用的是 Ubuntu 12.04 x64 LTS VPS。正在使用的防火牆是 UFW。我已經設置了 Varnish + LEMP 設置。以及其他東西,包括從我們辦公室到 VPS 數據中心的 Openswan IPSEC VPN。第二個內部 Ubuntu 機器是充當 MySQL 從站並通過 VPN 從 VPS 獲取數據。

主人的 ppp0 被視為來自奴隸的 10.1.2.1,他們 ping 等。

我已經完成了各種必需的任務,但我無法讓客戶端(從屬)MySQL(也不是 telnet 10.1.2.1 3306)通過 VPN 訪問主控,除非我發出這個相當明顯的 IPTables 命令:

iptables -A INPUT -s 10.1.2.0/24 -p tcp --dport 3306 -j ACCEPT

我心甘情願地強迫接受的輸入來自最後一個八位字節。 有了這條規則,一切都很好!

但是,我想將此命令轉換為 UFW 語法,以便將所有內容保存在一個地方。

現在我承認對 UFW 缺乏經驗,我準備瞭如下規則:

ufw allow proto tcp from 10.1.2.0/24 port mysql

和 2-3 個變體,涉及指定 3306 而不是 mysql,指定目標 IP(MySQL 的 my.cnf 目前配置為 0.0.0.0)和類似但我似乎無法複製簡單的 iptables 規則一種實用的方式。

任何人都可以給我一個不拋棄UFW的建議嗎?

提前致謝。

命令

ufw allow proto tcp from 10.1.2.0/24 port mysql

將以下內容添加到 iptables

iptables -L ufw-user-input -vn
Chain ufw-user-input (1 references)
  pkts bytes target   prot opt in    out  source       destination

   0   0     ACCEPT   tcp  --   *     *   10.1.2.0/24  0.0.0.0/0    tcp spt:3306

請注意,spt這表示數據包的源埠必須是 3306。您需要告訴 UFW 允許目標埠為 3306 的數據包。

ufw allow proto tcp from 10.1.2.0/24 to any port mysql

它添加了這樣的規則

iptables -L ufw-user-input -vn
Chain ufw-user-input (1 references)
  pkts bytes target   prot opt in    out  source       destination

   0   0     ACCEPT   tcp  --   *     *   10.1.2.0/24  0.0.0.0/0    tcp dpt:3306

這將允許從 10.1.2.0/24 到埠 3306 的數據包。

引用自:https://serverfault.com/questions/520478