web-dev-qa-db-ja.com

MySQLへのリモート接続を妨げるIPTables

私のテーブルのルール:

Sudo iptables -L --line-numbers

Chain INPUT (policy ACCEPT)
num  target     prot opt source               destination
1    ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:http
2    ACCEPT     all  --  anywhere             anywhere            state RELATED,ESTABLISHED
3    ACCEPT     icmp --  anywhere             anywhere
4    ACCEPT     all  --  anywhere             anywhere
5    ACCEPT     tcp  --  anywhere             anywhere            state NEW tcp dpt:ssh
6    ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:mysql
7    REJECT     all  --  anywhere             anywhere            reject-with icmp-Host-prohibited

Chain FORWARD (policy ACCEPT)
num  target     prot opt source               destination
1    REJECT     all  --  anywhere             anywhere            reject-with icmp-Host-prohibited

Chain OUTPUT (policy ACCEPT)
num  target     prot opt source               destination

追加情報

Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination
1083K  263M ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:80
3942M 4886G ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED
  734 42672 ACCEPT     icmp --  *      *       0.0.0.0/0            0.0.0.0/0
  864 62326 ACCEPT     all  --  lo     *       0.0.0.0/0            0.0.0.0/0
  138  8568 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:22
    0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:3306
  151 20254 REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           reject-with icmp-Host-prohibited

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination
    0     0 REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           reject-with icmp-Host-prohibited

Chain OUTPUT (policy ACCEPT 778 packets, 161K bytes)
 pkts bytes target     prot opt in     out     source               destination

入力チェーンからルール7を削除することで、サーバーにリモートでアクセスできるようになります。私の理解では、ルール7より前のルールは影響を受けないため、MySQL接続ではルール6がルールに取って代わります。

追加/変更する必要のある追加のルールはありますか?

1
SemperFly

Iptablesルールは、ポート3306への着信接続を許可しますが、これはeth0インターフェイスでのみ許可されます。別のインターフェースから接続しようとしている可能性があります。

この問題を解決するには、ルールを必要なトラフィックを許可するルールに置き換えます。たとえば、すべてのインターフェイスからのトラフィックを許可するには、次のようにします。

iptables -R INPUT 6 -m state --state NEW -p tcp --dport 3306 -j ACCEPT
2
Michael Hampton