
私はリモートでMySQLを設定しようとしています。私は次のようないくつかのガイドに従いました。これ結局、どのポートが開いているかを確認するために nmap を使用することにしました。
ノートパソコンを使っているときは、nmap -P0 <server>
次のようになります:
Nmap scan report for <> (ip.address.here)
Host is up (0.054s latency).
Not shown: 997 filtered ports
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
443/tcp open https
したがって、ポート 3306 が開いていることは表示されません。
ただし、私のサーバー (Ubuntu 14.04) で実行すると、nmap -P0 localhost
次のようになります。
Nmap scan report for localhost (127.0.0.1)
Host is up (0.00064s latency).
Not shown: 995 closed ports
PORT STATE SERVICE
22/tcp open ssh
25/tcp open smtp
80/tcp open http
443/tcp open https
3306/tcp open mysql
これは、ポートが適切に開いていることを意味します。この矛盾の原因は何でしょうか? (確かに、nmap を使用するのは今回が初めてです)。これが、mysql サーバーに接続できない理由でしょうか?
さらに、私のラップトップ (Linux サブシステムを使用した Windows) からは、telnet <host> 3306
リモート リソースが利用できないというエラーが表示されます。
答え1
nmap
ラップトップ上のレポートには次の行が含まれます:
表示なし: 997 個のフィルタリングされたポート
ここ、フィルタリング22、80、443 以外のすべてのポートへのアクセスをブロックするファイアウォールがあることを示します。これは、nmap
サーバー自体で実行した場合の出力とは対照的です。
表示なし: 995 個の閉じたポート
この場合、閉まっている単に、テストされた 995 個のポートでリッスンしているプロセスがないことを意味します。
ファイアウォールはサーバー自体で実行されている可能性があります (GNU/Linux システムで実行されている場合は、 を実行して確認できますiptables -L
)。または、中間ゲートウェイで実行されている可能性があります。
MySQLへの外部アクセスが必要な場合は、ポート3306への外部アクセスも許可するようにファイアウォールを設定する必要があります。また、自分のIPアドレス、またはISPのIPアドレスからのアクセスのみを許可するように設定することをお勧めします。自律システム (AS)。