因为日常管理中经常要限制IP访问,于是写了个iptables的配置脚本,这样就不用换一台机器配置一个了,一个脚本搞定
首先是iptables的基本命令:
iptables [-t表名] <-A| I |D |R > 链名[规则编号] [-i | o 网卡名称] [-p 协议类型] [-s 源IP地址 | 源子网][--sport 源端口号] [-d 目标IP地址 | 目标子网][--dport 目标端口号] <-j 动作><-A| I |D |R > 含义 加入(append) 一个新规则到一个链 (-A)的最后。 在链内某个位置插入(insert) 一个新规则(-I),通常是插在最前面。 在链内某个位置删除(delete) 一条规则 (-D)。 在链内某个位置替换(replace) 一条规则 (-R)。 如封一个IP段:iptables -I INPUT 1 -s 58.87.64.0/18 -j DROP查看规则:iptables -L
好了,大体上就这么多,看脚本:
set_iptables.sh #!/bin/bash IPT=/sbin/iptables IP_TRUSTED=211.69.102.0/255.255.255.0###WEB=80SSH=22 VNC=5901#,5801 ###MYSQL=3306# Delete Any Existing Chains In Filter Table$IPT -F -t filter$IPT -X -t filter$IPT -Z -t filter# Setting Default Policies, just accept output, drop any other$IPT -P INPUT DROP$IPT -P OUTPUT ACCEPT$IPT -P FORWARD DROP# Every host can connect this server s tcp port 20,21,80 ### $IPT -t filter -A INPUT -p tcp -m multiport --destination-port $FTPDATA,$FTP,$WEB -j ACCEPT # Setting SSH just trusted ip can connect it$IPT -t filter -A INPUT -s $IP_TRUSTED -p tcp -m multiport --destination-port $SSH,$VNC -j ACCEPT# This server can ping other host$IPT -t filter -A INPUT -p icmp --icmp-type 0 -j ACCEPT# Just trusted ip can ping this server$IPT -t filter -A INPUT -s $IP_TRUSTED -p icmp -j ACCEPT# Setting Input, this server can connect other server s tcp port 20,21,22,80,3306 # add TCP port to this one!!!$IPT -t filter -A INPUT -p tcp -m multiport --source-port 20,21,22,80,3306 -j ACCEPT# Setting Input, this server can connect other server s udp port 53 # add UDP port to this one!!!$IPT -t filter -A INPUT -p udp -m multiport --source-port 53 -j ACCEPT# localhost$IPT -I INPUT -i lo -j ACCEPT
这个脚本默认只开了SSH的22和VNC的5901,如有需要,可以修改这个地方(比如开80端口):
# Setting SSH just trusted ip can connect it$IPT -t filter -A INPUT -s $IP_TRUSTED -p tcp -m multiport --destination-port $SSH,$VNC,80 -j ACCEPT
然后用 set_iptables.sh 脚本设置后,使用 service iptables save 导出规则到 /etc/sysconfig/iptables 或者用 iptables-save > /etc/sysconfig/iptables
这样就可以每次开机都如此设置iptables了。点此下载 相关脚本
转载于:https://www.cnblogs.com/bits/archive/2009/03/01/Linux-bash_iptables.html
相关资源:各显卡算力对照表!