我的 MySQL 在端口 1835 上运行,运行以下命令即可证明这一点:
lsof -i:1835
运行以下命令来打开防火墙上的端口:
ufw allow 1835/tcp
ufw enable
ufw reload
但该端口无法从外部访问:
C:\Users\Andrew>telnet 1.2.3.4 1835 连接到 1.2.3.4...无法在端口 1835 上打开与主机的连接:连接失败
因此,为了确保万无一失,我尝试了这个方法(但也没有用):
iptables -A INPUT -p tcp --dport 1835 -j ACCEPT
我对 Linux 的了解非常有限,但我认为这已经足够了。如果有任何遗漏,请告诉我。
如果相关的话,这是在 Vultr 上运行的,但我没有使用他们的防火墙包,只使用了盒子上的一个。
更新: 我运行了 netstat 并得到以下结果:
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 127.0.0.1:1835 0.0.0.0:* LISTEN
这是 /etc/mysql/mysql.conf.d/mysql.cnf 文件:
[mysqld]
port=1835
bind-address=0.0.0.0