linux ip限制的两种设置方式

经常网络被攻击,最有效的方式就是在linux操作系统上直接限制ip访问,主要有两种方式设置

1.使用hosts.allow和hosts.deny来设置ip白名单和黑名单,/etc/目录下
    优先级为先检查hosts.deny,再检查hosts.allow,
    后者设定可越过前者限制,
    例如:


        a.限制所有的ssh,除非从218.64.87.0 - 127上来。
            hosts.deny:
            in.sshd:ALL
            hosts.allow:
            in.sshd:218.64.87.0/255.255.255.128


        b.封掉218.64.87.0 - 127的telnet
            hosts.deny
            in.sshd:218.64.87.0/255.255.255.128


        c.限制所有人的TCP连接,除非从218.64.87.0 - 127访问
            hosts.deny
            ALL:ALL
            hosts.allow
            ALL:218.64.87.0/255.255.255.128


        d.限制218.64.87.0 - 127对所有服务的访问
            hosts.deny
            ALL:218.64.87.0/255.255.255.128


        其中冒号前面是TCP daemon的服务进程名称,通常系统

        进程在/etc/inetd.conf中指定,比如in.ftpd,in.telnetd,in.sshd

        其中IP地址范围的写法有若干中,主要的三种是:
        1.网络地址–子网掩码方式:
            218.64.87.0/255.255.255.0
        2.网络地址方式(我自己这样叫,呵呵)
            218.64.(即以218.64打头的IP地址)
        3.缩略子网掩码方式,既数一数二进制子网掩码前面有多少个“1”比如:
            218.64.87.0/255.255.255.0 – 218.64.87.0/24


        设置好后,要重新启动


        #/etc/rc.d/init.d/xinetd restart
        #/etc/rc.d/init.d/network restart

2.使用iptables命令

    单个IP的命令是
        iptables -I INPUT -s 80.241.219.171 -j DROP


    封IP段的命令是
        iptables -I INPUT -s 96.47.225.0/16 -j DROP
        iptables -I INPUT -s 96.47.225.0/16 -j DROP
        iptables -I INPUT -s 96.47.225.0/16 -j DROP


    封整个段的命令是
        iptables -I INPUT -s 96.47.225.0/8 -j DROP


    封几个段的命令是
        iptables -I INPUT -s 96.47.225.0/24 -j DROP
        iptables -I INPUT -s 96.47.225.0/24 -j DROP


    服务器启动自运行
        有三个方法:
        1、把它加到/etc/rc.local中
        2、vi /etc/sysconfig/iptables可以把你当前的iptables规则放到/etc/sysconfig/iptables中,系统启动iptables时自动执行。
        3、service iptables save 也可以把你当前的iptables规则放/etc/sysconfig/iptables中,系统启动iptables时自动执行。
        后两种更好此,一般iptables服务会在network服务之前启来,更安全


    解封:
        iptables -L INPUT
        iptables -L --line-numbers 然后iptables -D INPUT 序号


    iptables 限制ip访问
        通过iptables限制9889端口的访问(只允许192.168.1.101、192.168.1.102、192.168.1.103),其他ip都禁止访问
        iptables -I INPUT -p tcp --dport 9889 -j DROP
        iptables -I INPUT -s 192.168.1.101 -p tcp --dport 9889 -j ACCEPT
        iptables -I INPUT -s 192.168.1.102 -p tcp --dport 9889 -j ACCEPT
        iptables -I INPUT -s 192.168.1.103 -p tcp --dport 9889 -j ACCEPT

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值