Linux服务器怎样设置防火墙

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux服务器怎样设置防火墙相关的知识,希望对你有一定的参考价值。

一、怎样在Linux系统中安装Iptables防火墙?

几乎所有Linux发行版都预装了Iptables。您可以使用以下命令更新或检索软件包:

sudo apt-get install iptables
二、关闭哪些防火墙端口?

防火墙安装的第一步是确定哪些端口在服务器中保持打开状态。这将根据您使用的服务器类型而有所不同。例如,如果您运行的是Web服务器,则可能需要打开以下端口:

网络:80和443
SSH:通常在端口22上运行
电子邮件:110(POP3),143(IMAP),993(IMAP SSL),995(POP3 SSL)。
1、还原默认防火墙规则

为确保设置无误,我们需从一套新的规则开始,运行以下命令来清除防火墙中的规则:

iptables -F
2、屏蔽服务器攻击路由

我们可以运行下列标准命令来隔绝常见的攻击。

屏蔽syn-flood数据包:
iptables -A INPUT -p tcp ! –syn -m state –state NEW -j DROP
屏蔽XMAS数据包:
iptables -A INPUT -p tcp –tcp-flags ALL ALL -j DROP
阻止无效数据包:
iptables -A INPUT -p tcp –tcp-flags ALL NONE -j DROP
3、打开所需端口

根据以上命令可屏蔽常见的攻击方式,我们需要打开所需端口。下列例子,供您参考:

允许SSH访问:

iptables -A INPUT -p tcp -m tcp -dport 22 -j ACCEPT
打开LOCALHOST访问权限:
iptables -A INPUT -i lo -j ACCEPT
允许网络流量:
iptables -A INPUT -p tcp -m tcp -dport 80 -j ACCEPT
iptables -A INPUT -p tcp -m tcp -dport 443 -j ACCEPT
允许SMTP流量:
iptables -A INPUT -p tcp -m tcp -dport 25 -j ACCEPT
iptables -A INPUT -p tcp -m tcp -dport 465 -j ACCEPT
三、测试防火墙配置

运行下列命令保存配置并重新启动防火墙:

iptables -L -n
iptables-save / sudo tee / etc / sysconfig / iptables
service iptables restart
以上就是简单的iptables防火墙安装与配置过程。
参考技术A CentOS_6.5配置iptables防火墙策略

#清除预设表filter中的所有规则链的规则
iptables -F

#清除预设表filter中使用者自定链中的规则
iptables -X

#保存iptables配置
service iptables save

#重启iptables服务
service iptables restart

#查看iptables规则
iptables -L -n

#查看iptables规则文件
cat /etc/sysconfig/iptables

#设定预设规则
iptables -P INPUT DROP这个命令可以在设置了ssh后,再设置成drop要不就阻挡了远程登陆了。
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP

#开启22端口
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
#如果OUTPUT设置成DROP需要添加 iptables -A OUTPUT -p tcp --sport 22 -jACCEPT
#关闭22端口 iptables -D INPUT -p tcp --dport 22 -j ACCEPT

#开启常用端口
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 3306 -j ACCEPT
#iptables -A OUTPUT -p tcp --sport 80 -j ACCEPT
#iptables -A OUTPUT -p tcp --sport 3306 -j ACCEPT
#iptables -A INPUT -p tcp --dport 20 -j ACCEPT
#iptables -A INPUT -p tcp --dport 21 -j ACCEPT
#iptables -A INPUT -p tcp --dport 10000 -j ACCEPT
#iptables -A INPUT -p tcp --dport 25 -j ACCEPT
#iptables -A INPUT -p tcp --dport 110 -j ACCEPT
#iptables -A INPUT -p udp --dport 53 -j ACCEPT

#允许ping
iptables -A INPUT -p icmp -j ACCEPT
#如果OUTPUT设置成DROP需要添加 iptables -A OUTPUT -p icmp -j ACCEPT

#允许loopback
iptables -A INPUT -i lo -p all -j ACCEPT
#如果OUTPUT设置成DROP需要添加 iptables -A OUTPUT -o lo -p all -jACCEPT

参考www.5sharing.com/android/news/fwbs/10.html

以上是关于Linux服务器怎样设置防火墙的主要内容,如果未能解决你的问题,请参考以下文章

本地怎样访问虚拟机上的服务器

linux dhcp 如何设置白名单?

在linux里面如何设置防火墙?

linux下怎样设置ssh无密码登录

Linux自有服务+防火墙+计划任务

Linux服务器防火墙白名单设置