即使关闭防火墙,也无法在 Ubuntu 上为 Express 打开外部端口

编程入门 行业动态 更新时间:2024-10-05 05:16:28

即使关闭防火墙,也无法在 Ubuntu 上为 Express 打开外部<a href=https://www.elefans.com/category/jswz/34/1770903.html style=端口"/>

即使关闭防火墙,也无法在 Ubuntu 上为 Express 打开外部端口

在 Ubuntu 上运行 Express 时,我无法打开用于连接的外部端口。我无法使用外部 IP 地址和端口连接到远程主机。以前用Apache做代理一切顺利,现在只用Express连基本端口都打不开(Apache已经彻底关掉了)

这里是当前情况和环境设置:

1.Ubuntu 20

2.防火墙确认关闭

3.以root身份登录并运行Express

4.如果我使用80端口监听,像这样:

dotenv.config();

const port = process.env.DB_PORT; //80
const app  = express();

app.use(express.json());
app.use(routerIndex);

app.get('/', (req, res) => {
 res.send('ok')
})

app.listen(port, () => {
 console.log('server port on :'+ port);
})

在http://ip可以看到执行结果,返回“ok”。

5.但是,如果我使用不同的端口,比如1166,就会失败,在http://ip:1166看不到执行结果。最终,它会超时。

6.我也试过打开防火墙并为1166端口指定端口转发,像这样:

sudo ufw enable
sudo ufw allow 1166/tcp
sudo ufw allow ssh
sudo ufw reload
sudo ufw status

Status: active

To Action From

3600/tcp ALLOW Anywhere
3600 ALLOW Anywhere
80/tcp ALLOW Anywhere
89/tcp ALLOW Anywhere
22/tcp ALLOW Anywhere
1166/tcp ALLOW Anywhere
3600/tcp (v6) ALLOW Anywhere (v6)
3600 (v6) ALLOW Anywhere (v6)
80/tcp (v6) ALLOW Anywhere (v6)
89/tcp (v6) ALLOW Anywhere (v6)
22/tcp (v6) ALLOW Anywhere (v6)
1166/tcp (v6) ALLOW Anywhere (v6)

但是还是打不开http://ip:1166 最终超时

我不知道如何解决这个问题了。谁能提供任何帮助?感谢任何帮助。

回答如下:

我还不能发表评论,所以请不要投票太严厉。

您是否使用

localhost:1166
netstat -tlpn
在本地进行了测试,以验证它确实在备用端口上列出。

接下来,您的测试系统的远程系统在哪里?例如。它是在同一个网络上,在云端,在另一个数据中心吗?

如果它在单独的网络上,请确保没有防火墙或路由器也需要允许访问该端口。如果它在云中,也是如此,验证安全组设置是否正确。

更多推荐

即使关闭防火墙,也无法在 Ubuntu 上为 Express 打开外部端口

本文发布于:2024-05-30 07:44:01,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1770266.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:端口   防火墙   上为   Ubuntu   Express

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!