防火墙方法,linux防火墙禁IP

linux中VPS 上安插 iptables 防火墙,唯有linux中的apache能力够动用那些效应,在windows中不具体此功效哦。

iptables防火墙配置不佳就足以变成大家温馨也上不断服务器哦,上面大家一块来看看自个儿在今日vps告急,ssh都登陆不上来,上去很劳顿的查了日记,开掘多少个ip访谈极度,应该是某插件的爬虫,从前把图轻松iptables禁止使用了,只可以重复张开,首要命令如下

linux下实用iptables封ip段的部分广泛命令:

此地是叁个对象在采纳linux系统时的片段常用到的iptables防火墙准则整理了一篇小说,上边小编转过来作记录的同期也给诸位同学参考参谋。

ssh都登陆不上去,上去很不方便的查了日志,开掘多少个ip访谈十一分,应该是某插件的爬虫,从前把图轻巧iptables禁止使用了,只可以重新翻开,主要命令如下:

 代码如下

封单个IP的一声令下是:
iptables -I INPUT -s 211.1.0.0 -j DROP

安装iptables防火墙

 代码如下

复制代码

封IP段的授命是:
iptables -I INPUT -s 211.1.0.0/16 -j DROP
iptables -I INPUT -s 211.2.0.0/16 -j DROP
iptables -I INPUT -s 211.3.0.0/16 -j DROP

一旦没有安装iptables要求先安装,CentOS试行:

复制代码

# 查看情形
$ service iptables status

封整个段的一声令下是:
iptables -I INPUT -s 211.0.0.0/8 -j DROP

yum install iptables
Debian/Ubuntu执行:

# 查看情形
service iptables status
 
# 查看准绳
iptables -L -n
 
# 清除私下认可准绳
iptables -F
iptables -X
iptables -Z
 
#####创建新的条条框框######
# 允许地点回环 127.0.0.1
iptables -A INPUT -i lo -p all -j ACCEPT
 
# 允许已经济建设立的具备连接
iptables -A INPUT -p all -m state --state ESTABLISHED,RELATED -j ACCEPT
 
# 允许全体向外发起的总是
iptables -A OUTPUT -j ACCEPT
 
# 拒绝 ping
iptables -A INPUT -p icmp -m icmp --icmp-type 8 -j REJECT
 
# 允许 SSH 服务端口(须求求开拓,不然就不可能ssh了)
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
 
# 允许 Web 服务端口
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
 
# 拒绝任何兼具未被允许的连接
iptables -A INPUT -j REJECT
iptables -A FORWARD -j REJECT
 
# 禁用ip
iptables -I INPUT -s 124.115.0.199 -j DROP
# 封IP段的通令是
iptables -I INPUT -s 124.115.0.0/16 -j DROP
# 封整个段的吩咐是
iptables -I INPUT -s 194.42.0.0/8 -j DROP
# 封多少个段的下令是
iptables -I INPUT -s 61.37.80.0/24 -j DROP
iptables -I INPUT -s 61.37.81.0/24 -j DROPdport表示指标,sport代表来源,output表示本机出,input表示访问本机

# 查观念规
$ iptables -L -n

封多少个段的命令是:
iptables -I INPUT -s 61.37.80.0/24 -j DROP
iptables -I INPUT -s 61.37.81.0/24 -j DROP

apt-get install iptables

接下来正是保存和开机运行centos

# 清除私下认可准绳
$ iptables -F
$ iptables -X
$ iptables -Z

想在服务器运行自运转的话有多个艺术:
1、把它加到/etc/rc.local中
2、iptables-save >;/etc/sysconfig/iptables能够把您眼下的iptables法规放到/etc/sysconfig/iptables中,系统运转iptables时自动实践。
3、service iptables save 也足以把你眼下的iptables法则放/etc/sysconfig/iptables中,系统运维iptables时自动实践。
后三种越来越好此,一般iptables服务会在network服务以前启来,更安全。

消除已有iptables法规

 代码如下

#####确立新的平整######
# 允许地点回环 127.0.0.1
$ iptables -A INPUT -i lo -p all -j ACCEPT

解封的话:
iptables -D INPUT -s IP地址 -j REJECT
iptables -F 全清掉了   

iptables -F
iptables -X
iptables -Z

复制代码

# 允许已经确立的富有连接
$ iptables -A INPUT -p all -m state --state ESTABLISHED,RELATED -j ACCEPT

 

盛开钦赐的端口

service iptables save # 保存
service iptables restart # 重启
chkconfig iptables on # 确认劳动会随开机自动运维

# 允许持有向外发起的连年
$ iptables -A OUTPUT -j ACCEPT

Linux防火墙Iptable怎么着设置只允许有个别ip访问80端口,只同意特定ip访谈某端口?参照他事他说加以考察下边发号施令,只允许46.166.150.22寻访本机的80端口。借使要设置任何ip或端口,改改就能够。

#允许地点回环接口(即运维本机访谈本机)
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

上安插 iptables 防火墙,唯有linux中的apache本领够选用这些效应,在windows中不现实此效率哦。 ssh都登入不上去,上去很困难的查了日...

# 拒绝 ping
$ iptables -A INPUT -p icmp -m icmp --icmp-type 8 -j REJECT

iptables -I INPUT -p TCP --dport 80 -j DROP
iptables -I INPUT -s 46.166.150.22 -p TCP --dport 80 -j ACCEPT

屏蔽IP

# 允许 SSH 服务端口(必需求张开,不然就不能够ssh了)
$ iptables -A INPUT -p tcp --dport 22 -j ACCEPT

在root顾客下施行上边2行命令后,重启iptables, service iptables restart

#若果只是想屏蔽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

# 允许 Web 服务端口
$ iptables -A INPUT -p tcp --dport 80 -j ACCEPT

查阅iptables是或不是见效:

#外网 eth0 ──ip为全自动获取
#内网 eth1 ──ip 172.16.0.0/16

# 拒绝任何具备未被允许的连接
$ iptables -A INPUT -j REJECT
$ iptables -A FORWARD -j REJECT

[root@www.ctohome.com]# iptables -L
Chain INPUT (policy ACCEPT)
target           prot opt source               destination         
ACCEPT     tcp  --  46.166.150.22    anywhere            tcp dpt:http 
DROP         tcp  --  anywhere             anywhere            tcp dpt:http 

#!/bin/sh
#
modprobe ipt_MASQUERADE
modprobe ip_conntrack_ftp
modprobe ip_nat_ftp
iptables -F
iptables -t nat -F
iptables -X
iptables -t nat -X

# 禁用ip
$ iptables -I INPUT -s 124.115.0.199 -j DROP
# 封IP段的通令是
$ iptables -I INPUT -s 124.115.0.0/16 -j DROP
# 封整个段的吩咐是
$ iptables -I INPUT -s 194.42.0.0/8 -j DROP
# 封多少个段的下令是
$ iptables -I INPUT -s 61.37.80.0/24 -j DROP
$ iptables -I INPUT -s 61.37.81.0/24 -j DROP

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

#INPUT

dport代表指标,sport代表来源,output代表本机出,input表示访问本机

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination        

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

下一场就是保存和开机运维centos

 下边命令是本着全部服务器(全体ip)禁止80端口,假诺只是急需禁止服务器上某些ip地址的80端口,怎么做?

#允许内网samba(能和windows文件分享通讯的三个linux协,不必的不用张开),smtp,pop3,必要imap等合计的,请自行增添相应端口
iptables -A INPUT -p tcp -m multiport --dports 110,80,25,445,1863,5222 -j ACCEPT
iptables -A INPUT -p tcp -s 172.16.0.0/16 --dport 139 -j ACCEPT

 代码如下

上边包车型地铁通令是只允许来自174.140.3.190的ip访谈服务器上216.99.1.216的80端口

#同意dns分析通过,假设内网设置了DNS服务器(转载器),那只允许转载器那几个IP能过,请自行修改,(-s ip)
iptables -A INPUT -i eth1 -p udp -m multiport --dports 53 -j ACCEPT

复制代码

iptables -A FORWARD -s 174.140.3.190 -d 216.99.1.216 -p tcp -m tcp --dport 80 -j ACCEPT 
iptables -A FORWARD -d 216.99.1.216 -p tcp -m tcp --dport 80 -j DROP

#同意外网vpn连接(集团客商有VPN的话,须要开辟)
#iptables -A INPUT -p tcp --dport 1723 -j ACCEPT
#iptables -A INPUT -p gre -j ACCEPT

# 保存
$ service iptables save
# 重启
$ service iptables restart
# 确认劳动会随开机自动运转
$ chkconfig iptables on

一旦你不熟悉linux的ssh命令,那么可以在webmin/virtualmin面板中装置,到达同等功用。参谋:webmin面板如何设置允许特定ip访谈80端口,禁止80端口

iptables -A INPUT -s 172.16.0.0/16 -p tcp -m state --state ESTABLISHED,RELATED -j ACCEPT

总结

更加多iptables参照他事他说加以考察命令如下:

#只允许最多21个初叶连接,超越的抛开
iptables -A INPUT -i eth0 -p tcp --syn -m connlimit --connlimit-above 20 -j DROP

对此ssh端口假诺进行了改变大家也必需在ssh中连连端口进行改造哦,要不服务器没事是您端口上不去啊,同时尽量把ssh端口不要采纳暗许的。

1.先备份iptables

#同意最多十七个起来连接,抢先的放任
iptables -A INPUT -s 172.16.0/16 -p tcp --syn -m connlimit --connlimit-above 20 -j DROP

...

# cp /etc/sysconfig/iptables /var/tmp

#不准icmp通讯-ping 建议测验时毫无展开
#iptables -A INPUT -p icmp -m limit --limit 3/s -j LOG --log-level INFO --log-prefix "ICMP packet IN: "
#iptables -A INPUT -p icmp -j DROP

急需开80端口,钦命IP和局域网

#内网转载
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.0.0/24 -j MASQUERADE

上边三行的乐趣:

#防止SYN攻击 轻量
iptables -N syn-flood
iptables -A INPUT -p tcp --syn -j syn-flood
iptables -I syn-flood -p tcp -m limit --limit 3/s --limit-burst 6 -j RETURN
iptables -A syn-flood -j REJECT

先关闭全数的80端口

#FORWARD
iptables -P FORWARD DROP
iptables -A FORWARD -p tcp -s 172.16.0.0/16 -m multiport --dports 80,110,21,25,1723 -j ACCEPT
iptables -A FORWARD -p udp -s 172.16.0/16 --dport 53 -j ACCEPT

开启ip段192.168.1.0/24端的80口

#同意 vpn客商走vpn互联网连接外网(网吧一般不必开,公司有VPN的供给开发)
#iptables -A FORWARD -p gre -s 172.16.0.0/16 -j ACCEPT
#iptables -A FORWARD -p icmp -s 172.16.0.0/16 -j ACCEPT

开启ip段211.123.16.123/24端ip段的80口

#以下是禁QQ的,在网吧的话不要去掉前边的#
#iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
#iptables -I FORWARD -p udp --dport 53 -m string --string "tencent" -m time --timestart 8:15 --timestop 12:30 --days Mon,Tue,Wed,Thu,Fri,Sat -j DROP
#星期二到周日的8:00-12:30禁止qq通讯
#iptables -I FORWARD -p udp --dport 53 -m string --string "TENCENT" -m time --timestart 8:15 --timestop 12:30 --days Mon,Tue,Wed,Thu,Fri,Sat -j DROP
#周三到周末的8:00-12:30明令禁止qq通讯
#iptables -I FORWARD -p udp --dport 53 -m string --string "tencent" -m time --timestart 13:30 --timestop 20:30 --days Mon,Tue,Wed,Thu,Fri,Sat -j DROP
#iptables -I FORWARD -p udp --dport 53 -m string --string "TENCENT" -m time --timestart 13:30 --timestop 20:30 --days Mon,Tue,Wed,Thu,Fri,Sat -j DROP
#星期三到星期日的13:30-20:30明确命令禁止QQ通信
#iptables -I FORWARD -s 172.16.0.0/16 -m string --string "qq.com" -m time --timestart 8:15 --timestop 12:30 --days Mon,Tue,Wed,Thu,Fri,Sat -j DROP
#礼拜一到周末的8:00-12:30不准qq网页
#iptables -I FORWARD -s 172.16.0.0/24 -m string --string "qq.com" -m time --timestart 13:00 --timestop 20:30 --days Mon,Tue,Wed,Thu,Fri,Sat -j DROP
#周四到周六的13:30-20:30取缔QQ网页

# iptables -I INPUT -p tcp --dport 80 -j DROP 
# iptables -I INPUT -s 192.168.1.0/24 -p tcp --dport 80 -j ACCEPT
# iptables -I INPUT -s 211.123.16.123/24 -p tcp --dport 80 -j ACCEPT

#以下禁止部分多站,能同盟内网自行建造的DNS服务器提供错误的IP地址一齐利用
iptables -I FORWARD -s 172.16.0.0/16 -m string --string "xxx.com" -j DROP
iptables -I FORWARD -s 172.16.0.0/16 -m string --string "成人" -j DROP
iptables -I FORWARD -p tcp --sport 80 -m string --string "广告" -j DROP
#以上禁止部分网址,开支相对有一点大

以上是一时半刻设置。

#以下一段禁止BT,须要有ipp2p的模块
iptables -A FORWARD -m ipp2p --edk --kazaa --bit -j DROP
iptables -A FORWARD -p tcp -m ipp2p --ares -j DROP
iptables -A FORWARD -p udp -m ipp2p --kazaa -j DROP
#禁止BT连接

2.然后保存iptables

#以下是对出现连接进行调整
#只同意每组ip同一时间十多个80端口转发
iptables -A FORWARD -p tcp --syn --dport 80 -m connlimit --connlimit-above 20 --connlimit-mask 16 -j DROP

# service iptables save

#以下张开转发 在redhat中,能修改 /etc/sysconfig/sysctl 文件
sysctl -w net.ipv4.ip_forward=1 &>/dev/null

3.重启防火墙

#以下展开 syncookie (轻量级防范 DOS 攻击)
sysctl -w net.ipv4.tcp_syncookies=1 &>/dev/null

#service iptables restart

#安装默许 TCP 连接脑出血时间长度为 3800 秒(此选项能大大收缩连接数)
sysctl -w net.ipv4.netfilter.ip_conntrack_tcp_timeout_established=3800 &>/dev/null

===============以下是转发================================================

#设置协助最重庆接树为 30W(这些依据你的内部存款和储蓄器和 iptables 版本来,各种connection 须要 300 四个字节)
sysctl -w net.ipv4.ip_conntrack_max=300000 &>/dev/null

以下是端口,先全部封再开某个的IP

查看已增添的iptables法则

iptables -I INPUT -p tcp --dport 9889 -j DROP 
iptables -I INPUT -s 192.168.1.0/24 -p tcp --dport 9889 -j ACCEPT
设若用了NAT转载记得协作之下本领立竿见影

iptables -L -n
v:展现详细新闻,富含每条法则的相配包数量和相配字节数
x:在 v 的底子上,禁止自动单位换算(K、M) vps侦探
n:只展现IP地址和端口号,不将ip解析为域名

iptables -I FORWARD -p tcp --dport 80 -j DROP 
iptables -I FORWARD -s 192.168.1.0/24 -p tcp --dport 80 -j ACCEPT

去除已增添的iptables准则

 

将富有iptables以序号标识突显,实践:

 

iptables -L -n --line-numbers
例如要删减INPUT里序号为8的条条框框,实施:

常用的IPTABLES法规如下:
只可以收发邮件,其他都关门
iptables -I Filter -m mac --mac-source 00:0F:EA:25:51:37 -j DROP
iptables -I Filter -m mac --mac-source 00:0F:EA:25:51:37 -p udp --dport 53 -j ACCEPT
iptables -I Filter -m mac --mac-source 00:0F:EA:25:51:37 -p tcp --dport 25 -j ACCEPT
iptables -I Filter -m mac --mac-source 00:0F:EA:25:51:37 -p tcp --dport 110 -j ACCEPT

iptables -D INPUT 8

IPSEC NAT 策略
iptables -I PFWanPriv -d 192.168.100.2 -j ACCEPT
iptables -t nat -A PREROUTING -p tcp --dport 80 -d $INTERNET_ADDR -j DNAT --to-destination 192.168.100.2:80

...

iptables -t nat -A PREROUTING -p tcp --dport 1723 -d $INTERNET_ADDR -j DNAT --to-destination 192.168.100.2:1723

iptables -t nat -A PREROUTING -p udp --dport 1723 -d $INTERNET_ADDR -j DNAT --to-destination 192.168.100.2:1723

iptables -t nat -A PREROUTING -p udp --dport 500 -d $INTERNET_ADDR -j DNAT --to-destination 192.168.100.2:500

iptables -t nat -A PREROUTING -p udp --dport 4500 -d $INTERNET_ADDR -j DNAT --to-destination 192.168.100.2:4500

FTP服务器的NAT
iptables -I PFWanPriv -p tcp --dport 21 -d 192.168.1.22 -j ACCEPT
iptables -t nat -A PREROUTING -p tcp --dport 21 -d $INTERNET_ADDR -j DNAT --to-destination 192.168.1.22:21

只同意访谈钦赐网站
iptables -A Filter -p udp --dport 53 -j ACCEPT
iptables -A Filter -p tcp --dport 53 -j ACCEPT
iptables -A Filter -d www.ctohome.com -j ACCEPT
iptables -A Filter -d www.guowaivps.com -j ACCEPT
iptables -A Filter -j DROP

怒放叁个IP的某些端口,其余都密封
iptables -A Filter -p tcp --dport 80 -s 192.168.1.22 -d www.pconline.com.cn -j ACCEPT
iptables -A Filter -p tcp --dport 25 -s 192.168.1.22 -j ACCEPT
iptables -A Filter -p tcp --dport 109 -s 192.168.1.22 -j ACCEPT
iptables -A Filter -p tcp --dport 110 -s 192.168.1.22 -j ACCEPT
iptables -A Filter -p tcp --dport 53 -j ACCEPT
iptables -A Filter -p udp --dport 53 -j ACCEPT
iptables -A Filter -j DROP

两个端口
iptables -A Filter -p tcp -m multiport --destination-port 22,53,80,110 -s 192.168.20.3 -j REJECT

总是端口
iptables -A Filter -p tcp -m multiport --source-port 22,53,80,110 -s 192.168.20.3 -j REJECT iptables -A Filter -p tcp --source-port 2:80 -s 192.168.20.3 -j REJECT

指按期期上网
iptables -A Filter -s 10.10.10.253 -m time --timestart 6:00 --timestop 11:00 --days Mon,Tue,Wed,Thu,Fri,Sat,Sun -j DROP
iptables -A Filter -m time --timestart 12:00 --timestop 13:00 --days Mon,Tue,Wed,Thu,Fri,Sat,Sun -j ACCEPT
iptables -A Filter -m time --timestart 17:30 --timestop 8:30 --days Mon,Tue,Wed,Thu,Fri,Sat,Sun -j ACCEPT

取缔四个端口服务
iptables -A Filter -m multiport -p tcp --dport 21,23,80 -j ACCEPT

将WAN 口NAT到PC
iptables -t nat -A PREROUTING -i $INTERNET_IF -d $INTERNET_ADDR -j DNAT --to-destination 192.168.0.1

将WAN口8000端口NAT到192。168。100。200的80端口
iptables -t nat -A PREROUTING -p tcp --dport 8000 -d $INTERNET_ADDR -j DNAT --to-destination 192.168.1.22:80

MAIL服务器要转的端口
iptables -t nat -A PREROUTING -p tcp --dport 110 -d $INTERNET_ADDR -j DNAT --to-destination 192.168.1.22:110
iptables -t nat -A PREROUTING -p tcp --dport 25 -d $INTERNET_ADDR -j DNAT --to-destination 192.168.1.22:25

只同意PING 202。96。134。133,别的服务都禁止
iptables -A Filter -p icmp -s 192.168.1.22 -d 202.96.134.133 -j ACCEPT
iptables -A Filter -j DROP

禁用BT配置
iptables –A Filter –p tcp –dport 6000:20000 –j DROP

剥夺QQ防火墙配置
iptables -A Filter -p udp --dport ! 53 -j DROP
iptables -A Filter -d 218.17.209.0/24 -j DROP
iptables -A Filter -d 218.18.95.0/24 -j DROP
iptables -A Filter -d 219.133.40.177 -j DROP

基于MAC,只好收发邮件,别的都不肯
iptables -I Filter -m mac --mac-source 00:0A:EB:97:79:A1 -j DROP
iptables -I Filter -m mac --mac-source 00:0A:EB:97:79:A1 -p tcp --dport 25 -j ACCEPT
iptables -I Filter -m mac --mac-source 00:0A:EB:97:79:A1 -p tcp --dport 110 -j ACCEPT

禁用MSN配置
iptables -A Filter -p udp --dport 9 -j DROP
iptables -A Filter -p tcp --dport 1863 -j DROP
iptables -A Filter -p tcp --dport 80 -d 207.68.178.238 -j DROP
iptables -A Filter -p tcp --dport 80 -d 207.46.110.0/24 -j DROP

只同意PING 202。96。134。133 另外公网IP都未能PING
iptables -A Filter -p icmp -s 192.168.1.22 -d 202.96.134.133 -j ACCEPT
iptables -A Filter -p icmp -j DROP

禁绝某个MAC地址访谈internet:
iptables -I Filter -m mac --mac-source 00:20:18:8F:72:F8 -j DROP

明确命令禁止某些IP地址的PING:
iptables –A Filter –p icmp –s 192.168.0.1 –j DROP

取缔有些IP地址服务:
iptables –A Filter -p tcp -s 192.168.0.1 --dport 80 -j DROP
iptables –A Filter -p udp -s 192.168.0.1 --dport 53 -j DROP

只允许一些服务,其余都推辞(2条法则)
iptables -A Filter -p tcp -s 192.168.0.1 --dport 1000 -j ACCEPT
iptables -A Filter -j DROP

禁绝有个别IP地址的某部端口服务
iptables -A Filter -p tcp -s 10.10.10.253 --dport 80 -j ACCEPT
iptables -A Filter -p tcp -s 10.10.10.253 --dport 80 -j DROP

明确命令禁止有些MAC地址的某些端口服务

iptables -I Filter -p tcp -m mac --mac-source 00:20:18:8F:72:F8 --dport 80 -j DROP

禁绝有个别MAC地址访谈internet:
iptables -I Filter -m mac --mac-source 00:11:22:33:44:55 -j DROP

明确命令禁止有些IP地址的PING:
iptables –A Filter –p icmp –s 192.168.0.1 –j DROP

本文由星彩网app下载发布于星彩网app下载,转载请注明出处:防火墙方法,linux防火墙禁IP

TAG标签: 星彩网app下载
Ctrl+D 将本页面保存为书签,全面了解最新资讯,方便快捷。