首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么iptables命令不能在我的嵌入式Linux上生效?

问为什么iptables命令不能在我的嵌入式Linux上生效?
EN

Security用户
提问于 2022-11-28 02:27:56
回答 1查看 114关注 0票数 1

我正在运行一个内核为3.18.21的嵌入式Linux系统,并在MIPS上安装了一些应用程序。当我在Linux上运行iptables & ip6tables时,如下所示:

代码语言:javascript
复制
iptables -A INPUT -p tcp --dport 80 -j DROP 
ip6tables -A INPUT -p tcp --dport 80 -j DROP

tcp端口80用于http。然后,我发现到这个Linux服务器的http连接( Linux服务器上有一个web服务器应用程序)不再工作了。

但是,当我以以下方式运行netstat命令时:

代码语言:javascript
复制
netstat -tuln | grep LISTEN

它显示了以下内容(我只提取了port80):

代码语言:javascript
复制
tcp        0      0 :::80                   :::*                    LISTEN

这是否意味着80号港口仍然开放?那么,为什么我不能使用http访问运行在Linux上的web服务器呢?(我检查并确认web服务器进程仍在运行。)

EN

回答 1

Security用户

回答已采纳

发布于 2022-11-28 05:27:37

iptables -A输入-p tcp -dport 80 -j下拉列表

这限制了从机器外部进行访问,即端口不再开放供外部访问。

netstat -tuln \ grep收听

这将检查服务是否正在运行。

如果一个服务没有运行,那么端口是否为外部访问开放并不重要,因为端口后面没有任何东西。如果服务正在运行,但端口不开放供外部访问,则无法从外部到达它,但仍然可以从机器到达本地端口。

那么为什么我不能使用http来访问运行在Linux上的web服务器呢?

要想从外部获得服务,

  • 服务必须首先运行。
  • 服务必须在可从外部访问的IP地址上列出(不只是在本地主机127.0.0.1和:1上)
  • 端口必须开放供外界访问,即没有限制访问的防火墙规则。
票数 2
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/266665

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档