2 つのポートから MySQL にアクセスする: iptables の問題

2 つのポートから MySQL にアクセスする: iptables の問題

mySQLサーバー(Ubuntuで実行)をポート3306でリッスンするようにしようとしていますそして開いているポートが非常に少ないネットワークからアクセスしたいので、110 にします。

これまでに私が見つけたのはこの答え私に言う

iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 110 -j REDIRECT --to-port 3306

しかし、私が得たのはこれだけです:

# mysql -h mydomain.com -P 3306 -u username --password=xyz
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 68863
Server version: 5.0.75-0ubuntu10.5 (Ubuntu)

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> exit
Bye

# mysql -h mydomain.com -P 110 -u username --password=xyz
ERROR 2003 (HY000): Can't connect to MySQL server on 'mydomain.com' (111)

私は iptables の専門家ではないので、どこで問題を探せばいいのかわかりません。かなり長い間グーグルで検索していますが、まだ役立つものは見つかりません。

iptable から次のようなメッセージが表示されます:

# iptables -t nat -L -n -v
Chain PREROUTING (policy ACCEPT 32M packets, 1674M bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 REDIRECT   tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:110 redir ports 3306 

Chain POSTROUTING (policy ACCEPT 855K packets, 55M bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain OUTPUT (policy ACCEPT 837K packets, 54M bytes)
 pkts bytes target     prot opt in     out     source               destination   


# iptables -L -n -v
Chain INPUT (policy DROP 7 packets, 340 bytes)
 pkts bytes target     prot opt in     out     source               destination         
 107K 5390K LOG        all  --  *      *       0.0.0.0/0            0.0.0.0/0           state INVALID limit: avg 2/sec burst 5 LOG flags 0 level 4 prefix `INPUT INVALID ' 
 131K 6614K DROP       all  --  *      *       0.0.0.0/0            0.0.0.0/0           state INVALID 
    0     0 MY_DROP    tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp flags:0x3F/0x00 
    0     0 MY_DROP    tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp flags:0x03/0x03 
    0     0 MY_DROP    tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp flags:0x06/0x06 
    0     0 MY_DROP    tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp flags:0x05/0x05 
    0     0 MY_DROP    tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp flags:0x11/0x01 
    0     0 MY_DROP    tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp flags:0x18/0x08 
    0     0 MY_DROP    tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp flags:0x30/0x20 
6948K   12G ACCEPT     all  --  lo     *       0.0.0.0/0            0.0.0.0/0           
 151M   34G ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED 
  32M 1666M ACCEPT     tcp  --  venet0 *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:80 
 1833  106K ACCEPT     tcp  --  venet0 *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:443 
  603 29392 ACCEPT     tcp  --  venet0 *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:25 
    1    60 ACCEPT     tcp  --  venet0 *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:465 
   24  1180 ACCEPT     tcp  --  venet0 *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:110 
    1    60 ACCEPT     tcp  --  venet0 *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:995 
 7919  400K ACCEPT     tcp  --  venet0 *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:143 
    1    60 ACCEPT     tcp  --  venet0 *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:993 
    0     0 ACCEPT     tcp  --  venet0 *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:119 
    1    60 ACCEPT     tcp  --  venet0 *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:53 
    7   517 ACCEPT     udp  --  venet0 *       0.0.0.0/0            0.0.0.0/0           state NEW udp dpt:53 
 1110 65364 ACCEPT     tcp  --  venet0 *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:21 
 139K 8313K ACCEPT     tcp  --  venet0 *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:22 
10176  499K ACCEPT     tcp  --  venet0 *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:3306 
    2    80 ACCEPT     udp  --  venet0 *       0.0.0.0/0            0.0.0.0/0           state NEW udp dpt:123 
    0     0 ACCEPT     tcp  --  venet0 *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:6060 
    4   176 ACCEPT     tcp  --  venet0 *       0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:6667 
20987 1179K MY_REJECT  all  --  *      *       0.0.0.0/0            0.0.0.0/0           

Chain FORWARD (policy DROP 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain OUTPUT (policy DROP 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
 2159  284K LOG        all  --  *      *       0.0.0.0/0            0.0.0.0/0           state INVALID limit: avg 2/sec burst 5 LOG flags 0 level 4 prefix `OUTPUT INVALID ' 
 2630  304K DROP       all  --  *      *       0.0.0.0/0            0.0.0.0/0           state INVALID 
6948K   12G ACCEPT     all  --  *      lo      0.0.0.0/0            0.0.0.0/0           
 181M   34G ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           state NEW,RELATED,ESTABLISHED 
    0     0 MY_REJECT  all  --  *      *       0.0.0.0/0            0.0.0.0/0           

Chain MY_DROP (7 references)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 LOG        all  --  *      *       0.0.0.0/0            0.0.0.0/0           limit: avg 2/sec burst 5 LOG flags 0 level 4 prefix `PORTSCAN DROP ' 
    0     0 DROP       all  --  *      *       0.0.0.0/0            0.0.0.0/0           

Chain MY_REJECT (2 references)
 pkts bytes target     prot opt in     out     source               destination         
13806  652K LOG        tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           limit: avg 2/sec burst 5 LOG flags 0 level 4 prefix `REJECT TCP ' 
18171  830K REJECT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           reject-with tcp-reset 
  912  242K LOG        udp  --  *      *       0.0.0.0/0            0.0.0.0/0           limit: avg 2/sec burst 5 LOG flags 0 level 4 prefix `REJECT UDP ' 
  912  242K REJECT     udp  --  *      *       0.0.0.0/0            0.0.0.0/0           reject-with icmp-port-unreachable 
 1904  107K LOG        icmp --  *      *       0.0.0.0/0            0.0.0.0/0           limit: avg 2/sec burst 5 LOG flags 0 level 4 prefix `DROP ICMP ' 
 1904  107K DROP       icmp --  *      *       0.0.0.0/0            0.0.0.0/0           
    0     0 LOG        all  --  *      *       0.0.0.0/0            0.0.0.0/0           limit: avg 2/sec burst 5 LOG flags 0 level 4 prefix `REJECT OTHER ' 
    0     0 REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           reject-with icmp-proto-unreachable

問題がどこにあるかヒントをくれる人はいませんか?

ありがとう!

答え1

サーバー mydomain.com は、インターフェイス で受信されるポート 110 の着信 TCP 接続のみを受け入れますvenet0。iptables NAT ルールはインターフェイス で受信されるトラフィックにのみ適用されるためeth0、次のいずれかになります。

  • トラフィックがインターフェースから入ってくるがvenet0、NATルールに間違ったインターフェースを選択したか、
  • トラフィックはインターフェースから入ってくるためeth0、iptables によってブロックされているため、NAT ルールまで到達できません。

mydomain.com のインターフェース設定 (ifconfig -aおそらく) について詳しく教えていただければ、これらのどれが正しいのかがわかるはずです。

関連情報