Red Hat Training

A Red Hat training course is available for Red Hat Satellite

使用者指南

Red Hat Network 衛星伺服器 5.5

使用和管理 Red Hat Network Satellite

版 2

Red Hat Engineering Content Services

摘要

本書涵蓋了 Red Hat Network Satellite 上的使用和操作指南。欲取得更多資訊,請參閱《Red Hat Network Satellite 入門指南》。

序言

Red Hat Network(RHN)為 Red Hat 系統和網路提供了系統層級的支援與管理。它整合了用於最佳化 Red Hat 系統可靠性、安全性,以及效能的所需工具、服務,與資訊軟體庫。若要使用 RHN,系統管理員必須向 RHN 註冊他們的客戶端系統軟體,和硬體設定檔(亦稱為系統設定檔,System Profiles)。當客戶端系統請求套件更新時,只有適用於客戶端的套件會回傳。
RHN 衛星伺服器允許組織在無須提供公共網際網路存取權限給其伺服器,或其它客戶端系統的情況下,有效利用 Red Hat Network。系統設定檔會被本機存放於客戶端的衛星伺服器上。RHN 衛星伺服器網站會經由一個本機網站伺服器提供,並且僅能讓可連至衛星伺服器的系統存取。所有套件管理工作(包括勘誤更新)皆會透過衛星伺服器進行。
RHN 衛星伺服器為需要擁有伺服器的絕對控制權,以及需要維護和套件建置上的隱私的組織,提供了解決方案。它提供 RHN 使用者最佳的靈活性與能力,以確保系統安全性並維持更新狀態。您可附加模組至衛星伺服器,以增加額外的功能。本文件提供了執行衛星伺服器時,必要作業上的相關指南。

章 1. 使用者管理

1.1. 新增、停用,和刪除使用者帳號

使用者可透過 RHN 衛星伺服器導覽列上方的「使用者」分頁來進行管理。您可透過此分頁來授予以及編輯使用者的權限。

過程 1.1. 新增使用者

若要新增使用者至組織:
  1. 請在「使用者」分頁中,點選「新建使用者」,以開啟「建立使用者」網頁。
    「建立使用者」網頁

    圖形 1.1. 「建立使用者」網頁

  2. 請在「登錄名稱」欄位中,輸入使用者的名稱。名稱長度應至少 5 個字元。
  3. 請在「密碼」欄位中,輸入使用者的密碼。請重新輸入相同密碼以進行確認。
  4. 請在「姓名」欄位中,輸入使用者的姓名。請由下拉式選單中選擇適當的稱謂(例如:Mr、Miss、Mrs)。
  5. 請在「電子郵件」欄位中,輸入使用者的電子郵件位址。
  6. 在「時區」部份中,選擇適當的時區。
  7. 在「介面語言」部份中,選擇 RHN 衛星伺服器介面中欲使用的適當語言。
  8. 請點選「建立帳號」以建立新的使用者。使用者將會收到一封電子郵件(建立帳號時所輸入的電子郵件),以通知他們新帳號的詳細資料。
  9. 當帳號成功建立之後,您將會被帶到「使用者清單」網頁。若要更改新使用者的權限並設置其選項,請由清單中選擇該使用者的名稱,以顯示「使用者詳細資料」網頁,並瀏覽至適當的分頁,以進行您的變更。

過程 1.2. 停用使用者

使用者帳號可透過管理員停用,或是使用者亦可停用自己的帳號。已停用的使用者帳號無法再登入 RHN 衛星伺服器介面中,或排程動作。任何在帳號停用前所排程的動作,皆會保留在動作佇列中,直到完成。已停用的使用者帳號可透過管理員重新啟用。
管理員帳號只可在 administrator 角色由該帳號移除後,才可停用。
若要停用一組使用者帳號:
  1. 由「使用者」分頁中的清單,選擇使用者的名稱,以顯示「使用者詳細資料」網頁。
  2. 請查看使用者是否為衛星伺服器管理員。
    若使用者為衛星伺服器管理員,請反選該角色旁的核取方塊,並點選「送出」。
    若使用者非衛星伺服器管理員,請至下一步。
  3. 點選「停用使用者
    停用使用者

    圖形 1.2. 停用使用者

    當再次點選時,您將會被要求確認這項動作。請檢查詳細資料,然後再次按下「停用使用者」,以進行確認。
  4. 當帳號成功停用後,使用者的名稱將不會再出現在「啟用中的使用者」清單中。請點選「使用者清單」選單的「已停用」連結,以檢視已停用的使用者帳號。
  5. 若要重新啟用使用者帳號,請檢視「已停用」清單,選取欲重新啟用之使用者帳號旁的核取方塊,並按下「重新啟用」。

過程 1.3. 刪除使用者

使用者帳號可透過管理員刪除。已刪除的帳號無法被使用來登入 RHN 衛星伺服器介面中,或排程動作。已刪除的帳號無法重新啟用。
管理員帳號只可在該帳號的 administrator 角色移除後,才可刪除。

警告

刪除帳號的動作是無法復原的,請小心執行這項動作。請在刪除使用者帳號前,考慮先將該帳號停用,以分析這項刪除動作對於 RHN 衛星伺服器架構所會帶來的影響。
若要刪除使用者帳號:
  1. 由「使用者」分頁中的清單,選擇使用者的名稱,以顯示「使用者詳細資料」網頁。
  2. 請查看使用者是否為衛星伺服器管理員。
    若使用者為衛星伺服器管理員,請反選該角色旁的核取方塊,並點選「送出」。
    若使用者非衛星伺服器管理員,請至下一步。
  3. 點選「刪除使用者」。
    刪除使用者

    圖形 1.3. 刪除使用者

    當再次點選時,您將會被要求確認這項動作。請檢查詳細資料,然後再次按下「停用使用者」,以進行確認。
  4. 當帳號成功刪除後,使用者的名稱將不會再出現在「啟用中的使用者」清單中。此步驟是無法復原的。

1.2. 使用者管理

使用者帳號可透過 RHN 衛星伺服器導覽列上方的「使用者」分頁來進行管理。若要更改使用者的權限並設置其選項,請由清單中選擇該使用者的名稱,以顯示「使用者詳細資料」網頁,並瀏覽至適當的分頁,以進行您的變更。您可藉由進行變更,並點選「送出」來修改帳號詳細資料。

使用者角色

使用者角色可用來代表使用者帳號的責任。各個使用者角色皆擁有不同層級的責任與存取權限。
若要為使用者指定新的角色,請在「使用者詳細資料」網頁上選擇適當的核取方塊。您可藉由進行變更並點選「送出」,來修改角色。
可選擇的使用者角色有
RHN Satellite Administrator(RHN 衛星伺服器管理員)」
衛星伺服器管理員角色的工作包含了建立組織、管理訂閱,以及配置全域的 RHN 衛星伺服器設定。
此角色不可在「使用者詳細資料」網頁中指定。已擁有 RHN 衛星伺服器管理員角色的使用者可藉由管理使用者,來將該角色指定給另一位使用者。
Organization Administrator(組織管理員)」
執行其組織中的管理動作,例如使用者、系統,以及頻道上的管理動作。組織管理員會自動地被授予其它角色的管理權限(以灰階的核取方塊顯示)。
Activation Key Administrator(啟動金鑰管理員)」
執行啟動金鑰功能,例如建立、修改和刪除帳號中的金鑰。
Channel Administrator(頻道管理員)」
提供軟體頻道和組織中相關的完整存取權限。可執行像是使頻道可全域訂閱、建立新頻道,和管理頻道中套件的工作。
Configuration Administrator(配置管理員)」
擁有配置頻道和組織相關的完整存取權限。可執行組織中的頻道和管理配置工作。
Monitoring Administrator(監控管理員)」
可執行偵測的排程,並監督其它監控設備。只有啟用了監控的 RHN 衛星伺服器可擁有此角色。
System Group Administrator(系統群組管理員)」
此角色擁有系統和系統群組的完整權限。可執行例如建立新系統群組、刪除已分配的系統群組、新增系統至群組,以及管理使用者之群組存取權限的管理動作。
衛星伺服器管理員可移除另一使用者帳號的衛星伺服器管理員權限,不過無法移除唯一剩下的衛星伺服器管理員的衛星伺服器管理員權限。任何時候皆需要有至少一位衛星伺服器管理員存在。衛星伺服器管理員可移除自己的衛星伺服器管理員權限,只要他們不是唯一剩下的衛星伺服器管理員。

章 2. 自動化同步

透過 Red Hat Network 手動式同步 RHN 衛星伺服器的伺服器軟體庫,可能會是項艱鉅的工作。您可自動化同步程序,如此一來它便可在非巔峰的時間進行,例如半夜或凌晨,以較佳地平衡負載,並確保較快速的同步。同步化程序應隨機進行,以確保最佳的效能。最有效率的自動化同步方式,即為透過使用 cron 進行。

過程 2.1. 自動化同步

  1. 請切換為 root 使用者,並在文字編輯器中開啟 crontab
    crontab -e
    

    注意

    crontab 就預設值會開啟於 vi 中。若要更改此特性,請將 EDITOR 變數更改為您偏好的文字編輯器名稱。
  2. 請在 crontab 中,使用前五個欄位(分鐘、小時、日、月,以及星期)來排程同步化。若要建立隨機的同步化時間,請使用下列項目:
    0 1 * * * perl -le 'sleep rand 9000' && satellite-sync --email >/dev/null 2>1
    
    crontab 項目將會於 01:00 至 03:30 之間,進行隨機的同步工作。它將會由 cron丟棄 stdoutstderr,以避免重複來自於 satellite-sync 的訊息。您可視需求加入其它選項。
  3. 若要儲存 crontab,只要由文字編輯器中退出即可。新的 cron 規則將會即刻生效。

章 3. 備份和復原

此章節概述了各種備份、驗證和復原衛星伺服器的方式。
您應每晚或每個禮拜進行備份程序,這取決於儲存的資料數量,以及當系統停機時,您所可能會失去的資料數量。
當要進行 RHN 衛星伺服器的資料庫備份時,建議您在排程的維護停機時進行,因為在進行備份時,所有服務將會無法透過網站或客戶端連線使用。

3.1. 備份

過程 3.1. 備份嵌入的資料庫

  1. 透過 stop 指令來停用 RHN 衛星伺服器:
    rhn-satellite stop
    
  2. 切換為 Oracle 使用者,並透過使用 db-control 工具程式來建立備份:
    su - oracle
    db-control backup [directory]
    
    directory 取代為您希望儲存您資料庫備份的絕對路徑。這項程序將會花上數分鐘。
  3. 切換回 root 使用者,並啟動衛星伺服器:
    exit
    rhn-satellite start
    
  4. 切換為 Oracle 使用者,並使用 db-controlexamine 選項來檢查備份時間戳,並判斷是否有任何遺失的檔案:
    su - oracle
    db-control examine [directory]
    
    您亦可使用 db-controlverify 選項來進行一項詳細的檢視,這包含檢查備份中各個檔案的 md5sum。
    db-control verify [directory]
    
    若驗證成功的話,directory 的內容便可安全地被使用來復原資料庫。

注意

外部資料庫的使用者應定期執行備份。請詢問您的外部資料庫管理員,以取得更多有關於受支援之備份程序上的相關資訊。

備份系統檔案

除了資料庫之外,您也應備份數個系統檔案和目錄。應備份的檔案和目錄為:
  • /etc/sysconfig/rhn/
  • /etc/rhn/
  • /etc/sudoers
  • /etc/tnsnames.ora
  • /var/www/html/pub/
  • /var/satellite/redhat/[0-9]*/(此乃所有自訂 RPM 的位置)
  • /root/.gnupg/
  • /root/ssl-build/
  • /etc/dhcpd.conf
  • /etc/httpd/
  • /tftpboot/
  • /var/lib/cobbler/
  • /var/lib/nocpulse/
  • /var/lib/rhn/kickstarts/
  • /var/www/cobbler/
若可以的話,請將 /var/satellite/ 也備份。此乃 Red Hat RPM 軟體庫的副本,並能在失效復原時,省去大量的資料下載。它可透過 satellite-sync 工具重新產生。若您正在使用一部離線的衛星伺服器,您必須備份 /var/satellite/,才能由失效狀態復原。
只備份以上列出的檔案和目錄,將需要重新安裝 RHN Satellite Server ISO RPM,並重新註冊衛星伺服器,以從失效情況下復原。此外,Red Hat 套件將需要透過使用 satellite-sync 工具重新同步,並且需要安裝 /root/ssl-build/rhn-org-httpd-ssl-key-pair-MACHINE_NAME-VER-REL.noarch.rpm 套件。另外,您亦可重新安裝 RHN 衛星伺服器,而不重新註冊它。這可透過取消或跳過 Red Hat Network 註冊,以及 SSL 憑證產生部份來達成。
最完整的備份方式就是備份整部機器。此方式可省去下載和重新安裝的時間,不過亦需要耗費額外的儲存空間和進行備份的時間。

3.2. 由備份復原

Red Hat Network 資料庫控制可用來從備份復原嵌入的資料庫。

過程 3.2. 由備份復原嵌入的資料庫

  1. 透過 stop 指令來停用 RHN 衛星伺服器:
    rhn-satellite stop
    
  2. 切換為 Oracle 使用者,並透過 db-control 工具程式來復原備份:
    su - oracle
    db-control restore [directory]
    
    請將 directory 取代為包含備份的位置的絕對路徑。這項程序將會在復原資料庫之前,驗證備份的內容。這項程序將會花上幾分鐘。
  3. 切換回 root 使用者,並啟動衛星伺服器:
    exit
    rhn-satellite start
    
  4. 無論您是要備份外部或嵌入的資料庫,當衛星伺服器由備份復原時,您應執行下列指令,以在下次 rhn-search 服務啟用時,排程搜尋索引的重新建立:
    /etc/init.d/rhn-search cleanindex
    

3.3. 自動備份

備份工作可自動化,如此一來它們便可在非巔峰的時間進行,例如半夜或凌晨。這亦可確保它們能時常進行,而不會被遺忘。最有效率的自動化備份方式,就是透過 cron

過程 3.3. 自動化備份

請建立一個名為 backup-db.sh 的新檔案,並包含下列 script。此 script 將會停用衛星伺服器,執行一項資料庫備份,並重新啟動衛星伺服器。
#!/bin/bash
{
/usr/sbin/rhn-satellite stop
su - oracle -c'
d=db-backup-$(date "+%F");
mkdir -p /tmp/$d;
db-control backup /tmp/$d
';
/usr/sbin/rhn-satellite start
} &> /dev/null
  1. 請建立一個名為 move-files.sh 的新檔案,並包含下列 script。此 script 將會使用 rsync 來將備份檔案移至一個目錄中,以進行儲存:
    #!/bin/bash
    rsync -avz /tmp/db-backup-$(date "+%F") [destination] &> /dev/null
    
    請將 [destination] 替換為備份目錄的路徑。
    此外,下列 script 使用了 scp 來達到相同的目的:
    #!/bin/bash
    scp -r /tmp/db-backup-$(date "+%F") [destination] &> /dev/null
    
  2. 切換為 root 使用者,並在文字編輯器中開啟 crontab
    crontab -e
    

    注意

    crontab 就預設值會在 vi 中開啟。若要更改此特性,請將 EDITOR 變數更改為您希望使用的文字編輯器名稱。
  3. 請使用 crontab 中的前五個欄位(分、時、日、月,與星期)來排程備份 script 以執行:
    0 3 * * * backup-db.sh
    0 6 * * * move-files.sh
    
    crontab 項目將會於 03:00 執行備份,並在 06:00 傳輸備份檔案。其它選項亦可視需求加入。您亦可包含一份清除 script,以移除較舊的備份目錄,並避免備份儲存空間滿出。
  4. 若要儲存 crontab,只要退出文字編輯器即可。新的 cron 規則將會即刻生效。

章 4. 複製機器

spacewalk-clone-by-date 這項指令能讓 RHN 衛星伺服器使用者根據 Red Hat Enterprise Linux(RHEL)系統所能開始使用勘誤的日期,建立自訂的 RHEL 頻道副本。

4.1. 功能

spacewalk-clone-by-date 所包含的功能如下:
  • 將頻道的狀態複製為特定日期時的狀態
  • 透過 script 和範本檔案自動化複製程序
  • 由頻道移除或阻擋套件
  • 移除父與子頻道中的套件相依性
  • 篩選而針對於勘誤進行動作,並忽略其它項目?比方說,僅針對於安全性勘誤進行動作,並忽略錯誤修正與功能更新。

注意

spacewalk-clone-by-date 指令須以 root 使用者 執行,並且 username 必須是組織管理員(Organizational Administrator)或是頻道管理員(Channel Administrator)。

4.2. 指令列選項

表格 4.1. 可用的指令列選項

選項 定義
-h, --help 顯示說明檔案。
-c CONFIG, --config=CONFIG 允許使用者提供指定了所有選項的配置檔案。任何可在指令列上執行的選項,皆可指定於此配置檔案中。此配置檔案能讓使用者為其希望複製的頻道設定複雜的頻道清單,並將確切的指令儲存稍後使用。
-u USERNAME, --username=USERNAME 指定欲使用來登入衛星伺服器的使用者名稱。
-p PASSWORD, --password=PASSWORD 為使用者名稱指定密碼
-s SERVER, --server=SERVER 用於 api 連線的伺服器 URL。預設值為 https://localhost/rpc/api
-l CHANNELS, --channels=CHANNELS 指定欲複製哪些頻道。原始複製配對中必須指定頻道標籤。當指定複製配對時,請記得以空格來將它們區隔開來。額外頻道可透過使用 --channels 數次來指定。
-b BLACKLIST, --blacklist=BLACKLIST 欲從複製的勘誤中排除、以逗號區隔開的套件名稱(或正規表示式),僅適用於新增的套件。
-r REMOVELIST, --removelist=REMOVELIST 欲從目標頻道中排除、以逗號區隔開的套件名稱(或正規表示式),所有套件均可移除。
-d TO_DATE, --to_date=TO_DATE 將勘誤複製為指定日期的狀態(YYYY-MM-DD)。能讓使用者複製原始套件以及任何特定勘誤(發佈於原始頻道建立時,直到指定的 TO_DATE 參數之間)。您可取得頻道在指定的 TO_DATE 時,基於時間的 snapshot。
-y, --assumeyes 假設所有出現的提示的回應皆為「是」。此乃用於自動化複製程序。
-m, --sample-config 印出完整的配置檔案範本並退出。
-k, --skip_depsolve 跳過所有相依性解析程序(不建議)。
-v, --validate 在指定的軟體庫上執行 repoclosure。
-g, --background 在背景中複製勘誤。在複製完成之前,提示會回傳較快。
-o, --security_only 只複製安全性勘誤(以及其相依項目)。這項指令可與 --to_date 指令結合使用,以便只複製指定日期之前所發佈的安全性勘誤。

4.3. 使用範例

以下範例將以 rhel-i386-server-5 頻道在 2012 年 1 月 1 日時的狀態複製入名為 my-clone-RHEL-5 的頻道中。
# spacewalk-clone-by-date --username=your_username --password=your_password --server=satellite_server_url --channels=rhel-i386-server-5 my-clone-RHEL-5 --to_date=2012-01-01
以下範例僅會複製 2012 年 1 月 1 日前所發佈的安全性勘誤,並忽略所有 kernel 更新或是 vim-extended 的套件。這項指令同時也會在衛星伺服器上,在背景中執行複製程序。
# spacewalk-clone-by-date --username=your_username --password=your_password --server=satellite_server_url --channels=rhel-i386-server-5 my-clone-RHEL-5 --to_date=2012-01-01 --security_only --background --blacklist=kernel,vim-extended --assumeyes

章 5. 監控

RHN 衛星伺服器包含了許多不同元件,許多元件皆可被監控。本章詳述了為系統不同部份進行監控的各種方式。

過程 5.1. 監控表格空間

  1. 在 Oracle 資料庫中,時常檢查表格空間是否有足夠空間是非常重要的。請切換使用者為 Oracle 使用者,並發出 db-control report 指令:
    su - oracle
    db-control report
    Tablespace    Size  Used Avail  Use%
    DATA_TBS      4.8G 3.9G  996M   80%
    SYSTEM        250M 116M  133M   46%
    TOOLS         128M 3M    124M   2%
    UNDO_TBS      1000M 61M  938M   6%
    USERS         128M 64K   127M   0%
    
  2. 若表格空間滿出,您可透過 db-control extend 指令,以及欲擴展的表格空間之名稱來擴展它:
    db-control extend tablespace

過程 5.2. 監控 RHN 衛星伺服器的程序

  • 使用 rhn-satellite status 指令來驗證衛星伺服器程序是否有在運作:
    rhn-satellite status
    

章 6. OpenSCAP

SCAP 是個用於企業級 Linux 設備的標準化規範檢查解決方案。此規格乃透過 National Institute of Standards and Technology(NIST)所維護,用於維護企業系統的系統安全性。
在 RHN Satellite Server 5.5 中,SCAP 是由 OpenSCAP 應用程式所實作。OpenSCAP 是個利用了可擴展的配置檢查清單描述格式(Extensible Configuration Checklist Description Format,XCCDF)的稽核工具。XCCDF 是個顯示檢查清單內容,以及定義安全性檢查清單的標準方式。它同時也能與其它規格合併,例如 CPE、CCE 以及 OVAL,以建立能由 SCAP 驗證的產品處理的 SCAP-expressed 檢查清單。

6.1. OpenSCAP 功能

OpenSCAP 會藉由使用 Red Hat Security Response Team(SRT)所產生的內容來驗證升級檔的存在性,檢查系統安全性配置設定,並透過使用基於規則的標準/規格,以查看系統是否有安全性漏洞的跡象。
若有有效率地使用 OpenSCAP,您需滿足以下兩項需求:
  • 驗證系統是否標準化的工具
    RHN 衛星伺服器自版本 5.5 起,包含了內建的 OpenSCAP 以提供稽核功能。您僅需要透過網站介面為系統排程及檢視規範掃瞄即可。
  • SCAP 內容
    若您理解 XCCDF 或是 OVAL,您亦可重頭新建 SCAP 的內容。此外,您亦可使用另一選項。XCCDF 內容經常會透過開放式原始碼使用條款線上發佈,並且此內容可自訂化以適合您使用。

    注意

    Red Hat 支援使用範本來評估您的系統。然而,Red Hat 不支援自訂編輯這些範本。
    這些群組的部分範例為:
    • The United States Government Configuration Baseline(USGCB)for RHEL5 Desktop — 聯邦單位系統的官方 SCAP 內容,此內容是於 NIST,與 Red Hat, Inc. 合作開發而成,而美國國防部(DoD)則使用 OVAL。
    • 社群提供的內容
      • RHEL6 的 SCAP 安全性指南 — 源自於 USGCB 需求、由社群所維護的內容,以及受到廣泛接受,及適用於桌面系統、伺服器與 ftp 伺服器的安全性政策。
      • RHEL6 的 OpenSCAP 內容 — RHEL 6 Optional 頻道中的 openscap-content 套件亦透過範本提供了 RHEL 6 系統的預設內容指南。
因為 SCAP 主要用於維護系統安全性,因此其所使用的標準會不斷更新,以滿足社群與企業的需求。新的標準是由 NIST's SCAP Release cycle 所控制,以便提供一致且可重複的修訂版工作流程。

6.2. RHN 衛星伺服器中的 OpenSCAP

6.2.1. 先決條件

套件需求

SCAP 需要這些套件:

  • 伺服器:RHN 衛星伺服器 5.5
  • 客戶端:spacewalk-oscap 套件(可由 RHN 工具子頻道取得)
權利需求

排程掃瞄需擁有管理權利。

其它需求

客戶端:將 XCCDF 內容發佈至客戶端機器

可透過以下方式來將 XCCDF 內容發佈至客戶端機器上:
  • 傳統方式(CD、USB、nfs、scp、ftp)
  • 衛星伺服器 Script
  • RPM
    建議使用自訂的 RPM 來將 SCAP 內容發佈至其它機器上。RPM 套件可透過簽章與驗證,以確保其完整性。您可透過使用者介面來安裝、移除和驗證 RPM 套件。

6.2.2. 執行稽核掃瞄

整合在衛星伺服器中的 OpenSCAP,提供了在客戶端系統上執行稽核掃瞄的能力。此部分將討論兩種可使用的方式。

過程 6.1. 透過網站介面掃瞄

透過衛星伺服器網站介面進行掃瞄:
  1. 登入衛星伺服器網站介面。
  2. 點選系統目標系統
  3. 點選稽核排程
  4. 填入 排程新的 XCCDF 掃瞄 表格:
    • 指令列引數:您可在此欄位中加入 oscap 工具的額外引數。只有兩項指令列引數是被允許的。它們乃:
      --profile PROFILE — 由 XCCDF 文件選擇特定設定檔。設定檔乃透過 XCCDF xml 檔案所決定,並且可透過使用 Profile id 標籤來檢查。例如:
      Profile id="RHEL6-Default"
      

      注意

      特定版本的 OpenSCAP 需使用 --profile 指令列引數,否則掃瞄將會失敗。
      --skip-valid — 不驗證輸入/輸出檔案。沒有正確格式的 XCCDF 內容的使用者,可選擇使用此選項,以跳過檔案驗證程序。
      若沒使用任何指令列引數,它將會使用預設設定檔。
    • XCCDF 文件的路徑:此乃必填的欄位。path 參數指向了客戶端系統上的內容位置。例如:/usr/local/scap/dist_rhel6_scap-rhel6-oval.xml

      警告

      xccdf 內容在遠端系統上執行前,會先經過驗證。指定無效的引數可能會造成 spacewalk-oscap 無法驗證或執行。基於安全性考量,「osccap xccdf eval」指令僅接受有限的參數。
  5. 請執行 rhn_check 以確認客戶端系統可掌握此動作。
    rhn_check -vv
    

    注意

    此外,若 rhnsdosad 在客戶端系統上執行的話,這些伺服器將會掌握動作。若要檢查它們是否正在執行中,請執行:
    service rhnsd start
    
    或是
    service osad start
    
若要檢視掃瞄的結果,請參閱 節 6.2.3, “如何檢視 SCAP 結果”
透過網站 UI 排程掃瞄

圖形 6.1. 透過網站 UI 排程掃瞄

過程 6.2. 透過 API 掃瞄

若要透過 API 執行一項稽核掃瞄:
  1. 選擇既有的 script 或新建 script,以透過 system.scap.scheduleXccdfScan(前端 API)來排程系統掃瞄。
    範例 script:
    #!/usr/bin/python
    client = xmlrpclib.Server('https://spacewalk.example.com/rpc/api')
    key = client.auth.login('username', 'password')
    client.system.scap.scheduleXccdfScan(key, 1000010001,
        '/usr/local/share/scap/usgcb-rhel5desktop-xccdf.xml',
        '--profile united_states_government_configuration_baseline')
    
    • 1000010001 代表 system ID (sid)
    • /usr/local/share/scap/usgcb-rhel5desktop-xccdf.xml 為指向了客戶端系統上,內容位置的路徑參數。在此情況下,它會假設 USGSB 內容位於 /usr/local/share/scap 目錄中。
    • --profile united_states_government_configuration_baseline 代表 oscap 工具的額外引數。在此情況下,它使用了 USCFGB。
  2. 在任何系統的指令列介面上執行此 script。系統需安裝了適當的 python 與 xmlrpc 函式庫。
  3. 請執行 rhn_check 以確認客戶端系統可掌握此動作。
    rhn_check -vv
    

    注意

    此外,若 rhnsdosad 在客戶端系統上執行的話,這些伺服器將會掌握動作。若要檢查它們是否正在執行中,請執行:
    service rhnsd start
    
    或是
    service osad start
    

6.2.3. 如何檢視 SCAP 結果

檢視已完成之掃瞄結果的方式有三種:
  • 透過網站介面。當動作被執行後,結果應顯示在系統的「稽核」分頁上。此網頁詳述於 節 6.2.4, “OpenSCAP 衛星伺服器網頁” 中。
  • 透過 system.scap 處理程式中的 API 功能。
  • 藉由執行下列指令,以透過衛星伺服器的 spacewalk-reports 工具檢視:
        # /usr/bin/spacewalk-reports system-history-scap
        # /usr/bin/spacewalk-reports scap-scan
        # /usr/bin/spacewalk-reports scap-scan-results
    

6.2.4. OpenSCAP 衛星伺服器網頁

下列部分詳述了 RHN 衛星伺服器網站 UI 中的分頁,這些分頁構成了 OpenSCAP。

6.2.4.1. 「稽核

位於上方導覽列的「稽核」分頁,乃在 RHN 衛星伺服器 5.5 中構成了 OpenSCAP 功能的網頁。點選此分頁能讓您檢視完整的 OpenSCAP 掃瞄、進行搜尋,和進行比對。
稽核所有掃瞄
所有掃瞄」乃在您選擇了「稽核」分頁後,所會出現的預設網頁。此網頁顯示了使用者允許檢視的已完成 OpenSCAP 掃瞄。掃瞄的權限是由系統權限所衍生出的。
稽核 ⇒ 所有掃瞄

圖形 6.2. 稽核 ⇒ 所有掃瞄

每項掃瞄皆會顯示下列資訊:
系統
掃瞄的目標系統
XCCDF 設定檔
經過評估的設定檔
已完成
完成時間
已滿足
已滿足/通過的規則數量。若評估的結果乃「通過」或「已修正」,則規則便會被視為「已滿足」。
未滿足
未滿足/失敗的規則數量。若評估的結果為「失敗」,則規則便會被視為「未滿足」。
不明
尚未評估的規則數量。若評估的結果為「錯誤」、「不明」或「未檢查」,則規則便會被視為「不明」。
XCCDF 規則的評估程序亦可能會回傳像是「Informational(資訊性質)」、「Not Applicable(不適用)」或是「not Selected(未選擇)」的狀態。在此類型的情況下,規則不會包含在此網頁上的數據中。欲取得相關資訊,請參閱系統詳細資訊稽核
稽核XCCDF Diff
XCCDF Diff 是個可檢視兩項 XCCDF 掃瞄比對的應用程式。它會顯示兩項掃瞄的 metadata,以及掃瞄結果的清單。
稽核 ⇒ XCCDF Diff

圖形 6.3. 稽核 ⇒ XCCDF Diff

您可藉由點選位於「列出掃瞄」網頁上的圖像,以直接存取相似掃瞄的 diff,或是您亦可藉由指定掃瞄 id,以針對於任意的掃瞄進行 diff
僅顯示在一項比對過的掃瞄中的項目將會被視為「varying(偏差)」。偏差項目將以米黃色強調。可能的比對模式有三種:顯示所有掃瞄項目的「完整比對」、僅顯示受到變更項目的「只有受到變更的項目,以及僅顯示未受到變更或相似項目的「只有無偏差的項目」。
稽核進階搜尋
「搜尋」網頁能讓您根據指定的條件搜尋您的掃瞄,例如:
  • 規則結果
  • 目標機器
  • 掃瞄時間
搜尋會回傳一列結果清單,或是包含在結果中的一列掃瞄清單。

6.2.4.2. 系統系統詳細資訊稽核

此分頁以及其子分頁允許您排程及檢視系統的規範掃瞄。SCAP 工具將會進行一項掃瞄,它會實作 NIST 的標準 SCAP(Security Content Automation Protocol)。若要掃瞄系統,請確認 SCAP 內容已準備妥當,並且已滿足 節 6.2.1, “先決條件” 中的所有先決條件。
系統系統詳細資訊稽核列出掃瞄
系統 ⇒ 系統詳細資訊 ⇒ 稽核 ⇒ 列出掃瞄結果

圖形 6.5. 系統 ⇒ 系統詳細資訊 ⇒ 稽核 ⇒ 列出掃瞄結果

此子分頁會列出在系統上所有已完成的掃瞄祇概要。欄位如下:

表格 6.1. OpenSCAP 掃瞄標籤

欄位標籤 定義
XCCDF 測試結果 提供掃瞄詳細結果之連結的掃瞄測試結果名稱。
已完成 掃瞄完成時的確切時間
規範 以所使用之標準為基礎的規範無權重通過/失敗比例
P 通過的檢測數量
F 失敗的檢測數量
E 進行掃瞄時所遇上的錯誤
U 不明
N 對機器不適用
K 未檢查
S 未選擇
I 資訊性
X 已修正
總數 檢測總數
每一行皆以一個圖像為起始,並顯示了與先前相似掃瞄之間的比對結果。這些圖像顯示了在新的掃瞄中:
  • "RHN List Checked" 圖像 — 與先前的掃瞄相較之下無差異。
  • "RHN List Alert" 圖像 — 任意差異
  • "RHN List Error" 圖像 — 重大差異,比先前掃瞄還要多的失敗,或是還要少的成功結果。
  • "RHN List Check In" 圖像 — 找不到可相比較的掃瞄,因此未進行任何比對。
系統系統詳細資訊稽核掃瞄詳細資訊
此網頁包含了單個掃瞄的結果。它可分為兩個部分:
  • XCCDF 掃瞄的詳細資訊
    掃瞄的詳細資訊可提供您:
    • 檔案路徑的一般資訊
    • 使用了哪些指令列引數
    • 排程的使用者
    • 硬體檢測辨識元與版本為何
    • 設定檔辨識元
    • 設定檔標題
    • 起始及完成時間
    • 任何錯誤輸出。
  • XCCDF 規則結果
    規則結果提供了完整的 XCCDF 規則辨識元清單,它可為各項規則結果辨識標籤及結果。此清單能以特定規則進行篩選。
系統系統詳細資訊稽核排程
您能在此子分頁中排程新掃瞄。您可提供額外的指令列引數,以及系統上正要被掃瞄的 XCCDF 文件的路徑。根據 Schedule no sooner than 參數,掃瞄將會在下次系統被排程 check-in 衛星伺服器的時候進行。欲取得更多有關於如何透過衛星伺服器排程的相關資訊,請參閱此章節中的 過程 6.1, “透過網站介面掃瞄”

章 7. PAM 認證

RHN 衛星伺服器支援使用 Pluggable Authentication Modules(PAM)、基於網路的認證系統。PAM 是一組能協助系統管理員整合擁有中央認證機制的 RHN 衛星伺服器的函式庫套件,這能免去記住多組密碼的麻煩。
RHN 衛星伺服器可使用 PAM 搭配 LDAP、Kerberos、Directory Server,或其它基於網路的認證系統。本章節詳述了如何設定 PAM,以和您組織的認證架構搭配使用。

過程 7.1. 設定 PAM 認證

  1. 請確認您擁有最新版本的 selinux-policy-targeted 套件:
    # yum update selinux-policy-targeted
    
  2. allow_httpd_mod_auth_pam SELinux 布林值設為開啟:
    # setsebool -P allow_httpd_mod_auth_pam 1
    
  3. 請在您偏好的文字編輯器中,開啟 /etc/rhn/rhn.conf 檔案,並附加以下一行。這將會在 /etc/pam.d/rhn-satellite 建立 PAM 服務檔案:
    pam_auth_service = rhn-satellite
    
  4. 若要設定認證,請在文字編輯器中開啟 /etc/pam.d/rhn-satellite 服務檔案,並附加適當的規則。欲取得更多有關於 PAM 配置上的詳細資訊,請參閱《Red Hat Enterprise Linux 建置指南》中的《Pluggable Authentication Modules(PAM)》。

注意

請先檢查 PAM 認證是否能正確運作,之後才與 RHN 衛星伺服器搭配使用。

範例 7.1. 在一部 Red Hat Enterprise Linux 5 i386 系統上搭配 Kerberos 使用 PAM

此範例能在一部 RHEL 5 i386 系統上啟用 PAM 搭配 Kerberos 認證。
請在文字編輯器中開啟 /etc/pam.d/rhn-satellite,並附加下列規則:
#%PAM-1.0
auth        required      pam_env.so
auth        sufficient    pam_krb5.so no_user_check
auth        required      pam_deny.so
account     required      pam_krb5.so no_user_check
若使用者乃透過 Kerberos 來進行認證,請藉由使用 kpasswd 來更改密碼。請勿在 RHN 網站上更改密碼,因為此方法僅會更改衛星伺服器上的本機密碼。若該使用者使用了 PAM 的話,本機密碼將不會被套用。

範例 7.2. 使用 PAM 搭配 LDAP

此範例將啟用 PAM 搭配 LDAP 認證。
請在文字編輯器中開啟 /etc/pam.d/rhn-satellite,並附加下列規則:
#%PAM-1.0
auth	        required      pam_env.so
auth        	sufficient    pam_ldap.so no_user_check
auth       		required      pam_deny.so
account     	required      pam_ldap.so no_user_check

章 8. RPM

通常進行自動化的安裝時,管理員會建置非 Red Hat 所提供的自訂應用程式(例如備份和監控軟體)。若要這麼作,此軟體必須被整合為 RPM。您可在一部執行 Red Hat Enterprise Linux(RHEL)的系統上,設置 RPM 建置環境。請注意,建置系統必須包含與使用於目標系統相同版本的套件。這代表若要為基於 RHEL 5 的系統建置 RPM,您必須使用一部 RHEL 5 系統,而若要建置基於 RHEL 6 的 RPM,您則需要使用 RHEL 6 系統。
rpm-build 套件必須安裝在建置系統上,才可滿足最低系統需求。您可能也需要額外的套件,例如編譯器和函式庫。
準備好用於生產環境中的 RPM 套件應以 GPG 金鑰簽署,這能讓使用者驗證套件的來源和完整性。應只有信任的管理員才可擁有用來簽署 RPM 的 GPG 金鑰之密碼。

過程 8.1. 建立一組 GPG 金鑰

重要

下列指令將會啟動 GPG 金鑰建立,並將它以適合發佈至客戶端系統的格式匯出。您應儲存並備份此金鑰。
  1. 建立目錄以存放金鑰:
    mkdir -p ~/.gnupg
    
  2. 產生金鑰配對:
    gpg --gen-key
    
    您需要選擇金鑰類型、金鑰大小,以及其有效期限(請按下 enter 來接受預設值)。您亦需要指定名稱、註解,以及電子郵件:
    Real name: rpmbuild
    Email address: rpmbuild@example.com
    Comment: this is a comment
    You selected this USER-ID:
        "rpmbuild (this is a comment) <rpmbuild@example.com>"
    
    Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit?
    
    請按下 O 以存取詳細資料並繼續進行。
  3. 列出所有金鑰以及其指紋:
    gpg --list-keys --fingerprint
    
  4. 匯出金鑰:
    gpg --export --armor "rpmbuild <rpmbuild@example.com>" > EXAMPLE-RPM-GPG-KEY
    
  5. 將金鑰匯入至 RPM 資料庫,並透過以 root 身份在所有目標系統上執行 gpg --import,以允許 RPM 原始來源和完整性驗證:
    rpm --import EXAMPLE-RPM-GPG-KEY
    
    這將會在進行客戶端安裝時自動發生,並且無須手動式執行。
  6. 當 RPM 被建立後,它便可由 GPG 金鑰簽署,並上載至正確的頻道:
    rpm --resign package.rpm
    rhnpush --server=http[s]://satellite.server/APP package.rpm --channel=custom-channel-name
  7. 若要驗證 RPM 套件,請瀏覽至包含了該套件的目錄,並執行下列指令:
    rpm –qip package.rpm
    rpm -K package.rpm

過程 8.2. 建置 RPM

  1. 請建立一個名為 rpmbuild 的無特權使用者帳號,以用來建立套件。這將能讓多個管理員共享建置環境和 GPG 金鑰。
  2. 請在 rpmbuild 使用者的家目錄(/home/rpmbuild)中,建立一個名為 .rpmmacros 的檔案:
    touch /home/rpmbuild/.rpmmacros
    
  3. 請在文字編輯器中開啟 .rpmmacros 檔案,並附加下列幾行。_gpg_name 必須符合使用來簽署 RPM 的 GPG 金鑰的名稱:
    %_topdir            %(echo $HOME)/rpmbuild
    %_signature         %gpg
    %_gpg_name          rpmbuild <rpmbuild@example.com>
    
    已定義的頂層目錄(於以上範例中的 /home/rpmbuild/rpmbuild)的目錄清單必須擁有與 /usr/src/redhat 下,相同的目錄格式。

範例 8.1. RPM 規格檔案

下列為 RPM 規格檔案的基本範例。當建立時,它應位於 _topdir 下的 SPECS 目錄中(如使用者的 .rpmmacros 檔案所定義)。相應的來源和升級檔應位於 SOURCES 目錄中。
  Name: foo
  Summary: The foo package does foo
  Version: 1.0
  Release: 1
  License: GPL
  Group: Applications/Internet
  URL: http://www.example.org/
  Source0 : foo-1.0.tar.gz
  Buildroot: %{_tmppath}/%{name}-%{version}-%{release}-root
  Requires: pam
  BuildPrereq: coreutils
  %description
  This package performs the foo operation.
  %prep
  %setup -q
  %build
  %install
  mkdir -p %{buildroot}/%{_datadir}/%{name}
  cp -p foo.spec %{buildroot}/%{_datadir}/%{name}
  %clean
  rm -fr %{buildroot}
  %pre
  # Add user/group here if needed
  %post
  /sbin/chkconfig --add food
  %preun
  if [ $1 = 0 ]; then # package is being erased, not upgraded
      /sbin/service food stop > /dev/null 2>&1
      /sbin/chkconfig --del food
  fi
  %postun
  if [ $1 = 0 ]; then # package is being erased
      # Any needed actions here on uninstalls
  else
      # Upgrade
      /sbin/service food condrestart > /dev/null 2>&1
  fi
  %files
  %defattr(-,root,root)
  %{_datadir}/%{name}
  %changelog
  * Mon Jun 16 2003 Some One <one@example.com>
  - fixed the broken frobber (#86434)

章 9. 開機裝置

自動化安裝程序(或 kickstart)是有效率的系統佈建中,不可或缺的一環。本章詳述了如何準備不同類型的開機裝置,以使用於欲 kickstart 的客戶端。
欲取得使用 kickstart 佈建上的相關資訊,請參閱《RHN 衛星伺服器入門指南》。
若要建立開機裝置,您必須擁有 RHEL 的光碟開機映像檔 boot.iso。請確認此映像檔位於系統上,並記得它的所在位置。

過程 9.1. CD 開機媒介

注意

下列的反斜線「\」代表 shell 提示中,一行指令的延續。
  1. 為開機映像檔建立工作目錄:
    mkdir -p temp cd/isolinux
    
  2. 將開機映像檔掛載至 temp 目錄中:
    mount -o loop boot.iso temp
    
  3. 將 CD 開機媒介裝置所需的檔案,複製至先前建立的目錄中:
    cp -aP temp/isolinux/* cd/isolinux/
    
  4. temp 目錄卸載,並將 cd 目錄上的使用者權限更改為可讀寫:
    umount temp
    chmod -R u+rw cd
    
  5. 切換至 ./cd 目錄:
    cd ./cd
    
  6. /usr/lib/syslinux/menu.c32 檔案複製至光碟:
    cp -p /usr/lib/syslinux/menu.c32 isolinux
    
  7. 使用您偏好的文字編輯器開啟 isolinux/isolinux.cfg,並新增下列內容:
    mkisofs -o ./custom-boot.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot \
      -boot-load-size 4 -boot-info-table -J -l -r -T -v -V "Custom RHEL Boot" .
    
  8. 視光碟開機所需,自訂化 isolinux.cfg 中的任何開機參數和目標。
  9. 將詳細資料燒入至光碟中,以完成程序。

過程 9.2. PXE 開機

  1. 為開機映像檔建立工作目錄:
    mkdir -p temp pxe/pxelinux.cfg
    
  2. 將開機映像檔掛載至 temp 目錄中:
    mount -o loop boot.iso temp
    
  3. 將 PXE 開機裝置所需的檔案複製至先前建立的目錄中:
    cp -aP temp/isolinux/* pxe/
    
  4. temp 目錄卸載,並將 cd 目錄上的使用者權限更改為可讀寫:
    umount temp
    chmod -R u+rw pxe
    
  5. 切換至 /pxe 目錄:
    cd ./pxe
    
  6. /usr/lib/syslinux/menu.c32 檔案複製至 /pxe 目錄中:
    cp -p /usr/lib/syslinux/menu.c32 .
    
  7. isolinux.cfg 檔案移至 pxelinux.cfg/default
    mv isolinux.cfg pxelinux.cfg/default
    
  8. 移除暫時性的檔案:
    rm -f isolinux.bin TRANS.TBL
    
  9. /usr/lib/syslinux/pxelinux.0 檔案複製至 /pxe 目錄中:
    cp -p /usr/lib/syslinux/pxelinux.0 .
    
  10. 在您偏好的文字編輯器中開啟 pxelinux.cfg/default 檔案,並視 PXE 開機的需求,自訂任何開機參數和目標。

過程 9.3. USB 開機媒介

警告

當以 root 身份(進行最重要的部份所需)使用這些指令時,請格外小心。這些指令會存取裝置檔案,若錯誤使用它們的話,可能會造成無法挽救的系統損毀。下列範例使用了 /dev/loop0 來進行掛載,請確認您使用了適合您系統的正確裝置。您可透過使用 losetup -f 指令,來檢查哪個裝置是正確的。
  1. 為開機映像檔建立工作目錄:
    mkdir -p temp usb/extlinux
    
  2. 將開機映像檔掛載至 temp 目錄中:
    mount -o loop boot.iso temp
    
  3. 將 USB 媒介開機裝置所需的檔案複製至先前建立的目錄中:
    cp -aP temp/isolinux/* usb/extlinux/
    
  4. temp 目錄卸載,並將 cd 目錄上的使用者權限更改為可讀寫:
    umount temp
    chmod -R u+rw usb
    
  5. 切換至 /usb 目錄:
    cd ./usb
    
  6. /usr/lib/syslinux/menu.c32 檔案複製至 extlinux/ 目錄:
    cp -p /usr/lib/syslinux/menu.c32 extlinux/
    
  7. extlinux/isolinux.cfg 檔案移至 extlinux/extlinux.conf
    mv extlinux/isolinux.cfg extlinux/extlinux.conf
    
  8. 移除暫時性的檔案:
    rm -f extlinux/isolinux.bin extlinux/TRANS.TBL
    
  9. 轉換 custom-boot.img 檔案並將它複製:
    dd if=/dev/zero of=./custom-boot.img bs=1024 count=30000
    
  10. 找出 loopback 裝置的正確掛載位置:
    losetup -f
    /dev/loop0
    
    以開機映像設定 loopback 裝置:
    losetup /dev/loop0 ./custom-boot.img
    
  11. 開啟 fdisk 工具程式:
    fdisk /dev/loop0
    
    在裝置上建立一個主要開機分割區。這可透過下列按鍵組合來達成:n p 1 Enter Enter a 1 p w
  12. 將 master boot record(MBR)複製至 loopback 裝置:
    dd if=/usr/lib/syslinux/mbr.bin of=/dev/loop0
    
  13. 將分割區對映新增至 loopback 裝置:
    kpartx -av /dev/loop0
    
  14. 建立檔案系統:
    mkfs.ext2 -m 0 -L "Custom RHEL Boot" /dev/mapper/loop0p1
    
  15. 掛載裝置:
    mount /dev/mapper/loop0p1 temp
    
  16. 刪除暫時性的檔案:
    rm -rf temp/lost+found
    
  17. extlinux/ 目錄複製至暫時的位置上:
    cp -a extlinux/* temp/
    
  18. 在暫時性的位置上安裝開機載入程式:
    extlinux temp
    
  19. 卸載暫時性的位置:
    umount temp
    
  20. 刪除 loopback 裝置上的分割區對映:
    kpartx -dv /dev/loop0
    
  21. 刪除 loopback 裝置:
    losetup -d /dev/loop0
    
    同步檔案系統變更:
    sync
    
  22. 請在您偏好的文字編輯器中開啟 extlinux.conf 檔案,並視 USB 開機的需求,自訂任何開機參數和目標。
  23. 將映像檔傳送至一個 USB 裝置,以完成程序。請輸入裝置,並執行 dmesg 指令來檢查掛載位置。在此範例中為 /dev/sdb
    卸載 USB 裝置:
    umount /dev/sdb
    
    將映像複製至 USB 裝置:
    dd if=./custom-boot.img of=/dev/sdb
    

章 10. 組織

RHN 衛星伺服器能讓管理員將建置劃分為組織化的容器。這些容器(或組織)能協助清楚劃分系統的用途和擁有權,以及建置至這些系統的內容。
RHN 衛星伺服器支援在單一安裝程序中,建立與管理多重組織,這能讓您劃分不同群組之間的系統、內容,以及訂閱服務。本章概述了建立與管理多重組織的基本概念與工作。
組織」網站介面能讓管理員檢視、建立和管理多重衛星伺服器組織。衛星伺服器管理員能在各種組織之間,分配軟體和系統權利,並且亦可控制組織對於系統管理工作的存取權限。
衛星伺服器管理員可建立新組織、為該組織指定管理員,以及指定權利。組織管理員可指定群組、系統,以及其組織的使用者。這能讓組織在不影響其它組織的情況下,進行管理工作。
管理

圖形 10.1. 管理

組織」網頁包含了一列衛星伺服器上的組織清單,並且顯示了各組織的使用者與系統計數。「組織」網頁亦包含了一個「信任關係」網頁,顯示所有已建立的組織信任關係。

10.1. 建立組織

過程 10.1. 建立組織

  1. 若要新建組織,請開啟「管理」選單,並選擇「組織」=>「新建組織」。
    新建組織

    圖形 10.2. 新建組織

  2. 請在提供的文字方塊中輸入組織名稱。名稱長度應介於 3 至 128 個字元。
  3. 請藉由提供下列資訊,來為組織建立管理員:
    • 輸入組織管理員的「登錄名稱」,長度應介於 3 至 128 個字元。請考慮建立一組能與組織管理使用者名稱意義相符的登錄名稱,作為組織管理員帳號。
    • 建立「密碼」並「確認」密碼。
    • 輸入組織管理員的「電子郵件」地址。
    • 輸入組織管理員的「」和「」。
  4. 按下「建立組織」按鈕,以完成程序。
當新建了組織後,「組織」網頁便會顯示並列出新建的組織。
衛星伺服器管理員應考慮將 organization 1 這組組織管理員帳號保留給自己。這能讓他們視需求登入組織。

重要

若您的 RHN 衛星伺服器已配置了 PAM 認證,請避免在新組織中,使用衛星伺服器管理組織管理員帳號的 PAM 帳號。請為組織管理員建立一組衛星伺服器本機帳號,並將 PAM 認證的帳號保留給權限較低的衛星伺服器登錄帳號,如此一來,便可避免使用者時常以較高的權限登入 RHN 衛星伺服器,因為使用這些帳號所會發生錯誤的機會較高。

10.2. 管理權利

在建立了新組織之後,有項重要的工作就是將管理權利指定給新組織。您將會需要系統權利,例如各系統的 Management 以及 Provisioning。對於使用自訂頻道之外的頻道的系統,您將會需要頻道權利,例如 rhel-serverrhn-tools。管理系統權利為組織能在衛星伺服器上運作的基本需求。分配給組織的管理權利數量,與可向 RHN 衛星伺服器上的該組織註冊的最大系統數量相等,無論可用軟體權利的數量為何。比方說,若有個組織擁有 100 個 Red Hat Enterprise Linux Client 權利,不過卻只有 50 個管理系統權利,這即代表只有 50 部系統可向該組織註冊。
您應授予各組織 Red Hat Network Tools 軟體頻道權利。Red Hat Network Tools 頻道包含了延伸 RHN 衛星伺服器功能的各種客戶端軟體,例如配置管理與 kickstart 支援所需的客戶端,以及 rhn-virtualization 套件(用於確認 Xen 與 KVM 虛擬客座端的權利計算正確)。
若要存取「訂閱」介面,請開啟「管理」選單,並選擇「組織」。請由清單中選擇一個組織,然後選擇「訂閱」分頁。
請在「訂閱」介面中,開啟「軟體頻道權利」分頁,以查看所有組織的所有權利,以及其使用量。
在「軟體頻道權利」分頁中,「組織」分頁能讓衛星伺服器管理員調整各組織所能使用的軟體頻道數量。請輸入數量(「可用的值」之中所列出的範圍),並按下「更新組織」按鈕,以更改此數值。
頻道權利能夠是 RegularFlex。任何系統皆可使用 regular 權利。只有類型為受支援之虛擬化類型的系統可使用 Flex 權利。

注意

建立自訂頻道的組織管理員,僅可在它們的組織中使用該頻道,除非在希望共享頻道的組織之間,建立了組織信任關係。欲取得更多有關於組織信任上的相關資訊,請參閱 節 10.5, “組織信任關係”
組織」分頁亦包含了一個訂閱+系統權利部份,它詳述了:
  • 總數」:衛星伺服器的頻道權利總數。
  • 可用」:目前可配置的權利數量。
  • 使用量」:目前所有組織所使用的權利數量,與所有已配置權利總數量的比例。
比方說,若「總數」欄為 100,並且「可用」欄為 70,這即代表已分配了 30 項權利給組織。「使用量」一欄顯示了這 30 項已分配的權利中,有幾項是由非基礎組織的組織所使用。因此,若「使用量」一欄顯示了「30 之 24(80%)」,這即代表 30 項已分配的權利中,有 24 項頻道權利已分配給衛星伺服器組織(除了 organization 1)。
請在「訂閱」介面中,選擇「軟體頻道權利」分頁,以查看所有組織的所有權利,以及它們的使用量。請點選組織,以顯示其「詳細資料」網頁,此網頁提供了有關於組織的更多相關資訊。
  • 啟用中的使用者」:組織中的使用者數量
  • 系統」:已向組織訂閱的系統之數量。
  • 系統群組」:已向組織訂閱的群組之數量。
  • 啟動金鑰」:組織可使用的啟用金鑰之數量。
  • Kickstart 設定檔」:組織可使用的 kickstart 設定檔之數量。
  • 配置頻道」:組織可使用的配置頻道之數量。
您可在此網頁上,藉由點選「刪除組織」連結,來刪除組織。

10.3. 在組織中配置系統

當組織建立,並且權利已分配完畢後,您接著便可分配系統。
您可使用兩種方式來向特定組織註冊系統:
以使用者名稱和密碼註冊
若您為特定組織建立了一組使用者名稱與密碼,系統將會向該組織進行註冊。比方說,若 user-123 屬於衛星伺服器上,「Central IT」組織的成員,在任何系統上輸入下列指令,皆會使該系統向您衛星伺服器上的「Central IT」組織註冊:
rhnreg_ks --username=user-123 --password=foobar

注意

rhnreg_ks 中的 --orgid 參數與衛星伺服器註冊或 RHN 衛星伺服器的多重組織支援不相關
以啟用金鑰註冊
您亦可透過一組啟用金鑰,來註冊一部組織中的系統。啟用金鑰會將系統註冊至建立了該啟用金鑰的組織。若您希望能讓使用者在無須提供某個組織的登入存取權限的情況下,向該組織註冊一部系統的話,啟用金鑰將會是個極佳的註冊方式:
rhnreg_ks --activationkey=21-myactivationkey
若要在組織之間移動系統,您亦可透過使用啟用金鑰,來以 script 自動化此移動程序。

注意

啟用金鑰的前幾個字元,可使用來顯示擁有該金鑰的組織的 ID 號碼。

10.4. 組織使用者

使用者」網頁包含了衛星伺服器上,所有組織中的所有使用者之清單。
使用者」網頁列出了指定給組織的使用者,包括他們的真實名稱、電子郵件地址,以及一個標記顯示使用者是否是組織管理員。
若您是組織管理員的話,您可點選使用者名稱,以顯示該使用者的「使用者詳細資料」網頁。

注意

您必須以組織管理員登入,才能編輯組織使用者的詳細資料。衛星伺服器管理員這個角色,不允許您編輯組織使用者的詳細資料,它只允許您指定衛星伺服器管理員這個角色,給衛星伺服器中的其它使用者。

10.5. 組織信任關係

組織可透過建立組織信任關係,來共享資源。組織信任關係是由衛星伺服器管理員所定義,並由組織管理員來實做的。一旦在兩個或更多個組織之間建立了信任關係,各組織的組織管理員便可視需求共享任何資源。各組織的組織管理員必須決定要共享哪些資源,以及要使用哪些來自於組織信任關係中,其它組織的共享資源。
各項個別關係皆為獨立的,並與其它信任關係無關。比方說,若 Accounting Organization 信任 Finance Organization,並且 Finance Organization 信任 Facilities Organization,在沒有建立獨立的信任關係情況下,Accounting 將不會信任 Facilities。
組織信任關係

圖形 10.3. 組織信任關係

過程 10.2. 建立組織信任關係

衛星伺服器可建立兩個或更多組織之間的信任關係。若要這麼作,請執行下列步驟:
  1. 點選「管理」主頁選單上的「組織」連結。
  2. 點選其中一個組織的名稱,並在「詳細資料」網頁中,點選「信任關係」分頁。
  3. 在「信任關係」分頁上,會有個清單顯示 RHN 衛星伺服器上的所有其它信任關係。若您擁有許多組織,請使用「以組織過濾」文字方塊來排序它們。
  4. 請點選組織名稱旁的核取方塊,以決定您希望哪個組織被納入目前組織的組織信任關係中。
  5. 按下「修改信任」按鈕,以建立信任。
當組織信任建立之後,組織便能與信任關係中的其它組織,共享自訂軟體頻道。有三種頻道共享層級可套用至頻道,以進行存取控制:
私密
請將頻道設為私密,如此一來除了擁有它的組織以外,沒有其它任何組織可存取它。
保護
讓頻道可讓您選擇的特定信任組織存取。
公共
允許信任關係中的所有組織存取自訂頻道。
透過「保護」或「公共」存取模式授予自訂內容的存取權限的受信任組織,能讓其客戶端系統透過共享頻道安裝和更新套件。下列情況若發生,便可能會失去訂閱存取權限。
  • 衛星伺服器管理員移除信任關係
  • 組織管理員將頻道存取權限更改為私密
  • 組織管理員將頻道存取權限更改為私密,並且未在保護的清單中包含已訂閱之系統的組織
  • 組織管理員直接刪除了共享頻道
  • 組織管理員刪除了某共享子頻道的父頻道

注意

所有 Red Hat 軟體頻道皆是透過權利來管理的。組織管理員不可共享 Red Hat 頻道,因為它們僅能讓擁有這些頻道之權利的組織使用。衛星伺服器管理員負責分配 Red Hat 軟體頻道權利給各個組織。

過程 10.3. 遷移系統

除了共享軟體頻道之外,信任關係中的組織亦可透過使用 migrate-system-profile 工具程式,來將系統遷移至其它信任的組織。此工具程式需透過指令列執行,並使用 systemIDorgID 來指定系統遷移以及其目標組織。衛星伺服器管理員可將一部系統由信任的組織,遷移至信任關係中的任何組織。然而,組織管理員只能將來自於他們自己組織的系統,遷移至信任關係中的另一個組織。
若要使用 migrate-system-profile 指令,您需安裝 spacewalk-utils 套件,這一般就預設值會與 RHN 衛星伺服器一起安裝。當某個組織透過 migrate-system-profile 指令來遷移一部系統時,系統不會帶過任何來自於來源組織、先前的權利或頻道訂閱。然而,系統的紀錄則會被保留,並且可讓新的組織管理員存取,以簡化剩下的遷移程序,這包括訂閱至基礎頻道和取得權利。
  1. 請使用下列格式執行指令:
    migrate-system-profile --satellite SATELLITE HOSTNAME OR IP --systemId=SYSTEM ID --to-org-id=DESTINATION ORGANIZATION ID
    比方說,Finance 部門(建立於 RHN 衛星伺服器中為組織 OrgID 2)希望由 Engineering 部門遷移一部工作站(SystemID 10001020),不過 Finance 的組織管理員沒有 RHN 衛星伺服器的 shell 存取權限。RHN 衛星伺服器的主機名稱為「satserver.example.com」。Finance 的組織管理員將需要在 shell 提示列中,輸入下列指令:
    migrate-system-profile --satellite satserver.example.com --systemId=10001020 --to-org-id=2
    
    工具程式接著便會提示輸入一組使用者名稱與密碼。
  2. 接著,系統便能在登入 RHN 衛星伺服器網站介面時,透過「系統」網頁檢視。遷移程序是透過分配基礎頻道,並授予權利給向組織註冊的系統用戶端來完成的(可透過「事件」分頁中的系統「紀錄」網頁取得)。
    系統紀錄

    圖形 10.4. 系統紀錄

  3. 需要一次遷移多部系統的衛星伺服器管理員,可使用 migrate-system-profile--csv 選項,以透過基本逗號區隔開的系統清單,來自動化這項程序。
    CSV 檔案中,應該要有一行包含著欲遷移之系統的 ID,以及目的地組織的 ID。其格式如下:
    systemId,to-org-id
    
    比方說,systemId 能夠是 1000010000,而 to-org-id 能夠是 3。CSV 的範例可看似:
    1000010000,3
    1000010020,1
    1000010010,4
    

附錄 A. 修訂紀錄

修訂記錄
修訂 3-5.2.4002013-10-31Rüdiger Landmann
Rebuild with publican 4.0.0
修訂 3-5.2Tue Nov 20 2012Terry Chuang
翻譯、校閱完成
修訂 3-5.1Sun Nov 4 2012Terry Chuang
翻譯檔案已與 XML 來源 3-5 同步
修訂 3-5Wed Sept 19 2012Dan Macpherson
5.5 版最後一次製成套件
修訂 3-4Fri Aug 31 2012Athene Chan (陳愛珍)
BZ#839798 小幅編輯
修訂 3-3Fri Aug 24 2012Athene Chan (陳愛珍)
BZ#839798 將 4.3 的範例改為標準格式
修訂 3-3Fri Aug 24 2012Athene Chan (陳愛珍)
BZ#839798 將 4.3 的範例改為標準格式
修訂 3-2Fri Aug 24 2012Athene Chan (陳愛珍)
BZ#826501 套用 QA 檢視後的變更。
BZ#884313 套用 QA 檢視後的變更。
修訂 3-1Fri Aug 17 2012Athene Chan (陳愛珍)
BZ#848313 新增 OpenSCAP 章節「如何檢視 SCAP 的結果」
修訂 3-0Thu Aug 9 2012Athene Chan (陳愛珍)
放上中繼伺服器以供檢視
修訂 2-5Wed Aug 1 2012Athene Chan (陳愛珍)
BZ#839798 加入 spacewalk-clone-by-date 章節
BZ#826501 加入新的 OpenSCAP 資訊
修訂 2-0Fri Jul 6 2012Athene Chan (陳愛珍)
為 RHN 衛星伺服器 5.5 版本做準備
BZ#826501 新增 OpenSCAP 章節
新增 OpenSCAP
修訂 1-5Mon Aug 15 2011Lana Brindley
將 z-stream 版本的資料放入 y-stream 中
修訂 1-4Mon Jun 20 2011Lana Brindley
BZ#701900 - PAM 身分認證
修訂 1-3Mon Jun 20 2011Lana Brindley
BZ#714029 - 修正影像檔的顏色
修訂 1-2Wed Jun 15 2011Lana Brindley
已準備出版
修訂 1-1Fri May 27 2011Lana Brindley
來自譯者的更新
修訂 1-0Fri May 6, 2011Lana Brindley
準備進行翻譯
修訂 0-15Thu May 5, 2011Lana Brindley
BZ#701818 - QE Review
修訂 0-14Mon May 2, 2011Lana Brindley
BZ#248465 - QE Review
修訂 0-13Fri Apr 29, 2011Lana Brindley
BZ#692295 - QE Review
修訂 0-12Mon Apr 18, 2011Lana Brindley
BZ#691985 - Updating image
修訂 0-11Mon Apr 18, 2011Lana Brindley
BZ#691990 - QE Review
修訂 0-10Mon Apr 18, 2011Lana Brindley
BZ#691985 - QE Review
修訂 0-9Thu Apr 14, 2011Lana Brindley
技術檢視意見
修訂 0-8Wed Apr 13, 2011Lana Brindley
BZ#692314 - QE Review
BZ#692294 - QE Review
BZ#692291 - QE Review
BZ#692290 - QE Review
BZ#691988 - QE Review
BZ#691986 - QE Review
BZ#691981 - QE Review
修訂 0-7Wed Mar 23, 2011Lana Brindley
準備進行技術檢視
修訂 0-6Mon Feb 19, 2011Lana Brindley
RPM
開機裝置
組織
修訂 0-5Fri Feb 18, 2011Lana Brindley
監控
PAM 認證
修訂 0-4Mon Jan 10, 2011Lana Brindley
備份和復原
修訂 0-3Fri Jan 7, 2011Lana Brindley
使用者管理
序言
自動同步
修訂 0-2Wed Jan 5, 2011Lana Brindley
使用者管理
修訂 0-1Tue Jan 4, 2011Lana Brindley
完成了新的章節結構
修訂 0-0Tue Dec 21, 2010Lana Brindley
由原本的 RHN 衛星伺服器建置指南建立新的文件

索引

符號

使用者, 使用者管理
changing 電子郵件地址, 使用者管理
停用, 新增、停用,和刪除使用者帳號
刪除(只有 RHN 衛星伺服器可執行此動作), 新增、停用,和刪除使用者帳號
新增, 新增、停用,和刪除使用者帳號
更改密碼, 使用者管理
角色, 使用者管理
使用者角色, 使用者管理
停用
使用者, 新增、停用,和刪除使用者帳號
先決條件
OpenSCAP, 先決條件
刪除
使用者(只有 RHN 衛星伺服器可執行此動作), 新增、停用,和刪除使用者帳號
功能, OpenSCAP 功能
密碼
更改, 使用者管理
新增
使用者, 新增、停用,和刪除使用者帳號
稽核
OpenSCAP, OpenSCAP
稽核掃瞄, 執行稽核掃瞄
OpenSCAP, 執行稽核掃瞄
網站
使用者, 使用者管理
網站使用者介面
稽核掃瞄, 執行稽核掃瞄
衛星伺服器管理員, 使用者管理
複製機器
spacewalk-clone-by-date, 複製機器
電子郵件地址
更改, 使用者管理

A

API
audit scans, 執行稽核掃瞄

P

PAM 認證
實做, PAM 認證

S

spacewalk-clone-by-date, 複製機器

法律聲明

Copyright © 2011 Red Hat, Inc.
This document is licensed by Red Hat under the Creative Commons Attribution-ShareAlike 3.0 Unported License. If you distribute this document, or a modified version of it, you must provide attribution to Red Hat, Inc. and provide a link to the original. If the document is modified, all Red Hat trademarks must be removed.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat Software Collections is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.