博客園首頁新隨筆聯(lián)系訂閱管理隨筆 - 58? 文章 - 440?評(píng)論 - 14
Centos6與Centos7防火墻設(shè)置與端口開放的方法
轉(zhuǎn)載
原文地址:http://blog.csdn.net/u011846257/article/details/54707864
Centos升級(jí)到7之后,內(nèi)置的防火墻已經(jīng)從iptables變成了firewalld。所以,端口的開啟還是要從兩種情況來說明的,即iptables和firewalld。更多關(guān)于CentOs防火墻的最新內(nèi)容,請(qǐng)參考Redhat官網(wǎng)。
一、iptables
1.打開/關(guān)閉/重啟防火墻
開啟防火墻(重啟后永久生效):chkconfig iptables on關(guān)閉防火墻(重啟后永久生效):chkconfig iptables off開啟防火墻(即時(shí)生效,重啟后失效):service iptables start關(guān)閉防火墻(即時(shí)生效,重啟后失效):service iptables stop重啟防火墻:service iptables restartd
開啟防火墻(重啟后永久生效):chkconfigiptables on
關(guān)閉防火墻(重啟后永久生效):chkconfigiptables off
開啟防火墻(即時(shí)生效,重啟后失效):serviceiptables start
關(guān)閉防火墻(即時(shí)生效,重啟后失效):serviceiptables stop
重啟防火墻:
service iptablesrestartd
2.查看打開的端口
/etc/init.d/iptables status
3.打開某個(gè)端口(以8080為例)
(1)開啟端口
=================================================
iptables -A INPUT -p tcp --dport? 8080? -j? ACCEPT
/sbin/iptables -I INPUT -p tcp --dport 8080 -j ACCEPT
================================================
(2)保存并重啟防火墻
/etc/rc.d/init.d/iptables save
/etc/init.d/iptables restart
4.打開49152~65534之間的端口
iptables -A INPUT -p tcp--dport 49152:65534 -j ACCEPT?
同樣,這里需要對(duì)設(shè)置進(jìn)行保存,并重啟防火墻。
5.其他打開方式
我們還可以通過修改/etc/sysconfig/iptables文件的方式開啟端口,如下
vi /etc/sysconfig/iptables
然后在文件中增加一行
iptables -t nat -A POSTROUTING-s 15.8.8.0/24 -o eth2 -j MASQUERADE
-A RH-Firewall-1-INPUT -m
state –state NEW -m tcp -p tcp –dport 8080 -j ACCEPT
參數(shù)說明:
–A 參數(shù)就看成是添加一條規(guī)則
–p 指定是什么協(xié)議,我們常用的tcp 協(xié)議,當(dāng)然也有udp,例如53端口的DNS
–dport 就是目標(biāo)端口,當(dāng)數(shù)據(jù)從外部進(jìn)入服務(wù)器為目標(biāo)端口
–sport 數(shù)據(jù)從服務(wù)器出去,則為數(shù)據(jù)源端口使用
–j 就是指定是 ACCEPT -接收 或者 DROP 不接收
二、firewalld
Centos7默認(rèn)安裝了firewalld,如果沒有安裝的話,可以使用yum install firewalld firewalld-config進(jìn)行安裝。
1.啟動(dòng)防火墻
systemctl start firewalld
2.禁用防火墻
systemctl stop firewalld
3.設(shè)置開機(jī)啟動(dòng)
systemctl enable firewalld
4.停止并禁用開機(jī)啟動(dòng)
sytemctl disable firewalld
5.重啟防火墻
firewall-cmd --reload
6.查看狀態(tài)
systemctl status firewalld或者firewall-cmd --state
7.查看版本
firewall-cmd --version
8.查看幫助
firewall-cmd --help
9.查看區(qū)域信息
firewall-cmd--get-active-zones
10.查看指定接口所屬區(qū)域信息
firewall-cmd--get-zone-of-interface=eth0
11.拒絕所有包
firewall-cmd --panic-on
12.取消拒絕狀態(tài)
firewall-cmd --panic-off
13.查看是否拒絕
firewall-cmd --query-panic
14.將接口添加到區(qū)域(默認(rèn)接口都在public)
firewall-cmd --zone=public--add-interface=eth0(永久生效再加上 --permanent 然后reload防火墻)
15.設(shè)置默認(rèn)接口區(qū)域
firewall-cmd--set-default-zone=public(立即生效,無需重啟)
16.更新防火墻規(guī)則
firewall-cmd --reload或firewall-cmd--complete-reload(兩者的區(qū)別就是第一個(gè)無需斷開連接,就是firewalld特性之一動(dòng)態(tài)
添加規(guī)則,第二個(gè)需要斷開連接,類似重啟服務(wù))
17.查看指定區(qū)域所有打開的端口
firewall-cmd --zone=public--list-ports
18.在指定區(qū)域打開端口(記得重啟防火墻)
firewall-cmd --zone=public--add-port=80/tcp(永久生效再加上 --permanent)
firewall-cmd --zone=public? --add-port=80/tcp? --permanent
說明:
–zone 作用域
–add-port=8080/tcp 添加端口,格式為:端口/通訊協(xié)議
–permanent
#永久生效,沒有此參數(shù)重啟后失效
1、firewalld的基本使用
啟動(dòng):systemctl start firewalld
查看狀態(tài):systemctl status firewalld
停止:systemctl disable firewalld
禁用:systemctl stop firewalld
2、配置firewalld-cmd
查看版本:firewall-cmd --version
查看幫助:firewall-cmd --help
顯示狀態(tài):firewall-cmd --state
查看所有打開的端口:firewall-cmd --zone=public?--list-all
更新防火墻規(guī)則:firewall-cmd --reload
查看區(qū)域信息: ?firewall-cmd --get-active-zones
查看指定接口所屬區(qū)域:firewall-cmd --get-zone-of-interface=eth0
拒絕所有包:firewall-cmd --panic-on
取消拒絕狀態(tài):firewall-cmd --panic-off
查看是否拒絕:firewall-cmd --query-panic
3、端口號(hào)
添加
firewall-cmd?--zone=public?--add-port=80/tcp?--permanent
??(--permanent永久生效,沒有此參數(shù)重啟后失效)
重新載入
firewall-cmd?--reload
查看
80/tcp
刪除
firewall-cmd?--zone=?public?--remove-port=80/tcp?--permanent