Centos升級到7以後,發現沒法使用iptables控制Linuxs的端口,google以後發現Centos 7使用firewalld代替了原來的iptables。下面記錄如何使用firewalld開放Linux端口:
開啓端口 html
firewall-cmd --zone=public --add-port=80/tcp --permanent
命令含義:
--zone #做用域
--add-port=80/tcp #添加端口,格式爲:端口/通信協議
--permanent #永久生效,沒有此參數重啓後失效
重啓防火牆 centos
firewall-cmd --reload
# 清空現有規則 iptables -F # 對於外網(WAN)到內網(LAN)的封包,至容許那些迴應包 iptables -A FORWARD -i eth0 -o eht1 -m state --state ESTABLISHED,RELATED -j ACCEPT # 對於全部內網(LAN)到外網(WAN)的封包都予以放行 iptables -A FORWARD -i eht0 -o eth1 -j ACCEPT #啓用轉發日誌 iptables -A FORWARD -j LOG # 啓用IP假裝,使得內網中全部轉發出去的封包都是Linux服務器一臺機子發出的 iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE # 啓用地址轉換(NAT)將內網的Web服務映射到外網的特定端口上 iptables -A PREROUTING -t nat -p tcp --dport 8080 -j DNAT --to-destination 192.168.0.2:8080
詳細信息能夠參考如下資料:
http://stackoverflow.com/questions/24729024/centos-7-open-firewall-port
https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/Security_Guide/sec-Using_Firewalls.html服務器