使用安全增強型 Linux (SELinux) 設定 CloudWatch 代理程式 - Amazon CloudWatch

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用安全增強型 Linux (SELinux) 設定 CloudWatch 代理程式

如果您的系統已啟用安全增強型 Linux (SELinux),您必須套用適當的安全政策,以確保 CloudWatch 代理程式在受限網域中執行。

先決條件

在您可以為代理程式設定 SELinux 之前,請檢查下列先決條件

完成將 CloudWatch 代理程式與 SELinux 搭配使用的先決條件
  1. 如果您尚未這麼做,請安裝下列 SELinux 政策開發套件:

    sudo yum update sudo yum install -y selinux-policy-devel policycoreutils-devel rpm-build git
  2. 執行下列命令來檢查系統的 SELinux 狀態:

    sestatus

    輸出範例:

    SELinux status: enabled SELinuxfs mount: /sys/fs/selinux SELinux root directory: /etc/selinux Loaded policy name: targeted Current mode: permissive Mode from config file: permissive Policy MLS status: enabled Policy deny_unknown status: allowed Memory protection checking: actual (secure) Max kernel policy version: 33

    如果您發現 SELinux 目前已停用,請執行下列動作:

    1. 輸入下列命令以開啟 SELinux 檔案:

      sudo vi /etc/selinux/config
    2. SELINUX 參數設定為 permissiveenforcing。例如:

      SELINUX=enforcing
    3. 儲存檔案並重新啟動系統以套用變更。

      sudo reboot
  3. 確保 CloudWatch 代理程式以systemd服務身分執行。這是在受限的 SELinux 網域內使用的必要條件。

    sudo systemctl status amazon-cloudwatch-agent

    如果代理程式已正確設定,輸出應該會指出它在啟動enabled時為 active (running)和 。

為代理程式設定 SELinux

完成先決條件後,您可以設定 SELinux。

為 CloudWatch 代理程式設定 SELinux
  1. 輸入下列命令,複製 CloudWatch 代理程式的 SELinux 政策:

    git clone https://github.com/aws/amazon-cloudwatch-agent-selinux.git
  2. 導覽至複製的儲存庫,然後輸入下列命令來更新指令碼許可:

    cd amazon-cloudwatch-agent-selinux chmod +x amazon_cloudwatch_agent.sh
  3. 輸入下列命令sudo,使用 執行 SELinux 政策安裝指令碼。在執行期間,指令碼會提示您輸入 yn以允許自動重新啟動。此重新啟動可確保代理程式轉換至正確的 SELinux 網域。

    sudo ./amazon_cloudwatch_agent.sh
  4. 如果 CloudWatch 代理程式尚未重新啟動,請重新啟動它,以確保它轉換到正確的 SELinux 網域:

    sudo systemctl restart amazon-cloudwatch-agent
  5. 輸入下列命令,確認 CloudWatch Agent 在受限網域中執行:

    ps -efZ | grep amazon-cloudwatch-agent

    如果代理程式已正確限制,輸出應指出 SELinux 受限的網域,而不是 unconfined_service_t

    以下是代理程式正確受限時的輸出範例。

    system_u:system_r:confined_t:s0 root 1234 1 0 12:00 ? 00:00:10 /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent

設定 SELinux 之後,您可以繼續設定代理程式以收集指標、日誌和追蹤。如需詳細資訊,請參閱手動建立或編輯 CloudWatch 代理程式組態檔案