arm,iptables: No chain/target/match by that name.

最近由于项目需要,需要打开防火墙功能.

公司有

arm linux 3.0
x86 linux 3.2
x86 linux 2.4

的三个嵌入式.都需要打开防火墙功能.

执行“whereis iptables”命令,如果结果不为空,则说明防火墙软件已安装

# whereis iptables
iptables: /sbin/iptables /usr/share/iptables /usr/share/man/man8/iptables.8.gz
[email protected]:~ 9:26:57

输入iptables -L 命令查看配置

# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination

Chain FORWARD (policy ACCEPT)
target prot opt source destination

Chain OUTPUT (policy ACCEPT)
target prot opt source destination
[email protected]:~ 9:27:32
#

此处为空表示 没有配置防火墙.

此处可参考:

#知识:
# http://blog.chinaunix.net/uid-9950859-id-98279.html
# http://blog.slogra.com/post-232.html
# http://www.cnblogs.com/bangerlee/archive/2013/02/27/2935422.html
# http://blog.chinaunix.net/uid-26495963-id-3279216.html

保存本文件,然后把本规则加载,使之生效,注意,iptables不需要重启,加载一次规则就成了
sudo iptables-restore < /etc/iptables.test.rules
然后再查看最新的配置,应该所有的设置都生效了.
sudo iptables -L

第四步:保存生效的配置,让系统重启的时候自动加载有效配置
iptables提供了保存当前运行的规则功能
iptables-save > /etc/iptables.up.rules

结果执行时报错.

# iptables -A INPUT -m limit --limit 5/min -j LOG --log-prefix "iptables denied:" --log-level 7
iptables: No chain/target/match by that name.

网上搜索是缺少内核模块

[email protected]:~  9:30:27
# lsmod |grep iptables
[email protected]:~  9:31:04
# 

是没有输出的.

[email protected]:~  9:31:04
# iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables: No chain/target/match by that name.

后面发现是 有了-m state    RELATED,ESTABLISHED  之类的就报错.

就是对tcp 的连接状态:

NEW

ESTABLISHED

RELATED

INVALID

貌似都不能处理 .

 iptables -t filter -A INPUT -s 172.16.0.0/16 -p udp --dport 53 -j DROP
     当然你如果想拒绝的更彻底:
     iptables -t filter -R INPUT 1 -s 172.16.0.0/16 -p udp --dport 53 -j REJECT

如果用DROP可以成功,用REJECT会报错.

最后改成了:

常用的ACTION:
     DROP:悄悄丢弃
        一般我们多用DROP来隐藏我们的身份,以及隐藏我们的链表
     REJECT:明示拒绝
     ACCEPT:接受
        custom_chain:转向一个自定义的链
     DNAT
     SNAT
     MASQUERADE:源地址伪装
     REDIRECT:重定向:主要用于实现端口重定向
     MARK:打防火墙标记的
     RETURN:返回
        在自定义链执行完毕后使用返回,来返回原规则链。

简单说就是只能用低级功能,不能用高级功能.

最后修改后的命令文件是

# Generated by iptables-save v1.4.14 on Tue May  6 14:54:02 2014

#知识:
# http://blog.chinaunix.net/uid-9950859-id-98279.html
# http://blog.slogra.com/post-232.html
# http://www.cnblogs.com/bangerlee/archive/2013/02/27/2935422.html
# http://blog.chinaunix.net/uid-26495963-id-3279216.html

#1.PREROUTING (路由前)
#2.INPUT (数据包流入口)
##3.FORWARD (转发管卡)
#4.OUTPUT(数据包出口)
#5.POSTROUTING(路由后)

*filter
:INPUT ACCEPT [1:40]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]

#允许本地回环接口(即运行本机访问本机)
#-A INPUT -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT
#允许本地回环接口(即运行本机访问本机)
-A INPUT -i lo -j ACCEPT

#允许所有本机向外的访问
-A OUTPUT -j ACCEPT

# arm linux 3.0不可用...
#-A INPUT -d 127.0.0.0/8 ! -i lo -j REJECT --reject-with icmp-port-unreachable
#-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

# Allows xxxx port 允许访问 xxxx的端口
#xxx或xxx可能有多个端口,请在这儿添加.
#这儿是tcp
-A INPUT -p tcp -m tcp --dport 1234 -j ACCEPT

#这儿是udp
#-A INPUT -p udp -m udp --dport 1234 -j ACCEPT

# Allows Mysql port 允许访问 mysql 的端口
#-A INPUT -p tcp -m tcp --dport 3306 -j ACCEPT
-A INPUT -p tcp --dport 3306 -j ACCEPT

# Allows SSH port
#***如果不允许这个,你就先去一边哭会吧.
#***如果不允许这个,你就先去一边哭会吧.
-A INPUT -p tcp --dport 22 -j ACCEPT
#-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT

# 允许 ping 这个和禁用ping ,2选1.
-A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT
#禁用ping
#-A INPUT -p icmp -m icmp --icmp-type 8 -j DROP

#记录日志功能,arm linux 3.0不可用...
#-A INPUT -m limit --limit 5/min -j LOG --log-prefix "iptables denied:" --log-level 7
# arm linux 3.0不可用...
#-A INPUT -j REJECT --reject-with icmp-port-unreachable
# arm linux 3.0不可用...
#-A FORWARD -j REJECT --reject-with icmp-port-unreachable

#拒绝 未定义规则.(注意:如果22端口未加入允许规则,SSH链接会直接断开。)  REJECT
-A INPUT -j DROP
-A FORWARD -j DROP 

COMMIT
# Completed on Tue May  6 14:54:02 2014
# Generated by iptables-save v1.4.14 on Tue May  6 14:54:09 2014
时间: 2024-10-24 00:35:55

arm,iptables: No chain/target/match by that name.的相关文章

docker0: iptables: No chain/target/match by that name错误处理

今天运行这个命令时报错 docker run -it --name Haproxy --link app1:app1 --link app2:app2 -p 6302:6301 -v ~/Projects/HAProxy:/tmp haproxy /bin/bash 报错信息: docker: Error response from daemon: failed to create endpoint Haproxy on network bridge: iptables failed: ipta

docker启动容器报&quot;iptables No chain/target/match&quot;

Centos 7 docker 启动grafana容器报"iptables No chain/target/match by that name" docker run -d -p 3000:3000  grafana/grafana:5.1.0   Error response from daemon: Cannot start container 565c06efde6cd4411e2596ef3d726817c58dd777bc5fd13762e0c34d86076b9e: ip

docker运行报错docker0: iptables: No chain/target/match by that name.

转自:https://blog.csdn.net/wohaqiyi/article/details/84450562 docker运行报错docker0: iptables: No chain/target/match by that name.  最近在一个新的服务器上装服务,没有安装iptables ,后来安装了iptables 之后,忽然发现我的docker 不能运行了.  注意,可能别人的不行,我这个原因是,开始在新服务器上没有安装iptables ,先安装的docker ,后来才停用默

iptables的CLUSTER target与以太网交换机的思想

周末的空气闷热,一想到以后再也不会像样地下雨就心里一阵悲哀.每个周末我都会抽出一个晚上总结一周的所有事情,不管是工作的,生活的,还是上下班路上的所见所闻抑或者路上的读后感,由于不再下雨,我决定周六晚上好好睡一觉,那就周五晚上折腾.       在给同事解释交换机和HUB的原理的时候,想到了某些时候,HUB才是更加高效的选择,你看,iptables的朴实的CLUSTER target和F5的高大上负载均衡设备之间区别不就是一台HUB和一台学习型以太网交换机之间的区别吗?我们先来看看CLUSTER

Part 1: Setting up ARM GNU tool chain

ARM Build Tools GNU Tools for ARM Embedded Processors. GNU Make for Windows. GNU Tools for ARM Embedded Processors 1. 到网站下载最新GUN ARM工具链,https://developer.arm.com/open-source/gnu-toolchain/gnu-rm 2. 安装GUN ARM工具链. 3. 将GUN工具链安装路径添加到环境变量. set path=%path%

iptables rule

和H3C中的acl很像,或者就是一会事,这就是不知道底层的缺陷,形式一变,所有的积累都浮云了 参考准确的说copy from http://www.ibm.com/developerworks/cn/linux/network/s-netip/,IBM伟大的公司,文章没有关于权限的琐碎声明,话说回来,别人可读,就有权利粘贴,只要目的不脏 可以做什么:1,安全2,阻塞广告 1,网络中的位置 2,内核相关配置 CONFIG_PACKET : 如果要使应用程序和程序直接使用某些网络设备,那么这个选项是

解决Docker容器 iptables问题

一.问题现象 最近在研究Docker容器日志管理时,启动容器出现iptables相关报错,具体问题如下 运行容器 [[email protected] ~]# docker run -d -p 24224:24224 -p 24224:24224/udp -v /data:/fluentd/log fluent/fluentd 出现如下报错 docker: Error response from daemon: driver failed programming external connect

运行容器出现docker: Error response from daemon: driver failed programming external connectivity on endpoint elegant_ptolemy (7fe85ca6bd744449ff82b81c1577d73b6821c4e51780c8238fad6aa0cb940522): (iptables fai

运行容器时出现以下报错: docker: Error response from daemon: driver failed programming external connectivity on endpoint elegant_ptolemy (7fe85ca6bd744449ff82b81c1577d73b6821c4e51780c8238fad6aa0cb940522):  (iptables failed: iptables --wait -t nat -A DOCKER -p tc

iptables 删除规则

iptables -nL --line-number显示每条规则链的编号 iptables -D FORWARD 2删除FORWARD链的第2条规则,编号由上一条得知.如果删除的是nat表中的链,记得带上-t nat iptables -D INPUT -j REJECT --reject-with icmp-host-prohibited删除规则的第二种方法,所有选项要与要删除的规则都相同才能删除,否则提示iptables: No chain/target/match by that name