使用Ufw和Firewalld的Zimbra防火墙配置
在本教程中,我们将研究如何分别使用Firewalld和Ufw在CentOS 7,Debian和Ubuntu服务器上保护Zimbra协作套件的安全。如果服务器运行的是CentOS 6.x,则可以为其使用UFW或者raw iptables命令,但是端口号保持不变。
在Ubuntu和CentOS上安装UFW
使用以下命令在Ubuntu上安装UFW:
sudo apt-get update && sudo apt-get -y install ufw
对于CentOS,ufw软件包可在EPEL存储库中获得,如下添加:
sudo yum -y install epel-release sudo yum makecache fast sudo yum -y install ufw
在CentOS 7.x上安装Firewalld
如果CentOS尚未附带防火墙,则可以使用以下命令进行安装:
sudo makecache fast sudo yum -y install firewalld
启动并启用防火墙服务。
sudo systemctl start firewalld sudo systemctl enable firewalld
Rember先添加ssh端口,以免被踢出。
对于Debian,请检查在Debian上安装Firewalld
使用UFW配置Zimbra防火墙
由于最近针对UDP端口的Memcache放大攻击,我们不会在防火墙端口11211/udp上启用Memcache的udp端口。好吧,仅将tcp端口保持打开状态,这可以防止这些攻击。阅读有关MemcacheMajor放大的更多信息。
对于ufw,将为UFW创建一个名为Zimbra的应用程序配置文件。因此,让我们如下创建此配置文件。
sudo vim /etc/ufw/applications.d/zimbra
添加以下内容:
[Zimbra] title=Zimbra Collaboration Server description=Open source server for email, contacts, calendar, and more. ports=22,25,80,110,143,161,389,443,465,514,587,993,995,7071,8443,11211/tcp
在ufw上启用应用配置文件
sudo ufw allow Zimbra sudo ufw enable
也添加ssh端口。
sudo ufw allow ssh
如果我们对Zimbra配置文件进行了任何更改,请使用以下命令进行更新:
$sudo ufw app update Zimbra Rules updated for profile 'Zimbra' Skipped reloading firewall
对于单服务器安装,不在本地服务器外部使用Memcache。考虑将其绑定到回送IP地址。使用以下命令:
sudo su - zimbra zmprov ms zmhostname zimbraMemcachedBindAddress 127.0.0.1 zmprov ms zmhostname zimbraMemcachedClientServerList 127.0.0.1
然后重新启动Memcached服务。
sudo su - zimbra -c "zmmemcachedctl restart"
使用Firewalld配置Zimbra防火墙
对于有防火墙的用户,首先,确认防火墙已处于运行状态。
sudo firewall-cmd --state running
如果未运行,请使用启动它。
sudo systemctl start firewalld
然后在防火墙上配置Zimbra端口和服务。
sudo firewall-cmd --add-service={http,https,smtp,smtps,imap,imaps,pop3,pop3s} --permanent sudo firewall-cmd --add-port 7071/tcp --permanent sudo firewall-cmd -add-port 8443/tcp --permanent
重新加载防火墙配置,
sudo firewall-cmd --reload
我们可以使用以下方法确认运行时设置:
$sudo firewall-cmd --list-all public target: default icmp-block-inversion: no interfaces: sources: services: dhcpv6-client http https imap imaps pop3 pop3s smtp smtps snmp ssh ports: 7071/tcp 8443/tcp ...
限制对管理控制台的访问
始终将对端口7071的访问限制为受信任的网络或者IP地址是一个好习惯。对于UFW,这是使用以下命令完成的:
$ sudo ufw allow from 192.168.1.10 to any port 7071 $sudo ufw allow from 192.168.1.0/24 to any port 7071
使用firewalld,我们可以使用富规则。
sudo firewall-cmd --permanent --zone=public --add-rich-rule 'rule family="ipv4" source address="192.168.1.10/32" port protocol="tcp" port="7071" accept' sudo firewall-cmd --reload
我们现在应该具有安全的Zimbra设置。