您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關如何使用CentOS7防火墻及開放端口的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
概述(官方有更為詳細的說明哦)
Firewalld提供動態管理的防火墻,支持網絡/防火墻區域,用于定義網絡連接或接口的信任級別。它支持IPv4,IPv6防火墻設置,以太網橋和IP集。運行時和永久配置選項分開。它還為服務或應用程序提供了直接添加防火墻規則的接口。
既然是簡單使用, 那必須教會你怎么查看防火墻狀態, 以及防火墻的關閉和開啟之類的, 我們都知道那既然防火墻都開啟了, 那么它必定是有一些端口的限制, 不能說你想通過哪些端口就通過哪些端口, 就能訪問到我們的主機(也就是服務器了), 換句說話, 我開放了哪些端口, 你才可以通過我開放的這些端口對我的主機進行訪問, 要不然我們還要防火墻干嘛, 誰想進來就進來(還是通過任意端口), 防火墻不就成了擺設不成, 說到防火墻要還要多說一句, 防火墻有軟件層面的和物理設置層面的(網絡內的一臺專業物理設備), 那我們這里是所說的是軟件層面的防火墻也就是Firewalld, CentOS7以下版本普遍使用的軟件防火墻是Firewalld, 為什么說是CentOS7以下版本普遍使用的呢? 這是因為之前的CentOS版本都是使用的iptables防火墻, 那要往深處說, 這就要追溯到CentOS7的發展歷程及RedHad之間的關系啦, 扯遠了哈, 我們使用防火墻的主要目的是對我們的主機進行安全管理, 其中主要的一部分就是端口管理了!
查詢防火墻狀態
shell
# systemctl status firewalld
execute
[warnerwu@localhost ~]$ systemctl status firewalld ● firewalld.service - firewalld - dynamic firewall daemon Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled) Active: inactive (dead) Docs: man:firewalld(1)
啟動防火墻
注意:防火墻只有管理員或管理員用戶組有權限進行管理操作, 普通用戶則不可以
shell
# systemctl start firewalld
execute
[root@localhost~]# systemctl start firewalld [root@localhost~]#
你會發現什么也沒有, 玩 linux 或 osx 系統的小伙伴都知道, 沒有提示那就是最好的提示, 說明已經成功啦, 有提示時則一會有問題哦
再次查看防火墻狀態
shell
# systemctl status firewalld
execute
[root@localhost ~]# sudo systemctl status firewalld ● firewalld.service - firewalld - dynamic firewall daemon Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled) Active: active (running) since 五 2018-09-07 00:04:55 CST; 5min ago Docs: man:firewalld(1) Main PID: 11339 (firewalld) CGroup: /system.slice/firewalld.service └─11339 /usr/bin/python -Es /usr/sbin/firewalld --nofork --nopid 9月 07 00:04:55 izj6c3bcx7adgva5dda2e0z systemd[1]: Starting firewalld - dynamic firewall daemon... 9月 07 00:04:55 izj6c3bcx7adgva5dda2e0z systemd[1]: Started firewalld - dynamic firewall daemon. 9月 07 00:04:55 izj6c3bcx7adgva5dda2e0z firewalld[11339]: WARNING: ICMP type 'beyond-scope' is not supported by the kernel for ipv6. 9月 07 00:04:55 izj6c3bcx7adgva5dda2e0z firewalld[11339]: WARNING: beyond-scope: INVALID_ICMPTYPE: No supported ICMP type., ignorin...-time. 9月 07 00:04:55 izj6c3bcx7adgva5dda2e0z firewalld[11339]: WARNING: ICMP type 'failed-policy' is not supported by the kernel for ipv6. 9月 07 00:04:55 izj6c3bcx7adgva5dda2e0z firewalld[11339]: WARNING: failed-policy: INVALID_ICMPTYPE: No supported ICMP type., ignori...-time. 9月 07 00:04:55 izj6c3bcx7adgva5dda2e0z firewalld[11339]: WARNING: ICMP type 'reject-route' is not supported by the kernel for ipv6. 9月 07 00:04:55 izj6c3bcx7adgva5dda2e0z firewalld[11339]: WARNING: reject-route: INVALID_ICMPTYPE: No supported ICMP type., ignorin...-time. Hint: Some lines were ellipsized, use -l to show in full.
嗯嗯, 你會發現在已經在運行啦, 就是這樣子哦, 還要多說一句, 那如果你對 CentOS7 或 RedHat7 足夠了解的話, 你會很熟悉 systemctl是個什么東東, 她呀, 就是系統服務管理工具, 是系統工具, 用來管理系統服務的, 就這么理解就可以不會錯的! 之前的CentOS版本都是使用的 service 進行系統服務管理的哦, 關于更多 systemctl 或 service 的信息請動手 百度 或 Google, 我們簡單的說完了, 查看防火墻狀態以及怎么啟動防火墻, 那我們的就來說說怎么來開放端口!
查看防火墻開放端口列表
防火墻的端口管理是通過 firewall-cmd 命令來進行管理的哦, 這一點必須要明確, 也是你管理系統端口的關鍵所在, 嗯嗯, 是她, 是她, 就是她, 她就是這么的如此風騷, 哈哈, 你拿她一點辦法都沒有, 不你可以把她玩的服服貼貼的, 什么呀!你想多了, 我什么也沒有說哦, 是你自己這樣想的~
shell
# firewall-cmd --list-all
execute
[root@localhost ~]# firewall-cmd --list-all public target: default icmp-block-inversion: no interfaces: sources: services: ssh dhcpv6-client ports: protocols: masquerade: no forward-ports: source-ports: icmp-blocks: rich rules:
你會發現它如此空曠, 沒有任何開放端口, 嗯, 這是一臺新裝linux系統, 你的也許會跟我這個一樣, 也許會不一樣, 這個要注意一下
添加開放端口到防火墻
比如我們讓80端口開放, 其它用戶可以訪問我的站點
shell
// Step1: 加入開放端口到配置文件 # firewall-cmd --zone=public --add-port=80/tcp --permanent --zone=public 添加時區 --add-port=80/tcp 添加端口 --permanent 永久生效 // 加載防火墻新配置文件( 以 root 身份輸入以下命令,重新加載防火墻,并不中斷用戶連接,即不丟失狀態信息. ) firewall-cmd --reload
再次查看防火墻開放端口列表
shell
# firewall-cmd --list-all
execute
[root@localhost ~]# firewall-cmd --list-all public target: default icmp-block-inversion: no interfaces: sources: services: ssh dhcpv6-client ports: 80/tcp protocols: masquerade: no forward-ports: source-ports: icmp-blocks: rich rules:
這次你會發現 ports 對應的多了一個 80/tcp, 那說明就已經添加到了防火墻開放列表中了
1、firewalld的基本使用
啟動: systemctl start firewalld
關閉: systemctl stop firewalld
查看狀態: systemctl status firewalld
開機禁用 : systemctl disable firewalld
開機啟用 : systemctl enable firewalld
2.systemctl是CentOS7的服務管理工具中主要的工具,它融合之前service和chkconfig的功能于一體。
啟動一個服務:systemctl start firewalld.service
關閉一個服務:systemctl stop firewalld.service
重啟一個服務:systemctl restart firewalld.service
顯示一個服務的狀態:systemctl status firewalld.service
在開機時啟用一個服務:systemctl enable firewalld.service
在開機時禁用一個服務:systemctl disable firewalld.service
查看服務是否開機啟動:systemctl is-enabled firewalld.service
查看已啟動的服務列表:systemctl list-unit-files|grep enabled
查看啟動失敗的服務列表:systemctl --failed
3.配置firewalld-cmd
查看版本: firewall-cmd --version
查看幫助: firewall-cmd --help
顯示狀態: firewall-cmd --state
查看所有打開的端口: firewall-cmd --zone=public --list-ports
更新防火墻規則: firewall-cmd --reload
查看區域信息: firewall-cmd --get-active-zones
查看指定接口所屬區域: firewall-cmd --get-zone-of-interface=eth0
拒絕所有包:firewall-cmd --panic-on
取消拒絕狀態: firewall-cmd --panic-off
查看是否拒絕: firewall-cmd --query-panic
感謝各位的閱讀!關于“如何使用CentOS7防火墻及開放端口”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。