本地和远程 nmap 之间的区别-尝试设置 mysql 服务器远程访问

本地和远程 nmap 之间的区别-尝试设置 mysql 服务器远程访问

我正在尝试远程设置 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)

相关内容