iptables指定ip访问指定端口

一.使用iptables批量做访问限制,只允许某个ip访问指定端口

1.1编写如下的shell脚本

#!/usr/bin/bash
#开放哪些网段的主机可访问,subnets中填写开放哪些网段的主机ip,多个ip用空格隔开即可
    subnets=(192.168.116.1 192.168.116.22 192.168.116.21)
#要屏避的端口列表,根据实际可能会有不同,多个端口使用空格隔开,连续的使用冒号,比如17000:17999
    ports=(17000:17999 2000 2181 9870 22)
 
    for port in ${ports[*]} ; do
               echo $port
        for subnet in ${subnets[*]} ; do
             iptables -A INPUT -p tcp -s $subnet --dport $port -j ACCEPT
        done
        iptables -A INPUT -p tcp --dport $port -j REJECT
done

1.2 执行脚本后查看所有规则

二、单独追加

2.1防火墙是层层过滤的,实际是按照配置规则的顺序从上到下,从前到后进行过滤的。所以允许的规则必须放在拒绝之前。

iptables -I INPUT -p tcp --dport 22 -s 192.168.116.23 -j ACCEPT

2.2使用上面单独追加命令后,这条可访问的在第一条,也就是在拒绝规则之前

三、查看规则

3.1带有序号查看

iptables -L -n --line-number

四、删除规则

4.1其中数字3就是规则的编号,删除上一步查询到的第三条规则

iptables -D INPUT 3

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值