大鸟在前一段时间有分享过几篇常规Linux服务器安装Web面板环境中进行配置SSL证书的文章,其中对于443端口我们需要单独的通过软件添加放行,或者直接编辑iptables进行添加放行规则。包括大鸟来讲,对于iptables软件仅仅停留在常规的需要中,如果真的要细化深入的研究,都能作为一个比较大的课题研究。
iptables是Linux系统IP过滤系统,通过规则的设定可以有效的解决信息传输过程中的IP过滤。大鸟暂时也没有精力很深入的研究,记得还有一本专门的iptables书籍,对于一般的用户而言,我们需要了解简单的安装、设定端口禁止、同行,以及简单的IP过滤还是有必要的。在这篇文章中,大鸟记录一点关于iptables功能的日常使用,以便以后需要用到的时候可以参考。
PS:这里考虑到我们常用的CentOS与Debian/Ubuntu系统的规则是稍有差异的,所以对于使用也要分开记录。目前还是先整理CentOS系统的,以后有时间整理和学习Debian/Ubuntu iptables。而且CentOS6.x与CentOS7.x还是有区别的,暂时这篇文章就是基于CentOS6.x,对于7.x以后再整理看看有何不同。
第一、安装iptables
yum install iptables -y
如果服务器没有安装iptables,直接yum安装即可。
第二、查看当前iptables规则
iptables -L -n
或者
cat /etc/sysconfig/iptables
通过两组命令,我们都可以看到当前iptables规则设定,比如设定的端口是否开放。(之前给网友解决一个问题,某个面板用过一段时间自定义的端口丢失,导致面板无法打开,然后重新添加端口保存)
第三、iptables状态、保存、重启
#状态
service iptables status
#保存
service iptables save
#关闭
service iptables stop
#重启
service iptables restart
我们设定规则之后需要保存,要不服务器重启之后将会失效。设定规则之后,重启iptables检查启动是否完好以及生效。
第四、清空iptables规则
iptables -F
清空规则,这个不要乱用。
第五、常用端口开启
# 开启22端口
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
#开启80端口
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
#开启443端口
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
根据需要开启放行,然后保存和重启生效。
第六、iptables屏蔽IP
#屏蔽单个IP
iptables -I INPUT -s xxx.xxx.xxx.xxx -j DROP
#解封单个IP
iptables -D INPUT -s xxx.xxx.xxx.xxx -j DROP
总结,以上简单记录到CentOS6.x服务器iptables规则的使用,以后再补充。比如我们常用的CentOS6.x与CentOS7.x稍微是有区别的,后者采用systemctl来管理程序和服务,后面7.x系统再研究研究。