我无法通过特定端口访问我的电脑

我无法通过特定端口访问我的电脑

在 Fedora 18 上,我尝试访问端口 1521,因此我在防火墙上打开了以下端口:

$ sudo iptables -I INPUT -i eth0 -p tcp -m tcp --dport 1521 -j ACCEPT
$ sudo service iptables save

$ sudo iptables -I INPUT -i eth0 -p tcp --dport 1521 -j ACCEPT
$ sudo service iptables save

$ iptables -A INPUT -m state --state NEW -p tcp --dport 1521 -j ACCEPT
$ iptables -I INPUT -p tcp --dport 1521 -j ACCEPT
$ sudo service iptables save

然后我尝试 telnet 到我的内部 IP(路由器给我的 IP),但连接被拒绝:

$ telnet 192.168.1.103 1521
Trying 192.168.1.103...
telnet: connect to address 192.168.1.103: Connection refused

然后我尝试 telnet 到我的互联网 IP,但没有得到任何回应:

$ telnet x.x.x.x 1521
Trying x.x.x.x...

据我所知,我也在路由器上打开了端口,顺便说一句,我也尝试使用端口 22 并得到了相同的结果。

有一个 Oracle 监听器正在监听端口 1521,因此除此之外telnet我还尝试tnspingsqlplus。但是连接超时,所以目前是防火墙问题。

答案1

您允许流量进入eth0,但随后从本地主机进行测试?流量不会通过eth0,而是会在界面中显示lo。更新您的规则以删除-i eth0,或更改eth0lo,或为 增加第二条规则lo

之后,使用以下命令确认 Oracle 确实正在监听该端口netstat -tnlp | grep 1521

接下来,确认这eth0是允许流量的正确接口ip a s。 IIRC,Fedora 现在使用“新”的接口命名方法,因此它可能是类似的enp3s0

附注:运行 iptables 命令后无需运行 save 命令,只要运行该命令,它们就会立即生效。save 命令会保存规则以供下次重启(或重新加载)使用

相关内容