当前位置:首页 » 文件传输 » iptables屏蔽某端口访问
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

iptables屏蔽某端口访问

发布时间: 2022-12-08 09:48:35

① linux 用iptables 如何禁止本机某一个网卡去访问别人的80服务

iptables -t filter -A OUTPUT -s网卡IP -d0.0.0.0/0 -p tcp --dport 80 -j DROP

② LInux iptables 屏蔽设置

1.修改SSH配置文件:/etc/ssh/sshd_config #找到Port 22,这里是标识默认使用22端口,修改为:

Port 22

Port 1234

/etc/init.d/sshd restart

#这样SSH端口将同时工作在22、1234上

查看防火墙规则

1、iptables -nvL

2、more /etc/sysconfig/iptables

2.添加防火墙规则

iptables -A INPUT -p tcp --dport 22 -j ACCEPT

iptables -A INPUT -p tcp --dport 1234 -j ACCEPT

/etc/rc.d/init.d/iptables save

/etc/rc.d/init.d/iptables restart

然后使用SSH工具 测试 你所设置的端口是否能正常使用

如果能正常使用返回到第一步,删除原来的22端口,以及修改防火墙配置文件

之所以先设置成两个端口,测试成功后再关闭一个端口,是为了方式在修改的过程中,万一出现掉线、断网、误操作等未知情况时候,还能通过另外一个端口连接上去调试以免发生连接不上的状况。

开启自动启动:chkconfig iptables on

开启不自动启动:chkconfig iptables off

附录:

设定预设规则,INPUT链默认拒绝,OUTPUT链默认接受,FORWARD链默认拒绝

iptables -F #清除预设表filter中的所有规则链的规则

iptables -X #清除预设表filter中使用者自定链中的规则

iptables -P INPUT DROP

iptables -P OUTPUT ACCEPT

iptables -P FORWARD DROP

iptables -L -n --line #按行数显示防火墙规则

iptables -D INPUT 1 #删除INPUT表第一条

iptables -A INPUT -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT #来源、目的为127.0.0.1都接受,这条放最后就可以了

1、安装iptables防火墙

如果没有安装iptables需要先安装,CentOS执行:

yum install iptables

Debian/Ubuntu执行:

apt-get install iptables

2、清除已有iptables规则

iptables -F

iptables -X

iptables -Z

3、开放指定的端口

#允许本地回环接口(即运行本机访问本机)

iptables -A INPUT -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT

# 允许已建立的或相关连的通行

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

#允许所有本机向外的访问

iptables -A OUTPUT -j ACCEPT

# 允许访问22端口

iptables -A INPUT -p tcp --dport 22 -j ACCEPT

#允许访问80端口

iptables -A INPUT -p tcp --dport 80 -j ACCEPT

#允许FTP服务的21和20端口

iptables -A INPUT -p tcp --dport 21 -j ACCEPT

iptables -A INPUT -p tcp --dport 20 -j ACCEPT

#如果有其他端口的话,规则也类似,稍微修改上述语句就行

#禁止其他未允许的规则访问

iptables -A INPUT -j REJECT (注意:如果22端口未加入允许规则,SSH链接会直接断开。)

iptables -A FORWARD -j REJECT

4、屏蔽IP

#如果只是想屏蔽IP的话“3、开放指定的端口”可以直接跳过。

#屏蔽单个IP的命令是

iptables -I INPUT -s 123.45.6.7 -j DROP

#封整个段即从123.0.0.1到123.255.255.254的命令

iptables -I INPUT -s 123.0.0.0/8 -j DROP

#封IP段即从123.45.0.1到123.45.255.254的命令

iptables -I INPUT -s 124.45.0.0/16 -j DROP

#封IP段即从123.45.6.1到123.45.6.254的命令是

iptables -I INPUT -s 123.45.6.0/24 -j DROP

5、查看已添加的iptables规则

iptables -L -n

v:显示详细信息,包括每条规则的匹配包数量和匹配字节数

x:在 v 的基础上,禁止自动单位换算(K、M) vps侦探

n:只显示IP地址和端口号,不将ip解析为域名

6、删除已添加的iptables规则

将所有iptables以序号标记显示,执行:

iptables -L -n --line-numbers

比如要删除INPUT里序号为8的规则,执行:

iptables -D INPUT 8

7、iptables的开机启动及规则保存

CentOS上可能会存在安装好iptables后,iptables并不开机自启动,可以执行一下:

chkconfig --level 345 iptables on

开启自动启动:chkconfig iptables on

开启不自动启动:chkconfig iptables off

将其加入开机启动。

CentOS上可以执行:

service iptables save

/etc/rc.d/init.d/iptables save

/etc/rc.d/init.d/iptables restart

保存规则。

另外更需要注意的是Debian/Ubuntu上iptables是不会保存规则的。

需要按如下步骤进行,让网卡关闭是保存iptables规则,启动时加载iptables规则:

创建/etc/network/if-post-down.d/iptables 文件,添加如下内容:

#!/bin/bash

iptables-save > /etc/iptables.rules

执行:chmod +x /etc/network/if-post-down.d/iptables 添加执行权限。

创建/etc/network/if-pre-up.d/iptables 文件,添加如下内容:

#!/bin/bash

iptables-restore < /etc/iptables.rules

执行:chmod +x /etc/network/if-pre-up.d/iptables 添加执行权限。

关于更多的iptables的使用方法可以执行:iptables --help或网上搜索一下iptables参数的说明。

注:每次服务在停止之前会自动将现有的规则保存

在 /etc/sysconfig/iptables 这个文件中去.

③ 利用iptables ,如何关闭3006端口的服务,或限制外部IP访问3006端口,ssh命令是什么呢

限制访问本机的3006端口的服务的iptables规则:
iptables -A INPUT -p tcp --dport 3006 -j DROP
iptables -A INPUT -p udp --dport 3006 -j DROP

ssh服务对应的22端口
通过命令
ps -aux | grep ssh
可以看到提供ssh服务的进程。
如果你想使用ssh访问192.168.1.1服务器,就用命令
ssh 192.168.1.1就可以了,然后输入用户名和密码,就可以登录到192.168.1.1的shell命令行了。

④ linux的iptables如何禁止不同网段访问端口

禁止同网段的单个IP你知道怎么操作的话,禁止不同网段也很简单了,只需要把单个IP换成以子网掩码格式表示的网段地址即可。
比如你给出的网段地址172.16.101.0这个网段,你只禁用172.16.101.50-172.16.101.254这个地址段,前面的一段不禁用,那么就需要计算对应的子网掩码值,前面不禁用的共49个地址,2的5次方是32,2的6次方是64。那么掩码值就是29或者30,对应不到49个ip地址。因此你可以这样配置:
禁用172.168.101.0/29 地址段,放行了172.168.101.1-172.168.101.31,还需要单独放行172.168.101.32-172.168.101.49,你就需要单独每个ip来进行放行了。后面的整段IP禁用就比较简单了,直接禁用
172.168.102.0/24
172.168.103.0/24
我这里只是提供一个思路,如果你觉得比较麻烦,那么还可以自己计算172.168.101.0-172.168.202.0这个网段的子网掩码,我计算了以下,大概是
172.168.101.0/23,但是中间还有若干个网段需要单独设置,具体的操作就要你自己来做了。

⑤ iptables实现禁用端口

iptables实现禁用端口!
这里用iptables屏蔽端口25,防止被利用发垃圾邮件导致VPS被封

用iptables屏蔽全部IP连接25端口:

上面这一条命令就够了

=======

如果需要特殊情况请看下面的命令

只允许特定ip连接25端口:

重新禁止此ip连接25端口,删除上述许可记录就可以了:

需要禁止特定ip连接25端口:

⑥ Linux下如何用iptables限制某段IP访问服务器

比如禁止192.168.0.x网段访问服务器iptables -A input -p tcp -s 192.168.0.0/24 -j DROP如果是允许访问iptables -A input -p tcp -s 192.168.0.0/24 -j ACCEPT如果是禁止访问服务器某一端口号iptables -A input -p tcp -s 192.168.0.0/24 --dport (端口号) -DROP 差不多就是这样了,如果还要学习的话就要看书了。发给你个Iptables命令基础参考资料http://wenku..com/view/4c5eb5d528ea81c758f578df.html

⑦ 求5条iptables命令关闭所有端口(除80端口外),封锁整个linux

1、关闭所有的 INPUT FORWARD OUTPUT 只对某些端口开放。
下面是命令实现:
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP
再用命令 iptables -L -n 查看 是否设置好, 好看到全部 DROP 了
这样的设置好了,我们只是临时的, 重启服务器还是会恢复原来没有设置的状态
还要使用 service iptables save 进行保存
看到信息 firewall rules 防火墙的规则 其实就是保存在 /etc/sysconfig/iptables
可以打开文件查看 vi /etc/sysconfig/iptables
2、下面我只打开22端口,看我是如何操作的,就是下面2个语句
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT
再查看下 iptables -L -n 是否添加上去, 看到添加了
Chain INPUT (policy DROP)
target prot opt source destination
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:22
Chain FORWARD (policy DROP)
target prot opt source destination
Chain OUTPUT (policy DROP)
target prot opt source destination
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp spt:22
现在Linux服务器只打开了22端口,用putty.exe测试一下是否可以链接上去。
可以链接上去了,说明没有问题。
最后别忘记了保存 对防火墙的设置
通过命令:service iptables save 进行保存
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT
针对这2条命令进行一些讲解吧
-A 参数就看成是添加一条 INPUT 的规则
-p 指定是什么协议 我们常用的tcp 协议,当然也有udp 例如53端口的DNS
到时我们要配置DNS用到53端口 大家就会发现使用udp协议的
而 --dport 就是目标端口 当数据从外部进入服务器为目标端口
反之 数据从服务器出去 则为数据源端口 使用 --sport
-j 就是指定是 ACCEPT 接收 或者 DROP 不接收

⑧ ubuntu 使用iptables 如何禁止任何和端口5353的访问

iptables -A INPUT -S port:5353 deny 就是禁止任意IP的源口为5353的包入站
或者

iptables -A OUTPUT -d port:5353 deny 禁止任意IP的目的口为5353的包出站
可以设置行为禁止做丢弃包,这是对你本机,转发的要另写

⑨ linux下如何屏蔽端口

端口是linux下应用软件因需要而开启的socket套接字,具有唯一性。端口可以查看、启动关闭、设置防火墙规则等。

1、端口查看

netstat -tln //表示已数字形式查看,正在监听的端口

netstat -ap //查看所有应用占用端口情况

2、启动停止

端口自己是不会停止和启动的,需要停止和启动的是端口对应的应用。

可以先找到端口,再对应PID,命令如下:

netstat -anp|grep 57069 //这个是要找的端口号

lsof -i:57069 //查找器PID信息

第三部杀死进程:图例里面没有在这里写上,kill -9 PID

3、屏蔽

linux下一般使用防火墙的filter规则 定义允许或者不允许进行屏蔽。对于filter一般只能做在3个链上:INPUT ,FORWARD ,OUTPUT。

例如设置在输入端屏蔽53端口:

iptables-AINPUT1-d172.16.100.1-pudp--dport53-jREJECT

-A是增加规则,-d:表示匹配目标地址,-pudp表示UPD协议,--dPort 是端口53

这里表示在输入端目的地址是172.16.100.1的53端口被屏蔽

⑩ linux运维之iptables的一些操作(参考大神的)

1.安装iptables管理命令

2.加载防火墙的内核模块

3.查看已加载的模块

4.启动防火墙

首先停止firewalld

开启iptables

1.查看防火墙规则

2.清除防火墙规则

3.添加防火墙规则

4.网络连接状态

5.删除某个规则

1.禁止某个端口访问

2.规则解释:

3.禁止除跳板机以外的IP访问

4.匹配端口范围

 5. 匹配ICMP类型

6.一些操作

1、封掉10.0.0.7

2、让10.0.0.7和SSH客户端(10.0.0.1)服务器可以Ping,其它的不能Ping

3、封掉3306端口

1.从上往下依次匹配

2.一但匹配上,就不在往下匹配了

3.默认规则,默认的情况,默认规则是放行所有

-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT

iptables A INPUT -p tcp -m state --dport 22 -j DROP

禁止一个数据包:

tcp协议

访问的端口是22

禁止源地址是10.0.0.7的主机访问22端口

禁止源地址是10.0.0.7的主机访问任何端口

禁止源地址是10.0.0.8的主机访问80端口

禁止除了10.0.0.7以外的地址访问80端口

2条规则冲突,会以谁先谁为准

禁止10.0.0.7访问22和80端口

禁止10.0.0.7访问22到100之间的所有端口

禁止所有主机ping

放行10.0.0.7可以ping

只允许10.0.0.7可以ping

等同于上一条,优化版,只要不是10.0.0.7就不允许ping

优先级:

匹配频次最高的条件放前面