考慮到《可能是目前最詳細簡明的CentOS7安裝與管理教程》一文太長,以及簡書目前不支持導航目錄,閱讀起來過于不便,故對其分解成《CentOS7最小化安裝后要做的事》系列,方便以后有針對性的豐富內容。
firewalld
在centos7時代防火墻已由iptable轉向firewalld,既然本文講的是centos7,那么我們就直接接受并適應它。??
在此之前,要提一提systemctl
:
systemd 是一個 Linux 系統基礎組件的集合,提供了一個系統和服務管理器,運行為 PID 1 并負責啟動其它程序。功能包括:支持并行化任務;同時采用 socket 式與 D-Bus 總線式激活服務;按需啟動守護進程(daemon);利用 Linux 的 cgroups 監視進程;支持快照和系統恢復;維護掛載點和自動掛載點;各服務間基于依賴關系進行精密控制。systemd 支持 SysV 和 LSB 初始腳本,可以替代 sysvinit。除此之外,功能還包括日志進程、控制基礎系統配置,維護登陸用戶列表以及系統賬戶、運行時目錄和設置,可以運行容器和虛擬機,可以簡單的管理網絡配置、網絡時間同步、日志轉發和名稱解析等。
簡單說就是:systemctl是CentOS7的服務管理工具中主要的工具,它融合之前service和chkconfig的功能于一體。在系統服務管理中推薦使用systemctl來管理。
下面以firewalld服務為例:
- firewalld服務啟用/停用
啟動一個服務: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
2.配置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
3.端口管理:
添加: firewall-cmd --zone=public --add-port=80/tcp --permanent (--permanent 永久生效,沒有此參數重啟后失效)
重新載入:firewall-cmd --reload
查看:firewall-cmd --zone= public --query-port=80/tcp
刪除:firewall-cmd --zone= public --remove-port=80/tcp --permanent
正式環境下,看需要選擇是否使用防火墻,這里為了方便后續配置,就先將其關閉:
關閉防火墻 systemctl stop firewalld
禁止開機自啟systemctl disable firewalld
查看防火墻狀態systemctl status firewalld