RHEL7/CENTOS7 新特性(服務控制和防火牆)

服務控制


1 簡介  RHEL7 監視和控制 systemd 的主要命令是 systemctl,該命令可以    用於查 看系統狀態和管理系統及服務。
         RHEL7 的服務 systemctl 腳本存放在: /usr/lib/systemd/,有系統 system)
          和用戶( user)之分,像需要開機不登陸就能運行的程序, 存在系統服務 裏,即:/usr/lib/systemd/system 目錄下。 每一個服務以.service 結尾 ,一般會分爲 3部分:[Unit]、[Service]和                  [Install]

1)[Unit]部分主要是對這個服務的說明

2)[Service]部分是服務的關鍵,是服務的一些具體運行參數的設置

3)[Install]部分是服務安裝的相關設置,可設置爲多用戶的


2定義   RHEL7 系統中 systemctl 是管制服務主要工具,它整合了 chkconfig   service 功能於一體。
          systemctl 命令的基本操作格式是:systemctl 動作服務名.service

1)分析系統狀態:
      ① systemctl systemctl list-units #輸出激活的單元

blob.png

      ②  systemctl list-units --type=service#列出 active 狀態的服務

blob.png

      ③   systemctl list-unit-files 列出所有已安裝服務

blob.png

    ④  systemctl --failed #顯示啓動失敗的服務

blob.png

    

2)使用 systemctl 控制單元

systemctl start <單元> #立即啓動單元
systemctl stop <單元> #立即停止單元
systemctl restart <單元> #重啓單元

    systemctl mask <單元> #禁用單元

blob.png

    systemctl unmask <單元> #解禁單元

blob.png

systemctl reload <單元> #重新讀取單元配置
        systemctl status <單元> #輸出單元運行狀態

blob.png

        systemctl is-enabled <單元> #檢查單元是否配置爲自動啓動

blob.png

        systemctl enable <單元> #開機自動啓動單元

blob.png

        systemctl disable <單元> #取消開機自動激活單元

blob.png

      systemctl is-active<單元> #查看單元是不是正在運行

blob.png

 

systemctl daemon-reload #重新載入 systemd,掃描新的或有變動的單元

 






防火牆


1 定義:   RHEL7 中有幾種防火牆共存: firewalld iptables ebtables 等,默認使用  現在都使用firewalld 作爲防火牆,管理工具是 :firewall-cmd

 

2 管理工具: 1)system-config-firewall 防火牆模型是靜態的,每次修改都要求防火牆完全重啓。

                (2) firewall-cmd 動態管理防火牆,不需要重啓整個防火牆便可更改。

3 others      1)區域  :網絡區域定義了網絡連接的可信等級,一張網卡同時只能綁定一個zone
    
           2)預定義的服務: 服務是端口和/或協議入口的組合。
     端口和協議: 定義了 tcp udp 端口,端口可以是一個端口或者端口範圍。

 

4 一般應用  
 1 獲取 firewalld 狀態

blob.png


2)在不改變狀態的條件下重新加載防火牆

blob.png

3)獲取支持的區域列表

blob.png

(4) 獲取所有支持的服務

blob.png

(5) 獲取所有支持的 ICMP 類型 : firewall-cmd --get-icmptypes

(6)  查詢當前防火牆策略 : firewall-cmd --list-all-zones

(7)  查看默認區域 : firewall-cmd --get-default-zone  [默認:public]

(8)  設置默認區域 : firewall-cmd --set-default-zone=區域名 [也可在/etc/firewalld/firewalld.conf中定  ]

(9)  獲取活動的區域 : firewall-cmd --get-active-zones

(10)  查看接口屬於區域 :firewall-cmd --get-zone-of-interface=[接口名]

(11) 將接口(網卡) 增加到區域 firewall-cmd [--zone=] --add-interface=接口名 [一個接口只能對應一個zone]

(12) 修改接口所屬區域 : firewall-cmd [--zone=] --change-interface=接口名 

(13) 從區域中刪除一個接口: firewall-cmd [--zone=] --remove-interface=接口名 

(14) 查詢區域中是否包含某接口:firewall-cmd [--zone=] --query-interface=接口名 

(15) 列舉區域中啓用的服務:firewall-cmd [ --zone= ] --list-services 

(16) 啓用應急模式:firewall-cmd --panic-on

(17) 禁用應急模式:firewall-cmd --panic-off 


 5   處理運行時區域


(1)給某個區域開啓某個服務
firewall-cmd [--zone=區域] --add-service=服務 [--timeout=秒數] 

(2)禁用區域中的某種服務即關閉某個服務
firewall-cmd [--zone=區域] --remove-service=服務 

(3)查詢區域中是否啓用了特定服務
firewall-cmd [--zone=區域] --query-service=服務 

(4)啓用區域端口和協議組合
firewall-cmd [--zone=區域] --add-port=portid/protocol [--timeout=seconds] 

(5)禁用端口和協議組合
firewall-cmd [--zone=區域] --remove-port=portid]/protocol 

(6)查詢區域中是否啓用了端口和協議組合
firewall-cmd [--zone=區域] --query-port=portid/protocol 

(7)啓用區域中的 IP 僞裝功能
firewall-cmd [--zone=區域] --add-masquerade [禁用:remove 查詢:query]

(8)啓用區域的 ICMP 阻塞功能
firewall-cmd [--zone=區域]  --add-icmp-block=[ icmp 類型 ] [禁用:remove 查 :query]

(9)  在區域中啓用端口轉發或映射 
firewall-cmd  [--zone=區域]  --add-forward-port=port=[ portid]:proto=[protocol]:toport=[portid] :toaddress=[address /mask] 禁用:remove 查詢:query



6  處理永久區域: reload



1)獲取永久選項所支持的服務
 firewall-cmd --permanent --get-services 

2獲取永久選項所支持的 ICMP 類型列表
 firewall-cmd --permanent --get-icmptypes 

3獲取支持的永久區域
 firewall-cmd --permanent --get-zones 

4配置防火牆在public區域永久開啓服務

http firewall-cmd --permanent --zone=public --add-service=http 

5防火牆開放 8080 端口 public 區域
 firewall-cmd --permanent --zone=public --add-port=8080/tcp 


7 命令行配置富規則


(1)查看富規則: firewall-cmd --list-rich-rules 

(2)允許部分 IP 訪問本機服務配置
 firewall-cmd  --permanent  --zone=public  --add-rich-rule="rule family="ipv4" source address="192.168.0.0/24" service name="http" accept" 

(3)允許部分 IP 訪問本機端口配置
 firewall-cmd  --permanent  --zone=public  --add-rich-rule="rule family="ipv4" source address="192.168.0.0/24"port protocol="tcp" port="8080" accept" 

(4)禁止遠程 IP 訪問 ssh
 firewall-cmd  --permanent  --zone=public  --add-rich-rule=’rule family=ipv4 source address=192.168.0.0/24 service name=ssh reject 

5)【禁用:remove 查詢:query

8  圖形化配置工具 firewall-config











    


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章