Sun Microsystems Solaris Security Toolkit Administration Guide [zh]

Solaris™ Security Toolkit
4.2 管理指南
Sun Microsystems, Inc. www.sun.com
文件號碼 819-3792-10 2005 7 月,修訂版 A
請將您對本文件的意見提交至: http://www.sun.com/hwdocs/feedback
美國專利,以及在美國或其他國家/地區的一項或多項其他專利或申請中專利,但並不以此為限。 本文件及相關產品在限制其使用、複製、發行和反編譯的授權下發行。未經 Sun 及其授權人 (如果有) 事先的書面許可,不得使用任何方式、任
何形式來複製本產品或本文件的任何部分。 協力廠商軟體,包括字型技術,其版權歸 Sun 供應商所有,經授權後使用。 本產品中的某些部分可能源自於加州大學授權的 Berkeley BSD 系統的開發成果。UNIX 是在美國和其他國家/地區的註冊商標,已獲得
X/Open Company, Ltd. 專屬授權。 SunSun MicrosystemsSun 標誌、Sun BluePrintsSolarisSunOSJavaJumpStartSun4USunDocs 與 Solstice DiskSuite 是 Sun
Microsystems, Inc. 在美國及其他國家/地區的商標或註冊商標。
所有 SPARC 商標都是 SPARC International, Inc. 在美國和其他國家/地區的商標或註冊商標,經授權後使用。凡具有 SPARC 商標的產品都是採 Sun Microsystems, Inc. 所開發的架構。ORACLE Oracle Corporation 的註冊商標。
OPEN LOOK Sun™ Graphical User Interface (Sun 圖形化使用者介面) 都是由 Sun Microsystems, Inc. 為其使用者與授權者所開發的技術。 Sun 感謝 Xerox 公司在研究和開發視覺化或圖形化使用者介面之概念上,為電腦工業所做的開拓性貢獻。Sun 已向 Xerox 公司取得 Xerox 圖形
化使用者介面之非獨占性授權,該授權亦適用於使用 OPEN LOOK GUI 並遵守 Sun 書面授權合約的 Sun 公司授權者。 美國政府權利商業軟體。政府使用者應遵守 Sun Microsystems, Inc. 的標準授權合約和 FAR 及其增補文件中的適用條款。
本文件以其 「原狀」提供,對任何明示或暗示的條件、陳述或擔保,包括對適銷性、特殊用途的適用性或非侵權性的暗示保證,均不承擔任何 責任,除非此免責聲明的適用範圍在法律上無效。
請回收
目錄
前言 xvii
1. 簡介 1
Solaris Security Toolkit 軟體鞏固系統安全性 1
JumpStart 模式 2
獨立模式 2
瞭解軟體元件 3
目錄 4
Audit 目錄 4
Documentation 目錄 4
man 目錄 5
Drivers 目錄 5
Files 目錄 8
Finish 目錄 9
OS 目錄 9
Packages 目錄 10
Patches 目錄 10
Profiles 目錄 10
Sysidcfg 目錄 11
資料儲存庫 11
iii
維護版本控制 11
配置和自訂 Solaris Security Toolkit 軟體 12
策略和需求 12
導引 12
2. 系統安全化:套用方法 15
規劃及準備 15
考慮風險及利益 15
檢閱安全性策略、標準以及相關文件 17
範例 117
範例 217
判定應用程式及服務的需求 18
辨識應用程式及作業服務庫存 18
判定服務需求 18
開發及實作 Solaris Security Toolkit 設定檔 26
安裝軟體 26
執行安裝前作業 27
備份資料 27
驗證系統穩定性 27
執行安裝後作業 28
驗證應用程式及服務功能性 28
驗證安全性設定檔安裝 28
驗證應用程式及服務功能性 28
維護系統安全性 29
3. 升級、安裝及執行安全性軟體 31
執行規劃與安裝前作業 31
軟體需求 32
判定使用何種模式 32
iv Solaris Security Toolkit 4.2 管理指南 • 2005 7
獨立模式 32
JumpStart 模式 33
升級程序 33
升級 Solaris Security Toolkit 軟體與 Solaris 作業系統 34
僅升級 Solaris Security Toolkit 軟體 35
僅升級 Solaris 作業系統 35
下載安全性軟體 35
下載 Solaris Security Toolkit 軟體 36
下載 pkg 版本 36
下載 Recommended Patch Cluster 軟體 37
下載 Recommended Patch Cluster 軟體 37
下載 FixModes 軟體 38
下載 FixModes 軟體 38
下載 OpenSSH 軟體 39
下載 OpenSSH 軟體 39
下載 MD5 軟體 40
下載 MD5 軟體 40
自訂安全設定檔 42
安裝及執行軟體 42
在獨立模式下執行軟體 42
在獨立模式下執行軟體 46
稽核選項 47
清除選項 47
顯示說明選項 48
驅動程式選項 49
電子郵件通知選項 50
執行歷程選項 50
最近執行的選項 51
目錄 v
輸出檔案選項 51
無訊息輸出選項 52
根目錄選項 52
還原選項 52
JumpStart 模式下執行軟體 53
JumpStart 模式下執行軟體 53
驗證系統修改 54
執行品質保證 (QA) 檢核服務 54
執行配置的安全性評估 54
驗證安全設定檔 55
執行安裝後作業 55
4. 逆轉系統變更 57
瞭解變更如何被記錄及逆轉 57
還原系統變更的需求 58
自訂程序檔還原變更 59
檢查曾經手動更改的檔案 60
使用還原功能選項 60
備份選項 61
強制選項 61
保留選項 62
輸出檔案選項 62
無訊息輸出選項 62
電子郵件通知選項 63
還原系統更改 63
還原 Solaris Security Toolkit 運行 63
5. 配置及管理 JumpStart 伺服器 71
配置 JumpStart 伺服器及環境 72
vi Solaris Security Toolkit 4.2 管理指南 • 2005 7
配置 JumpStart 模式 72
使用 JumpStart 設定檔範本 74
core.profile 74
end-user.profile 74
developer.profile 75
entire-distribution.profile 75
oem.profile 75
minimal-SunFire_Domain*.profile 75
新增及移除用戶端 76
add-client 程序檔 76
rm-client 程序檔 77
6. 稽核系統安全性 79
維護安全性 79
強化之前檢視安全性 80
自訂安全性稽核 80
準備稽核安全性 81
使用選項及控制稽核輸出 81
指令行選項 82
顯示說明選項 82
電子郵件通知選項 83
輸出檔案選項 84
無訊息選項 84
詳細度選項 85
標題及訊息輸出 85
主機名稱、程序檔名稱、以及時間戳記輸出 88
執行安全性稽核 89
執行安全性稽核 89
目錄 vii
7. 系統安全化 93
規劃及準備 93
假設及限制 94
系統環境 94
安全性需求 95
建立安全性設定檔 95
安裝軟體 95
下載及安裝安全性軟體 96
下載及安裝安全性軟體 96
安裝修補程式 96
安裝修補程式 97
指定及安裝作業系統叢集 97
指定及安裝作業系統叢集 98
配置 JumpStart 伺服器及用戶端 99
準備基礎架構 99
準備基礎架構 99
驗證及檢核規則檔案 101
自訂強化配置 103
啟用 FTP 服務 104
啟用 FTP 服務 104
安裝 Secure Shell 軟體 104
安裝 Secure Shell 105
啟用 RPC 服務 105
啟用 RPC 106
自訂 syslog.conf 檔案 106
自訂 syslog.conf 檔案 106
安裝用戶端 107
安裝用戶端 107
viii Solaris Security Toolkit 4.2 管理指南 • 2005 7
品質保證測試 108
驗證設定檔安裝 108
驗證應用程式及服務的功能性 109
字彙表 111
索引 119
目錄 ix
x Solaris Security Toolkit 4.2 管理指南 • 2005 7
1-1 軟體元件架構 3 1-2 驅動程式控制流程 6
xi
xii Solaris Security Toolkit 4.2 管理指南 • 2005 7
1-1 自訂檔案的命名標準 13 2-1 列出最近使用的服務 24 3-1 使用 jass-execute 的指令行選項 43 4-1 使用還原指令的指令行選項 61 5-1 JumpStart add-client 指令 76 5-2 JumpStart rm-client 指令 78 6-1 使用稽核指令的指令行選項 82 6-2 稽核詳細度等級 85 6-3 顯示稽核輸出的標題與訊息 86 6-4 顯示主機名稱、程序檔名稱、及時間戳記稽核輸出 88
xiii
xiv Solaris Security Toolkit 4.2 管理指南 • 2005 7
程式碼範例
程式碼範例 1-1 驅動程式控制流程碼 7 程式碼範例 2-1 取得有關檔案系統物件的資訊 19 程式碼範例 2-2 自執行中程序收集資訊 19 程式碼範例 2-3 確認動態載入應用程式 20 程式碼範例 2-4 判定配置檔案是否使用中 21 程式碼範例 2-5 判定使用 RPC 的應用程式 22 程式碼範例 2-6 驗證 rusers 服務 23 程式碼範例 2-7 判定使用 RPC 的應用程式的替代方法 24 程式碼範例 2-8 判定服務及應用程式使用的埠 25 程式碼範例 2-9 判定使用檔案及埠的程序 25 程式碼範例 3-1 移動修補程式至 /opt/SUNWjass/Patches 目錄 38 程式碼範例 3-2 獨立模式指令行用法範例 42 程式碼範例 3-3 在獨立模式下執行軟體 46 程式碼範例 3-4 -c 選項輸出範例 47 程式碼範例 3-5 -h 選項輸出範例 48 程式碼範例 3-6 -d driver 選項輸出範例 50 程式碼範例 3-7 -H 選項輸出範例 51 程式碼範例 3-8 -l 選項輸出範例 51 程式碼範例 3-9 -o 選項輸出範例 52 程式碼範例 3-10 -q 選項輸出範例 52
xv
程式碼範例 4-1 手動更改檔案輸出的範例 60 程式碼範例 4-2 還原可用之運行的輸出範例 64 程式碼範例 4-3 還原處理多個清單檔案項目的運行之輸出範例 65 程式碼範例 4-4 還原異常的輸出範例 66 程式碼範例 4-5 還原期間選擇備份選項的輸出範例 67 程式碼範例 4-6 還原期間務必選擇備份選項的輸出範例 68 程式碼範例 6-1 -h 選項輸出範例 83 程式碼範例 6-2 -o 選項輸出範例 84 程式碼範例 6-3 -q 選項輸出範例 84 程式碼範例 6-4 僅報告稽核失敗之輸出範例 86 程式碼範例 6-5 稽核記錄項目輸出範例 88 程式碼範例 6-6 執行稽核的輸出範例 90 程式碼範例 7-1 新增用戶端至 JumpStart 伺服器 99 程式碼範例 7-2 建立設定檔 100 程式碼範例 7-3 修改過程序檔的輸出範例 100 程式碼範例 7-4 檢查 rules 檔案的正確性 101 程式碼範例 7-5 rules 檔案的輸出範例 102 程式碼範例 7-6 不正確程序檔範例 102 程式碼範例 7-7 正確程序檔範例 103 程式碼範例 7-8 已修改過的 xsp-firewall-hardening.driver 輸出範例 107 程式碼範例 7-9 評估安全性配置 108
xvi Solaris Security Toolkit 4.2 管理指南 • 2005 7
前言
本手冊包含瞭解與使用 Solaris Security Toolkit 軟體的參考資訊。本手冊主要是針對 使用 Solaris Security Toolkit 軟體來鞏固 Solaris 作業系統 (OS) 版本 8、9 和 10 之安 全性人員所撰寫的,例如,管理員、諮詢人員及其他部署新的 Sun 系統或鞏固已部署 的系統之安全性人員。本手冊內的指示適用於在 JumpStart模式或獨立模式下使用本 軟體時。
閱讀本書之前
您應為已取得 Sun 認證的 Solaris系統管理員或已取得 Sun 認證的 Solaris網路管 理員。您亦應具備標準網路通訊協定和拓樸方面的知識。
由於本書是設計為依照使用者對於安全性的經驗或知識的不同程度來提供其個別需求, 因此使用者的經驗和知識會決定使用者使用本書的方式。
本書架構
本手冊是做為使用者指南,其章節包含使用軟體來鞏固系統安全性的資訊、指示及準 則。本書架構如下所示:
1 章說明 Solaris Security Toolkit 軟體的設計和用途。其中涵蓋重要元件、功能、優 點及支援的平台。
2 章提供鞏固系統安全性的方法。在您使用軟體確保系統安全前,您可以套用 Solaris Security Toolkit 程序。
xvii
3 章提供下載、安裝及執行 Solaris Security Toolkit 軟體及其他安全性相關軟體的指 示。
4 章提供如何反轉 (取消) Solaris Security Toolkit 軟體在執行強化期間所做的變更之 資訊和程序。
5 章提供配置和管理 JumpStart 伺服器以使用 Solaris Security Toolkit 軟體的資訊。
第 6 章說明如何使用 Solaris Security Toolkit 軟體來稽核 (驗證) 系統的安全性。請使用 本章的資訊和程序來維護在強化之後所建立的安全性設定檔。
7 章說明如何將前述章節所提供的資訊和專業技術應用於實際的分析藍本,以安裝和 鞏固新系統的安全性。
使用 UNIX 指令
本文件不會介紹基本的 UNIX® 指令和操作程序,如關閉系統、啟動系統與配置裝置。 若需此類資訊,請參閱以下文件:
系統隨附的軟體文件
Solaris 作業系統之相關文件,其 URL 為:
http://docs.sun.com
xviii Solaris Security Toolkit 4.2 管理指南 • 2005 7
Shell 提示符號
Shell
C shell
C shell 超級使用者 電腦名稱#
Bourne shell Korn shell
Bourne shell Korn shell 超級使用者
提示符號
電腦名稱%
$
#
印刷排版慣例
*
字體
AaBbCc123
AaBbCc123
術語強調變數 新的字彙或術語、要強調的詞。
意義 範例
指令、檔案及目錄的名稱;螢幕畫 面輸出。
您所鍵入的內容 (與螢幕畫面輸出 相區別)。
將用實際的名稱或數值取代的指 令行變數。
請編輯您的 .login 檔案。 請使用 ls -a 列出所有檔案。
% You have mail.
% Password:
這些被稱為類別選項。 您必須是超級使用者才能執行此操作。
要刪除檔案,請鍵入 rm 檔案名稱
su
AaBbCc123
AaBbCc123 用於書名及章節名稱。 Solaris 10 使用者指南」
* 瀏覽器中的設定可能會與這些設定不同。
保留未譯的新的字彙或術語、要 強調的詞。
應謹慎使用 On Error 指令。
請參閱第 6 章 「資料管理」。
前言 xix
硬體模組的分類名稱
Sun Fire 高階系統包含下列型號:
E25KE20K15K12K
Sun Fire 中階系統包含下列型號:
E6900E49006800481048003800
Sun Fire 入門中階系統包含下列型號:
E2900Netra 1280V1280V890V880V490V480
支援的硬體系統
Solaris Security Toolkit 4.2 軟體支援 SPARC® (僅限 64 位元) 以及執行 Solaris 10 作業 系統的 x86/x64 系統。Solaris Security Toolkit 4.2 軟體支援執行 Solaris 8 和 9 的 SPARC 32 位元系統,例如:Ultra 2 Creator 3D。
xx Solaris Security Toolkit 4.2 管理指南 • 2005 7
支援的 Solaris 作業系統版本
Solaris Security Toolkit 軟體的 Sun 支援可在 Solaris 8、Solaris 9 Solaris 10 作業
系統下使用。
備註 – 至於 Solaris Security Toolkit 4.2 軟體,Solaris 10 僅可使用於 Sun Fire 高階系
統網域,而不是在系統控制器 (SC)
雖然此軟體可以在 Solaris 2.5.1、Solaris 2.6 Solaris 7 作業系統下使用,但是 Sun 援卻無法在這些作業系統下使用。
Solaris Security Toolkit 軟體會自動偵測已安裝哪個 Solaris 作業系統軟體,然後執行適 用於該作業系統版本的作業。
請注意,本文件中所提供作業系統版本之程序檔檢查的範例,其可檢查 5.x、SunOS™ 版本,而不是 2.x、7、8、9 或 10 的 Solaris 作業系統版本。表 P-1 顯示 SunOS 和 Solaris 作業系統版本間的關聯性。
P-1 SunOS Solaris 作業系統版本間的關聯性
SunOS 版本 Solaris 作業系統版本
5.5.1 2.5.1
5.6 2.6
5.7 7
5.8 8
5.9 9
5.10 10
支援的 SMS 版本
如果您使用 System Management Services (SMS) Sun Fire 高階系統上執行系統控制 器 (SC),在所有使用 SMS 版本 1.31.4.1 1.5 Solaris 8 9 作業系統皆支援 Solaris Security Toolkit 4.2 軟 體。在 使 用 Solaris Security Toolkit 4.2 軟體的 Solaris 10 作業系統上不支援任何 SMS 版本。
前言 xxi
備註 – 至於 Solaris Security Toolkit 4.2 軟體,Solaris 10 僅可使用於網域,而不是
系統控制器 (SC)
相關文件
線上所列的文件網址為:
http://www.sun.com/products-n-solutions/hardware/docs/ Software/enterprise_computing/systems_management/sst/index.html
適用範圍 書名 文件號碼 格式 位置
版本說明 Solaris Security Toolkit 4.2 版本說明」
參考文件 Solaris Security Toolkit 4.2 Reference Manual」
線上手冊 Solaris Security Toolkit 4.2 Man Page Guide」
819-3799-10 PDF
HTML
819-1503-10 PDF
HTML
819-1505-10 PDF
線上
線上
線上
文件、支援與培訓
Sun 功能
文件
支援
培訓
xxii Solaris Security Toolkit 4.2 管理指南 • 2005 7
URL
http://www.sun.com/documentation/
http://www.sun.com/support/
http://www.sun.com/training/
說明
下載 PDF HTML 文件,以及購買出 版文件
取得技術支援與下載修補程式
取得 Sun 課程資訊
協力廠商網站
Sun 對於本文件中所提及之協力廠商網站的使用不承擔任何責任。Sun 對於此類網站或 資源中的 (或透過它們所取得的) 任何內容、廣告、產品或其他材料,不做背書,也不 承擔任何責任。對於因使用或依靠此類網站或資源中的 (或透過它們所取得的) 任何內 容、產品或服務而造成的或連帶產生的實際或名義上之損壞或損失,Sun 概不負責,也 不承擔任何責任。
Sun 歡迎您提出寶貴意見
Sun 致力於提高文件品質,因此誠心歡迎您提出意見與建議。請至下列網址提出您對本
文件的意見:
http://www.sun.com/hwdocs/feedback
請隨函附上文件書名與文件號碼:
Solaris Security Toolkit 4.2 管理指南」,文件號碼: 819-3792-10
前言 xxiii
xxiv Solaris Security Toolkit 4.2 管理指南 • 2005 7
1
簡介
本章旨在說明 Solaris Security Toolkit 軟體的設計和用途,其中涵蓋重要元件、功能、 優點及支援的平台。本章提供關於維護修改和部署的版本控制之準則,並陳述自訂 Solaris Security Toolkit 軟體的重要準則。
本章包含以下主題:
1 頁「以 Solaris Security Toolkit 軟體鞏固系統安全性」 3 頁 「瞭解軟體元件」 11 頁 「維護版本控制」 12 頁 「配置和自訂 Solaris Security Toolkit 軟體」
Solaris Security Toolkit 軟體鞏固系統 安全性
Solaris Security Toolkit 軟體 (又稱為 JumpStart 架構與安全性程序檔,JASS) 工具組提 供一種自動、可延伸及可延展的機制來建立和維護 Solaris 作業系統之安全性。藉由 Solaris Security Toolkit 軟體,您可以對系統進行強化及稽核其安全性。
您必須瞭解下列本指南中所使用的重要術語:
強化 修改 Solaris 作業系統配置以增進系統安全。
稽核 判定系統配置是否符合預先定義的安全性設定檔。
備註稽核一詞被用來說明 Solaris Security Toolkit 軟體透過比較預先定義的安全性
設定檔,來驗證安全性部署的自動程序。此專有名詞在此出版品內的使用代表保證系 統在使用稽核選項後即會安全無虞。
1
計分 - 在稽核執行期間找到的錯誤數量之值。如果沒有發現錯誤 (任一種),結果數
值則為 0。只要偵測到一個錯誤,Solaris Security Toolkit 就會將分數 (又稱為弱點 數值) 增加 1 分。
有兩種安裝 Solaris Security Toolkit 軟體的方法,在下列章節中會有簡短的介紹:
2 頁「JumpStart 模式」 2 頁 「獨立模式」
無論系統的安裝方式為何,您皆可使用 Solaris Security Toolkit 軟體來強化和最小化您 的系統。之後,定期使用 Solaris Security Toolkit 軟體來稽核已鞏固安全性的系統之安 全性設定檔是否被不小心或蓄意修改。
JumpStart 模式
系統安裝和配置應儘可能自動化 (理想目標為百分之百)。其中包括作業系統的安裝和配 置、網路配置、使用者帳號、應用程式及強化。JumpStart 軟體為一種可用來自動化 Solaris 作業系統安裝的技術。JumpStart 軟體提供一種將系統安裝在網路上的機制 (需 要少量或不需人工介入操作)。Solaris Security Toolkit 軟體提供在以 JumpStart 軟體為 基礎的安裝中,實行及自動化與強化 Solaris 作業系統有關的大多作業之架構和程序 檔。要取得 JumpStart Enterprise Toolkit (JET) (提供 JumpStart 為基礎之安裝與包含 以 Solaris Security Toolkit 支援強化的模組),請至 Sun Software Download 網站,網 址為:
http://www.sun.com/download/
要取得有關 JumpStart 技術的資訊,請參閱 Sun BluePrints™ 文件 「JumpStart Technology: Effective Use in the Solaris Operating Environment」。
獨立模式
此外,Solaris Security Toolkit 軟體具有獨立模式。此模式能夠提供執行與 JumpStart 模式中相同的所有強化功能,但僅限於在已部署的系統上。在任一模式中,作出的安全 性修改可以且應該自訂以符合您的系統之安全性需求。
無論系統的安裝方式為何,您皆可使用 Solaris Security Toolkit 軟體來強化您的系統。 之後,定期使用 Solaris Security Toolkit 軟體來稽核已鞏固安全性的系統之配置是否被 不小心或蓄意修改。
2 Solaris Security Toolkit 4.2 管理指南 • 2005 7
瞭解軟體元件
本節提供 Solaris Security Toolkit 軟體元件架構的簡介。Solaris Security Toolkit 軟體 為一組檔案和目錄。圖 1-1 顯示此架構的圖例。
1-1 軟體元件架構
下列程式或指令檔案位於 /bin 目錄下:
add-client 將用戶端新增到 JumpStart 環境的 JumpStart 輔助程式。
rm-client JumpStart 環境移除用戶端的 JumpStart 輔助程式。
make-jass-pkg 提供能夠從 Solaris Security Toolkit 目錄的內容建立 Solaris
業系統套裝模組之指令,以簡化自訂 Solaris Security Toolkit 配置的內部分配。
jass-check-sum - 提供能夠根據在各個 Solaris Security Toolkit 執行期間所建
立的總和檢查,判定 Solaris Security Toolkit 軟體所修改的任何檔案是否已變更的 指令。
jass-execute - 執行 Solaris Security Toolkit 軟體中大部份功能之指令。
1 章簡介 3
目錄
Solaris Security Toolkit 架構的元件編排為以下目錄:
/Audit/bin/Documentation/Drivers/Files/Finish/lib/man/OS/Packages/Patches/Profiles/Sysidcfg
本節說明各個目錄,其中將列出相關的各個程序檔、配置檔或子目錄,及其他章節的參 考資料以提供詳細資訊。
Solaris Security Toolkit 目錄架構是基於 Sun BluePrints 手冊 「JumpStart Technology: Effective Use in the Solaris Operating Environment」。
Audit 目錄
此目錄含有稽核程序檔,可評估系統是否符合定義的安全性設定檔或稽核程序檔。此目 錄中的程序檔編排為以下類別:
停用啟動安裝最小化列印移除設定更新
如需上述各個類別中的程序檔之詳細清單及各個程序檔的說明,請參閱 「Solaris Security Toolkit 4.2 Reference Manual」。
Documentation 目錄
此目錄包含具有使用者資訊的文字檔,例如 READMEEOL_NOTICEINSTALL 檔。
4 Solaris Security Toolkit 4.2 管理指南 • 2005 7
man 目錄
此目錄包含指令、功能和驅動程式之線上手冊手冊各節的子目錄。此目錄也包含了 windex 檔,其為指令的索引且是免費提供。
如需關於這些線上手冊的更多資訊,請參閱這些線上手冊或 「Solaris Security Toolkit
4.2 Man Page Guide」。
Drivers 目錄
此目錄含有配置資訊的檔案,這些配置檔案指出在執行 Solaris Security Toolkit 軟體時 會執行和安裝哪些檔案。此目錄含有驅動程式、程序檔及配置檔。
以下為 Drivers 目錄中的驅動程式和程序檔的範例:
audit_{private|public}.funcscommon_{log|misc}.funcs{config|hardening|secure}.driverdriver.{init|run}driver_{private|public}.funcsfinish.initserver-{config|hardening|secure}.driversuncluster3x-{config|hardening|secure}.driver sunfire_15k_sc-{config|hardening|secure}.driverundo.{funcs|init|run}user.init.SAMPLEuser.run.SAMPLE
所有包含在 Solaris Security Toolkit 中的驅動程式中都各有三個檔案:
name-{config|hardening|secure}.driver
這三個檔案在先前的清單中是以括號表示,例如:sunfire_15k_sc­{config|hardening|secure}.driver。這些檔案是為了完整起見所列出的,因此
在執行驅動程式時,請使用 secure.drivername-secure.driver。該驅動 程式會自動呼叫相關的驅動程式。
Solaris Security Toolkit 架構包括在修改本身的實際程序檔時,啟動驅動程式、結束 及用於不同的環境的稽核程序檔之配置資訊。結束和稽核程序檔中使用的所有變數都保 留在一組配置檔中。這些配置檔是由驅動程式所匯入的,讓變數能夠在受到驅動程式呼 叫時即結束並稽核程序檔。
Solaris Security Toolkit 軟體有四個主要的配置檔案,全都儲存於 Drivers 目錄中:
driver.initfinish.inituser.inituser.run
1 章簡介 5
user.run 檔案提供您寫入置換或 Solaris Security Toolkit 功能強化版本的位置,如果 已存在則會自動使用。
注意 – 可變更 user.init 配置檔中的變數定義,而 driver.init
finish.init 配置檔中的變數定義。
驅動程式呼叫的結束程序檔位於 Finish 目錄中。驅動程式呼叫的稽核程序檔位於 Audit 目錄中。驅動程式安裝的檔案是從 Files 目錄讀取。如需更多關於結束程序檔
的資訊,請參閱 「Solaris Security Toolkit 4.2 Reference Manual」的第四章。如需更 多關於稽核程序檔的資訊,請參閱 「Solaris Security Toolkit 4.2 Reference Manual」 的第五章。
1-2 為驅動程式控制流程的流程表。
1-2 驅動程式控制流程
1. 適用於執行非 JumpStart,驅動程式執行 jass-execute 指令。JumpStart 執行會直 接呼叫驅動程式,而不會呼叫 jass-execute 指令。
6 Solaris Security Toolkit 4.2 管理指南 • 2005 7
2. 驅動程式會明確設定變數。
3. 驅動程式會從各種 .init 檔案輸入所有環境變數。
4. 驅動程式可定義 JASS_FILES JASS_SCRIPTS 的環境變數。這些定義是選擇使
用的;可定義單一環境、或定義兩個環境、或不定義任何環境。
請參閱 「Solaris Security Toolkit 4.2 Reference Manual」的第 7 章,以取得更多關 於定義 JASS_FILESJASS_SCRIPTS 環境變數的資訊。
5. 驅動程式呼叫 driver.run 以執行由 JASS_FILEJASS_SCRIPTS 環境變數定 義的作業。
6. (選擇性) 驅動程式定義特定驅動程式之作業,其可用於覆蓋系統預設的
finish.init user.init。程式碼範例 1-1 的驅動程式會明確將 JASS_PASS_HISTORY 設定為 4
程式碼範例 1-1 顯示驅動程式的控制流程碼。
程式碼範例 1-1 驅動程式控制流程碼
DIR="‘/bin/dirname $0‘" JASS_PASS_HISTORY=”4” export DIR . ${DIR}/driver.init
JASS_FILES="
/etc/cron.d/cron.allow /etc/default/ftpd /etc/default/telnetd
"
JASS_SCRIPTS="
install-at-allow.fin
remove-unneeded-accounts.fin " . ${DIR}/driver.run
1. 此程式碼範例會設定並匯出 DIR 環境變數,這樣驅動程式才能辨識起始目錄。
2. 驅動程式會明確將 JASS_PASS_HISTORY 環境變數設定為 4
3. 驅動程式會讀取各種 .init ( driver.init 開始)
JASS_FILES 環境變數被定義為含有從 JASS_HOME_DIR/Files 目錄複製到用戶
4.
端的檔案。
5. JASS_SCRIPTS 環境變數接著會以 Solaris Security Toolkit 軟體執行的結束程序檔 定義。
1 章簡介 7
6. 強化運行的執行會由呼叫 driver.run 驅動程式而啟動。driver.run 會複製 JASS_FILES 指定的檔案,然後執行 JASS_SCRIPTS 指定的程序檔。
Files 目錄
此目錄是由 JASS_FILES 環境變數和 driver.run 程序檔使用,以儲存複製到 JumpStart 用戶端的檔案。
以下檔案位於本目錄中:
/.cshrc/.profile/etc/default/sendmail/etc/dt/config/Xaccess/ftpd/banner.msg/etc/hosts.allow/etc/hosts.allow-15k_sc/etc/hosts.allow-server/etc/hosts.allow-suncluster/etc/hosts.deny/etc/init.d/klmmod/etc/init.d/nddconfig/etc/init.d/set-tmp-permissions/etc/init.d/sms_arpconfig/etc/init.d/swapadd/etc/issue/etc/motd/etc/opt/ipf/ipf.conf/etc/opt/ipf/ipf.conf-15k_sc/etc/opt/ipf/ipf.conf-server/etc/security/audit_class+5.10/etc/security/audit_class+5.8/etc/security/audit_class+5.9/etc/security/audit_control/etc/security/audit_event+5.10/etc/security/audit_event+5.8/etc/security/audit_event+5.9/etc/sms_domain_arp/etc/sms_sc_arp/etc/syslog.conf/root/.cshrc/root/.profile/var/opt/SUNWjass/BART/rules/var/opt/SUNWjass/BART/rules-secure
8 Solaris Security Toolkit 4.2 管理指南 • 2005 7
Finish 目錄
此目錄含有在執行期間執行系統修改和更新的結束程序檔。此目錄中的程序檔編排為以 下類別:
停用啟動安裝最小化列印移除設定更新
如需上述各個類別中的程序檔之詳細清單及各個程序檔的說明,請參閱 「Solaris Security Toolkit 4.2 Reference Manual」。
OS 目錄
本目錄只含有 Solaris 作業系統影像,其由 JumpStart 軟體安裝程序使用以做為給用戶 端安裝的 Solaris 作業系統來源。如果目錄名稱是按照 Solaris Security Toolkit 作業系 統命名慣例,add_client 程序檔會接受包含在此目錄中的 Solaris 作業系統版本做為 引數。
要取得更多有關載入及修改 Solaris 作業系統影像的資訊,請參閱 Sun BluePrints 文件
JumpStart Technology: Effective Use in the Solaris Operating Environment」。
以下為標準安裝命名慣例。
Solaris 作業系統
使用以下 Solaris 作業系統的命名標準:
Solaris_os version
_4 digit year-2 digit month of CD release
例如,Solaris 10 Operating Environment CD (日期:2005 年 3 月) 的目錄名稱為 Solaris_10_2005-03。隔開更新和 Solaris 作業系統的發行版本,可維持測試和部 署方面的精密控制。
x86/x64 平台的 Solaris 作業系統
x86/x64 平台的 Solaris 作業系統使用以下目錄命名規則:
Solaris_os version_4 digit year-2 digit month of CD release_ia
1 章簡介 9
例如,如果 x86/x64 平台的 Solaris 作業系統發行版本為 2005 3 月,目錄名稱則為:
Solaris_10_2005-03_ia.
Packages 目錄
此目錄含有可用結束程序檔安裝與稽核程序檔驗證的軟體套裝模組。例如:Open Secure Shell 軟體套裝模組可儲存在 Packages 目錄中,則會按照需求以正確的結束程
序檔安裝軟體。
某些隨附於 Solaris Security Toolkit 軟體的結束與稽核程序檔會執行軟體安裝和基本配 置與驗證功能。從 Packages 目錄安裝與驗證軟體的程序檔包括:
install-fix-modes.{fin|aud}install-jass.{fin|aud}install-md5.{fin|aud}install-openssh.{fin|aud}
Patches 目錄
此目錄是用來儲存 Solaris 作業系統的 Recommended and Security Patch Clusters。下 載需要的修補程式,然後將其解壓縮至此目錄。
藉由將修補程式置放及解壓縮到此目錄,您可以讓安裝更加順利。當修補程式解壓縮到 此目錄時,Solaris Security Toolkit 軟體的修補程式安裝程序檔會進行自動化安裝,這 樣您就不必為各個系統安裝手動解壓縮修補程式叢集。
為各個使用的 Solaris 作業系統版本建立子目錄。例如,您在 Patches 目錄內可能會 有 9_Recommended10_Recommended 目錄。
Solaris Security Toolkit 軟體可支援 x86/x64 平台的 Solaris 作業系統修補程式叢集。 這些修補程式叢集支援的命名慣例和由 SunSolve OnLine
格式為 <release>_x86_Recommended。Solaris 10 作業系統的 x86/x64 平台之
Solaris 作業系統修補程式叢集會位於名為 10_x86_Recommended 的目錄中。
Profiles 目錄
此目錄包含所有 JumpStart 設定檔。這些設定檔包含 JumpStart 軟體用來判定要執行的 安裝的 Solaris 作業系統叢集之配置資訊 (例如:核心、一般使用者、開發人員或完整 分發)、磁碟佈局及安裝類型 (例如:獨立式)。
JumpStart 設定檔是在 rules 檔案中列出及使用,以定義建立的系統或系統群組之特 定程度。
10 Solaris Security Toolkit 4.2 管理指南 • 2005 7
SM
服務提供的相同。
Sysidcfg 目錄
類似於 Profiles 目錄、含有用於 JumpStart 模式安裝的檔案之 Sysidcfg 目錄。 這些檔案會提供所需的安裝資訊來自動化 Solaris 作業系統安裝。會有另一個目錄架構 儲存作業系統專用的資訊。
每個 Solaris 作業系統都有其個別的目錄。對於每個發行版本,都會有一個已命名的目 錄。Solaris_OS Version.Solaris Security Toolkit 軟體包含用於 Solaris 作業系統版本
2.5.1 至 10 之 sysidcfg 檔案範例。
範例 sysidcfg 檔可延伸至其他種類,例如每個網路或主機。Solaris Security Toolkit 軟體支援任意 sysidcfg 檔。
要取得更多有關 sysidcfg 檔案的資訊,請參閱 Sun BluePrints 文件 「JumpStart Technology: Effective Use in the Solaris Operating Environment」。
資料儲存庫
若不在 JASS_HOME_DIR 目錄架構、資料儲存庫或 JASS_REPOSITORY 中,則目錄支 援 Solaris Security Toolkit 還原依照每次執行的運行來儲存資料、維護軟體所修改的清 單檔案、為執行記錄儲存資料。此目錄位於 /var/opt/SUNWjass/runs/ <時間戳記
> 中。
維護版本控制
維護 Solaris Security Toolkit 軟體使用的所有檔案和程序檔之版本控制是非常重要的, 原因有二:
1. 本環境的其中一個目標為能夠重建系統安裝。如果沒有安裝時使用的所有檔案版本 之快照,此目標就無法達成。
2. 因為這些程序檔正在執行安全功能,其對於許多組織來說是非常重要的程序,必須 非常小心執行以確保實行必須和測試的變更。
Solaris 作業系統 SUNWsprot 套裝模組中提供了 Source Code Control System (SCCS) 版本控制套裝模組。您可以使用其他免費的以及商業軟體供應商提供的版本控制軟體以 管理版本資訊。無論您使用哪種版本控制產品,請使程序就緒開始管理更新和擷取版本 資訊以用於- 將來的系統重建。
除了版本控制,請使用整合性管理解決方案以判定檔案內容是否有經過修改。雖然系統 的特權使用者或許能夠繞過版本控制系統,但他們不會輕易忽略整合性管理系統,其在 遠端系統上維持整合性資料庫。整合性管理解決方案在集中化時最為有用,這是因為本 端儲存的資料庫有可能會遭到蓄意修改。
1 章簡介 11
配置和自訂 Solaris Security Toolkit 軟體
Solaris Security Toolkit 軟體含有預設程序檔、架構功能及變數,這些變數可實行 Sun BluePrints 文件中標題為 「Enterprise Security: Solaris Operating Environment Security Journal, Solaris Operating Environment Versions 2.5.1, 2.6, 7, and 8和有關
安全性的 Sun BluePrints OnLine 文摘中的所有安全性導引。這些設定並適用於所有 系統,因此您必須自訂 Solaris Security Toolkit 軟體以達到您的系統的安全性需求。
Solaris Security Toolkit 軟體其中一個最顯著的特性就是,您可以輕鬆自訂此軟體以符 合您的環境、系統及安全需求。若要自訂 Solaris Security Toolkit 軟體,請透過驅動程 式、結束程序檔、稽核程序檔、架構功能、環境變數及檔案範本來調整它的行動。
大多的使用者需修改 Solaris Security Toolkit 程式碼。如果在您的環境中使用 Solaris Security Toolkit 軟體時絕對需要代碼修改,請將代碼複製到 user.run 獨有的檔案或 函數名稱,這樣您就可以如第 12 頁 「導引」 中所述輕鬆追蹤變更。
在這本手冊當中,自訂 Solaris Security Toolkit 軟體的導引和指示會提供說明。請參閱
Solaris Security Toolkit 4.2 Reference Manual」取得關於自訂驅動程式的有用資訊。
自訂包括修改和建立檔案或變數。
本指南提供自訂 Solaris Security Toolkit 軟體的範例。這些範例重點說明您可以自訂 Solaris Security Toolkit 軟體的某些方式,不過仍有多種可能性。
以下章節介紹在試圖自訂 Solaris Security Toolkit 軟體前必須清楚瞭解的資訊。這些資 訊是根據從許多部署集結而成的分享經驗,讓您避免陷入一般的陷阱。
策略和需求
在自訂和部署 Solaris Security Toolkit 軟體時,適當的規劃可確保平台配置正確且符合 您的機構之期望。
在您的規劃階段中,請務必從各種來源取得輸入,包括安全性策略和標準、企業法規和 準則,以及供應商提供的偏好實作。
除了這些資訊以外,您也必須注意應用程式和作業需求,以確保配置不會影響到平台具 備其預計的商業功能之能力。
導引
在自訂 Solaris Security Toolkit 軟體時,請注意以下導引。瞭解並觀察這些導引可讓部 署程序變得較為簡易且較具效率。
12 Solaris Security Toolkit 4.2 管理指南 • 2005 7
就一般的原則而言,請勿變更任何隨附於 Solaris Security Toolkit 軟體的原始檔案
(驅動程式、程序檔、檔案等)。變更原始檔案會抑制並限制您的機構升級到新版 Solaris Security Toolkit 軟體的能力,這是因為對於原始檔案的任何變更可能會被
新版檔案覆寫。(您的所有自訂變更將會消失,而您系統的配置可能會變成意料外 的結果。)
若要自訂任何這些檔案,請先製作備份、然後修改副本、保留原始檔案不作修改。 此準則中僅有一個例外:
sysidcfg
Solaris Security Toolkit 4.2 軟體中的新功能任您可在 Files 目錄的範本上使用關鍵
字字尾。如此一來,系統管理員不會修改包含在 Solaris Security Toolkit 4.2 軟體中任何預設範本。需要時可使用字尾。
命名您的驅動程式或程序檔副本,讓檔名與原檔名有所區別。使用能代表程序檔用
途的前綴或關鍵字。例如,含有公司名稱或股票代號的前綴、部門識別碼、甚或是 平台或應用程式類型等都是絕佳的命名標準。表 1-1 列出一些命名標準的範例。
1-1 自訂檔案的命名標準
自訂檔案 命名標準
abccorp-secure.driver
abcc-nj-secure.driver
abbcorp-nj-webserver.driver
abc-nj-trading-webserver.driver
公司前綴
公司股票代號、位置
公司、位置、應用程式類型
公司、位置、機構、應用程式類型
檢閱以下 Solaris Security Toolkit 檔案,查看是否適用於您的系統。若要自訂這些檔
案,請複製原始檔案、將副本重新命名為 user.inituser.run,然後再對這 些副本進行修改或新增內容。
Drivers/user.init.SAMPLE
Drivers/user.run.SAMPLE
用於自訂全域參數
用於自訂全域函數
備註 – 請注意,若使用 pkgrm 指令移除 SUNWjassuser.init user.run 檔案
(如有建立) 不會被移除。對於新增到 Solaris Security Toolkit 目錄架構的和未包含於原
始軟體分發中的任何客戶檔案也是如此。
備註 – Solaris Security Toolkit 4.2 軟體提供新的強化給 pkgrm 指令。按照此發行版
本,在 pkgrm 指令的第一個步驟必須檢查發行中所有檔案的完整性。如果有任何不同 的檔案,pkgrm 指令與錯誤訊息會告知系統管理員,將正確檔案放置到定位或移除修 改過的檔案。
1 章簡介 13
14 Solaris Security Toolkit 4.2 管理指南 • 2005 7
2
系統安全化:套用方法
本章提供一個系統安全化的方法,在您使用軟體確保系統安全前,您可以套用 Solaris Security Toolkit 程序。
本章包含以下主題:
15 頁 「規劃及準備」 26 頁 「開發及實作 Solaris Security Toolkit 設定檔」 26 頁 「安裝軟體」 28 頁 「驗證應用程式及服務功能性」 29 頁 「維護系統安全性」
規劃及準備
正確的規劃是成功使用 Solaris Security Toolkit 軟體以鞏固系統安全性的關鍵。在規劃 階段,Solaris Security Toolkit 根據機構的安全性策略與標準,以及系統應用程式與運 作需求建立系統的設定檔。此階段可分為下列作業:
15 頁 「考慮風險及利益」 17 頁 「檢閱安全性策略、標準以及相關文件」 18 頁 「判定應用程式及服務的需求」
雖然本書並未涵括,本階段的考慮可能包括了解風險及曝光、瞭解基礎架構與其安全性 需求以及考慮責任、記錄及使用稽核。
考慮風險及利益
強化系統時,必須以特別預防來協助您確保當執行 Solaris Security Toolkit 軟體後系統 仍可發揮功能。程序確保將當機時間減少至最短也是非常重要的。
15
備註當已部署系統執行安全化時,對於某些狀況重新建立是最有效的,重新安裝期
間作強化,然後重新將運作必要的軟體重新載入。
本節呈現您在嘗試系統安全化之前必須要清楚理解的顧慮。小心的評量風險與利益,判 定何種動作對您的機構是最適合的。
1. 了解系統服務及應用程式的需求。
在執行 Solaris Security Toolkit 軟體之前必須辨識系統中執行的服務及應用程式。任 何與服務及應用程式相關的相依性必須列舉出來,如此可以充分的調整 Solaris Security Toolkit 的配置。如果未能如此做,可能導致一開始就會停用或者阻止必要 的服務。Solaris Security Toolkit 軟體所作的變更大部分可以復原,安裝之前設定一 個正確的設定檔,限制與 Solaris Security Toolkit 實作有關的潛在當機時間。
2. 將系統必須離線及重新開機納入考慮。
要使 Solaris Security Toolkit 軟體所作的變更生效,系統必須重新開機。根據系統的 重要性、所提供的服務以及是否維護視窗的適用性,機構可能面臨實施軟體的困難。 仔細衡量過當機的代價相對於加強安全性的風險之後,再作決定。
3. 系統可能需要多次的重新開機來驗證功能性。
可行時,使系統的關鍵性服務 (mission-critical) 設定生效之前,於非生產性系統上 作所有的變更。但這不是永遠可行的。例如,缺乏足夠的硬體或軟體可以正確的作 目標環境的鏡射。強化期間的 Solaris Security Toolkit 軟體安裝之前之後都必須作 測試。系統強化之後可能還是會有無法辨識的相依性,這些相依性需要作疑難排解。 大部分狀況,這些議題使用本章所述的技巧可以很快解決。若執行 Solaris Security Toolkit 之後發現了功能性問題,要復原 Solaris Security Toolkit 的效果再重新開機 可能是必要的,或者更進一步更改系統的安全性配置來支援或者啟用遺漏的功能。
4. 平台的安全性不只是強化及稽核。
當考慮重塑系統配置來增強安全狀態時,重要的是要了解平台強化及稽核是就保護 系統、服務及資料而言,只是可以做及應該做的一小部分。其他衡量標準及控制已 經超出本文件的範圍,但是鼓勵您考慮與帳號管理、權限管理、檔案系統及資料完 整性、主機存取的控制、入侵偵測、脆弱性掃描及分析以及應用程式安全性相關的 問題。
5. 系統可能已經被利用或者有可被利用的弱點。
要被強化的平台可能已經被攻擊者利用。對於已被利用的弱點,要 Solaris Security
Toolkit 軟體提供保護可能已經太晚。在弱點已被利用的情況下:
a. 重新安裝系統。
b. 安裝 Solaris Security Toolkit 軟體。
c. 使用 Solaris Security Toolkit 軟體以加強安全性。
16 Solaris Security Toolkit 4.2 管理指南 • 2005 7
檢閱安全性策略、標準以及相關文件
系統安全化的第一個工作是了解您機構有關平台安全性的相關安全策略、標準以及導 引。使用這些文件來做為 Solaris Security Toolkit 設定檔的基礎,原因是這些文件傳達 機構內所有系統的需求及實作。若您的機構沒有這些文件,建立它來增加您自訂 Solaris Security Toolkit 軟體的能力。
備註 – 尋找這些文件時,要知道有些資料可能列入最佳實作或者其他文件中。
要取得更多有關安全策略的資訊,請參閱 Sun BluePrints OnLine 文摘「Developing a Security Policy」。此文件可被使用來取得更多對於安全性策略在機構安全性計畫中所
扮演的角色的瞭解。
下面兩個範例說明策略聲明可如何直接影響配置 Solaris Security Toolkit 設定檔的方 法。
範例 1
策略 機構必須使用支持使用者嚴格驗證及資料傳輸加密的管理協定。
設定檔影響 - 明文 (Clear-text) 協定如 Teln e t、檔案傳輸協定 (FTP)、簡易網路管理
協定版本 1 (SNMPv1) 以及其他協定應該被使用。Solaris Security Toolkit 的 secure.driver 停用如此的服務,因此不需要另外的配置。
備註Te ln et 及 FTP 服務兩者皆可延伸使用如 Kerberos 來支援嚴格驗證及加密。但
是,該預設配置支援這些新增的安全層級。
範例 2
策略 每個使用者每隔 30 天必須更改密碼。
設定檔影響 Solaris Security Toolkit 軟體可以配置成啟用密碼生命期。Solaris
Security Toolkit 的 secure.driver 設定密碼的最大期限為 8 週 (56 天)。要配合安全 策略,Solaris Security Toolkit 軟體的設定檔必須作更改。請參閱 「Solaris Security Toolkit 4.2 Reference Manual」。
雖然 Solaris Security Toolkit 軟體中的 secure.driver 會使在系統上執行的密碼過 期,此變更在現存的使用者變更密碼之前不會影響他們。對現存使用者啟用密碼生命 期,對每個使用者帳戶呼叫 passwd(1) 指令。要強制現存使用者變更密碼,您可以使 用 passwd -f 指令。如需更多關於 passwd(1) 指令之資訊,請參閱 「Solaris 10 OS Reference Collection」。
2 章 系統安全化:套用方法 17
判定應用程式及服務的需求
此項作業確保系統強化之後服務仍具功能。此項作業由下列步驟所組成:
18 頁 「辨識應用程式及作業服務庫存」 18 頁 「判定服務需求」
辨識應用程式及作業服務庫存
盤點應用程式、服務以及作業或管理功能。要判定軟體是否真正在系統上使用,此份庫 存清單是必要的。很多狀況下,系統被配置過多的軟體而且軟體並不支援商業功能。
若有可能,系統應該做最小建構。那就是需要安裝不支援商業功能的軟體。系統不需 要的軟體應用程式會增加攻擊者可以用來利用系統的機會。除此之外,系統上愈多軟體 通常代表需要套用愈多的修補程式。要取得簡化 Solaris 作業系統的資訊,請參閱 Sun
BluePrints OnLine 文摘 「Minimizing the Solaris Operating Environment for Security」。如需關於最小化 Sun Fire 系統網域之資訊,請參閱 Sun BluePrints 線上文
章「Part I: Minimizing Domains for Sun Fire V1280, 6800, 12K, and 15K Systems」 以及 「Part II: Minimizing Domains for Sun Fire V1280, 6800, 12K, and 15K Systems」。
建立軟體的庫存清單時,除了常駐系統的應用程式,確定要納入基礎架構元件,例如管 理、監控以及備份軟體。
判定服務需求
當您完成應用程式及服務清單後,請判定元件間的相依性是否可能因強化程序而影響。 很多協力廠商應用程式直接使用由 Solaris 作業系統所提供的服務。對於那些直接使 用的應用程式,下列章節提供有用的資訊。
18 頁 「共用程式庫」 21 頁 「配置檔案」 22 頁 「服務架構」
備註 – 此節中的所有範例都是從 Solaris 9 作業系統而來。
共用程式庫
瞭解支援一個應用程式需要何種程式庫是非常重要的。這項知識對於除錯情況非常有 用,而且對於準備強化系統也是很有用的。當不明瞭系統狀態時,盡可能收集資料 (例 如軟體間的相依性),如此才會清楚瞭解。
根據您安裝的 Solaris 作業系統,有三個方法可用來確定應用程式使用的程式庫:此節 為每個方法顯示編碼範例。
18 Solaris Security Toolkit 4.2 管理指南 • 2005 7
方法 1取得檔案系統物件的資訊,例如:應用程式二進位碼或程式庫 (程式碼範
2-1)
方法 2 收集執行程序以分析執行中的應用程式之資訊 (程式碼範例 2-2)。方法 3 辨識動態載入應用程式以在程式啟動時進行追蹤 (程式碼範例 2-3)。
方法 1
若要取得檔案系統相關資訊,請使用 /usr/bin/ldd 指令。
例如:定義程式庫需要支援網域名稱系統 (DNS) 伺服器軟體。
程式碼範例 2-1 取得有關檔案系統物件的資訊
# ldd /usr/sbin/in.named
libresolv.so.2 => /usr/lib/libresolv.so.2
libsocket.so.1 => /usr/lib/libsocket.so.1
libnsl.so.1 => /usr/lib/libnsl.so.1
libc.so.1 => /usr/lib/libc.so.1
libdl.so.1 => /usr/lib/libdl.so.1
libmp.so.2 => /usr/lib/libmp.so.2
/usr/platform/SUNW,Ultra-5_10/lib/libc_psr.so.1
方法 2
使用 /usr/proc/bin/pldd 指令 (Solaris 作業系統版本 8、9 和 10 適用),自執行的 程序中收集資訊。
程式碼範例 2-2 自執行中程序收集資訊
# pldd 20307
20307: /usr/sbin/in.named
/usr/lib/libresolv.so.2
/usr/lib/libsocket.so.1
/usr/lib/libnsl.so.1
/usr/lib/libc.so.1
/usr/lib/libdl.so.1
/usr/lib/libmp.so.2
2 章 系統安全化:套用方法 19
程式碼範例 2-2 自執行中程序收集資訊 (續)
# pldd 20307
/usr/platform/sun4u/lib/libc_psr.so.1
/usr/lib/dns/dnssafe.so.1
/usr/lib/dns/cylink.so.1
方法 3
pldd 指令顯示應用程式動態的將共用程式庫載入,除了那些已與應用程式連結的程 式。此資訊也可使用下列 truss 指令收集。
備註 – 為了簡明起見,下列輸出經過刪略。
程式碼範例 2-3 確認動態載入應用程式
# truss -f -topen,open64 /usr/sbin/in.named
20357: open("/usr/lib/libresolv.so.2", O_RDONLY) = 3
20357: open("/usr/lib/libsocket.so.1", O_RDONLY) = 3
20357: open("/usr/lib/libnsl.so.1", O_RDONLY) = 3
20357: open("/usr/lib/libc.so.1", O_RDONLY) = 3
20357: open("/usr/lib/libdl.so.1", O_RDONLY) = 3
20357: open("/usr/lib/libmp.so.2", O_RDONLY) = 3
20357: open("/usr/lib/nss_files.so.1", O_RDONLY) = 4
20357: open("/usr/lib/nss_files.so.1", O_RDONLY) = 4
20357: open("/usr/lib/dns/dnssafe.so.1", O_RDONLY) = 4
20357: open("/usr/lib/dns/cylink.so.1", O_RDONLY) = 4
20357: open("/usr/lib/dns/sparcv9/cylink.so.1", O_RDONLY) = 4
此輸出版本含有程序識別碼,系統呼叫 (範例個案:open) 及它的引數以及系統呼叫 的回傳值。使用回傳值,很清楚的可以知道何時系統呼叫成功的找到及開啟共用程 式庫。
一旦已經知道共用程式庫的清單,使用下列指令來判定它們所屬的 Solaris 作業系統套 裝模組:
# grep “/usr/lib/dns/cylink.so.1” /var/sadm/install/contents
/usr/lib/dns/cylink.so.1 f none 0755 root bin 63532 24346 \
1018126408 SUNWcsl
20 Solaris Security Toolkit 4.2 管理指南 • 2005 7
結果輸出顯示此共用程式庫屬於 SUNWcsl (Core、Shared Libs) 套裝模組。此程序對 執行平台最小化時特別有用,原因是此程序協助確認支援應用程式或服務所需要的套 裝模組。
配置檔案
另一種方式來收集需求是透過配置檔案。由於配置檔案可以由重新命名或移除來停用服 務,此程序對強化系統有更直接的影響。 要取得更多資訊,請參閱 「Solaris Security Toolkit 4.2 Reference Manual」。
若要判定配置檔案是否正在被使用,請使用 truss 指令。
備註 – 為了簡明起見,下列輸出經過刪略。
程式碼範例 2-4 判定配置檔案是否使用中
# truss -f -topen,open64 /usr/sbin/in.named 2>&1 | \ grep -v "/usr/lib/.*.so.*"
20384: open("/etc/resolv.conf", O_RDONLY) = 3
20384: open("/dev/conslog", O_WRONLY) = 3
20384: open("/usr/share/lib/zoneinfo/US/Eastern", O_RDONLY) = 4
20384: open("/var/run/syslog_door", O_RDONLY) = 4
20384: open("/etc/nsswitch.conf", O_RDONLY) = 4
20384: open("/etc/services", O_RDONLY) = 4
20384: open("/etc/protocols", O_RDONLY) = 4
20384: open("/etc/named.conf", O_RDONLY) = 4
20384: open("named.ca", O_RDONLY) = 5
20384: open("named.local", O_RDONLY) = 5
20384: open("db.192.168.1", O_RDONLY) = 5
20384: open("db.internal.net", O_RDONLY) = 5
此範例中,DNS 服務使用配置檔案,例如 /etc/named.conf。如同上個範例,若服 務的回傳值為錯誤,表示可能有問題。小心的記錄強化之前及之後的結果可以協助加速 整個驗證程序。
2 章 系統安全化:套用方法 21
服務架構
此類別包括在其之上建立更大更複雜應用程式的架構或中介服務 (meta-services)。此類 別中發現的架構類型通常為:
命名服務,例如:Network Information Services (NIS)NIS+ Lightweight
Directory Access Protocol (LDAP)
驗證服務,例如:Kerberos LDAP
公用程式服務,如 Remote Procedure Call (RPC) 設備所使用的通訊埠對映器
不是都很清楚何時應用程式會依賴這些種類的服務。當配置應用程式需要特別的調整 時,例如加入至 Kerberos 範圍,相依性是已知的。但是,應用程式相依性並非永遠需 要附加的作業,而廠商可能並未記錄實際的相依性。
其中之一的範例是 RPC 通訊埠對映器。Solaris Security Toolkit 軟體中的 secure.driver 可停用 RPC 通訊埠對映器。此行動可能導致依賴此服務的其他服務 有不可預期的行為。根據過去的經驗,中斷服務、當機或故障會根據應用程式碼的好壞 來判定如何處理意外狀況。要判定應用程式是否使用 RPC 通訊埠對映器,請使用 rpcinfo 指令。例如:
程式碼範例 2-5 判定使用 RPC 的應用程式
# rpcinfo -p
100000 3 tcp 111 rpcbind
100000 4 udp 111 rpcbind
100000 2 udp 111 rpcbind
100024 1 udp 32777 status
100024 1 tcp 32772 status
100133 1 udp 32777
100133 1 tcp 32772
100021 1 udp 4045 nlockmgr
100021 2 udp 4045 nlockmgr
100021 3 udp 4045 nlockmgr
100021 4 udp 4045 nlockmgr
100021 1 tcp 4045 nlockmgr
服務欄位的資訊來自 /etc/rpc 檔案或配置的命名服務如 LDAP。
若檔案內沒有服務的項目,經常是協力廠商的產品,服務欄位可能是空的。這樣使得要 確認由其他應用程式註冊的應用程式更加困難。
22 Solaris Security Toolkit 4.2 管理指南 • 2005 7
例如,考慮 rusers 指令。此指令會依賴 RPC 通訊埠對映服務。若 RPC 通訊埠對映 器是執行中,rusers 指令看起來是當機。此程式最終會逾時,出現下列錯誤訊息:
# rusers -a localhost
localhost: RPC: Rpcbind failure
此問題會發生,因為程式不能與服務溝通。自 /etc/init.d/rpc 啟動 RPC 通訊埠對 映服務之後,程式馬上產生它的結果。
正如另外的範例,考慮 RPC 通訊埠對映服務執行中,而且 rusers 服務並未配置為執 行。這個狀況下,會產生完全不同的反應,相對的比較容易作驗證。
程式碼範例 2-6 驗證 rusers 服務
# rusers -a localhost
localhost: RPC: Program not registered
# grep rusers /etc/rpc
rusersd 100002 rusers
# rpcinfo -p | grep rusers
<No output generated>
rpcinfo 指令並未註冊 rusers 服務,假設該服務並配置為執行是安全的。此假設 藉由觀察 /etc/inet/inetd.conf 中的服務項目來驗證。
# grep rusers /etc/inet/inetd.conf
# rusersd/2-3 tli rpc/datagram_v,circuit_v wait root /usr/lib/netsvc/rusers/rpc.rusersd rpc.rusersd
服務列開頭的註解標記 (#) 指示 rusers 服務是停用的。要啟用此服務,去除此行的註 解標記並且送出一個 SIGHUP 訊號給 /usr/sbin/inetd 程式如下:
# pkill -HUP inetd
備註pkill 指令僅適用 Solaris 作業系統版本 7 10。對於其他版本,請使用 ps
kill 指令,依次為尋找及用訊號通知程序。
2 章 系統安全化:套用方法 23
另一個判定應用程式是否使用 RPC 設備的方法是使用先前描述的 ldd 指令。
程式碼範例 2-7 判定使用 RPC 的應用程式的替代方法
# ldd /usr/lib/netsvc/rusers/rpc.rusersd
libnsl.so.1 => /usr/lib/libnsl.so.1
librpcsvc.so.1 => /usr/lib/librpcsvc.so.1
libc.so.1 => /usr/lib/libc.so.1
libdl.so.1 => /usr/lib/libdl.so.1
libmp.so.2 => /usr/lib/libmp.so.2
/usr/platform/SUNW,Ultra-250/lib/libc_psr.so.1
librpcsvc.so.1 項目指示,跟隨檔案名稱,此項服務依賴 RPC 通訊埠對映服務。
除了 RPC 通訊埠對映器,應用程式可能依賴其他一般作業系統服務,如 FTPSNMP 或網路檔案系統 (NFS)。您可使用相似的技巧來為這些服務除錯,以及判定他們真的被 需要用來支援商業功能。有一個方法與使用 netstat 指令有關,如下:
# netstat -a | egrep "ESTABLISHED|TIME_WAIT"
此指令傳回一個最近使用的服務清單,例如:
2-1 列出最近使用的服務
localhost.32827 localhost.32828 49152 0 49152 0 ESTABLISHED
localhost.35044 localhost.32784 49152 0 49152 0 ESTABLISHED
localhost.32784 localhost.35044 49152 0 49152 0 ESTABLISHED
localhost.35047 localhost.35046 49152 0 49152 0 ESTABLISHED
localhost.35046 localhost.35047 49152 0 49152 0 ESTABLISHED
filefly.ssh 192.168.0.3.2969 17615 1 50320 0 ESTABLISHED
24 Solaris Security Toolkit 4.2 管理指南 • 2005 7
此範例中,很多服務都在使用中,但是不清楚哪一個服務或應用程式使用哪一個埠。此 資訊可藉由使用 pfiles(1) 指令 (Solaris 作業系統版本 89 10) 檢測程序而得知。 pfiles 指令為每個程序中所有開啟檔案報告資訊。
程式碼範例 2-8 判定服務及應用程式使用的埠
# for pid in `ps -aeo pid | grep -v PID`; do
> pfiles ${pid} | egrep "^${pid}:|sockname:"
> done
更有效及有效率來判定相依性的方法是使用列出開啟檔案 (lsof) 指令。
從下列下載 lsof 來源碼:
ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/
從下列下載 lsof 二進位碼:
http://www.sunfreeware.com
lsof 指令判定什麼程序使用什麼檔案及埠。例如,要判定上述範例中什麼程序使用埠
35047,使用下列指令。
程式碼範例 2-9 判定使用檔案及埠的程序
# ./lsof -i | grep 35047
ttsession 600 root 9u IPv4 0x3000b4d47e8 0t1 TCP localhost:35047->localhost:35046 (ESTABLISHED)
dtexec 5614 root 9u IPv4 0x3000b4d59e8 0t0 TCP localhost:35046->localhost:35047 (ESTABLISHED)
lsof 的輸出顯示埠 35047 正用於 dtexec ttsession 程序之間的通訊。
使用 lsof 程式,您可能可以更迅速的判定系統之間或應用程式之相依性,需要檔案系 統或網路使用率。幾乎所有本章內所提起的都可以使用 lsof 程式的不同選項來擷取。
備註 – 前面描述的判定相依性的方法可能無法找出很少使用的項目。除了使用這些方
法,檢閱 Sun 文件及廠商文件資料。
2 章 系統安全化:套用方法 25
開發及實作 Solaris Security Toolkit 設定檔
在您完成規劃及準備階段後,請開發及實作安全設定檔。安全設定檔包含相關配置、強 化以及安全驅動程式,例如,name-{config|hardening|secure}.driver,以及 所有相關驅動程式、程序檔,以及可以實作您站台特定安全策略的檔案。
自訂 Solaris Security Toolkit 軟體隨附的安全設定檔之一,或是開發您自己的安全設定 檔。每個機構的策略、標準以及應用程式需求皆有不同,雖然可能只有少許。
要自訂一個安全設定檔,請透過結束程序檔、稽核程序檔、環境變數、架構功能以及檔 案範例調整它的行動。
請參閱以下章節取得更多資訊:
要取得有關自訂軟體的重要導引,請參閱第 1 , 12 頁 「配置和自訂 Solaris
Security Toolkit 軟體」。
要取得安全性設定檔被建立的範例情境,請參閱第 7 , 95 頁 「建立安全性設定
檔」。
要取得有關自訂驅動程式的資訊,請參閱 「Solaris Security Toolkit 4.2 Reference
Manual」。
如有需要,請參閱 「Solaris Security Toolkit 4.2 Reference Manual 的其他章節、 取得程序檔、架構功能、環境變數以及檔案的資訊。二個您也許要自訂的關鍵環境 變數是 JASS_FILESJASS_SCRIPTS
要落實大部分平台之間的標準,但仍然提供平台特定的差異,使用一種稱為巢狀或階層 式安全性設定檔的技巧。要取得更多資訊,請參閱 「Solaris Security Toolkit 4.2 Reference Manual」。使用您機構的策略、標準及需求比較結果安全性設定檔,以確保 變更不是因不慎或錯誤而造成。
安裝軟體
Solaris Security Toolkit 軟體的安裝對於已部署系統或要被安裝的新系統而言是相同 的。要取得詳細的指示,請參閱第 3 章。
對於已部署系統,一些特殊狀況會使程序簡單及迅速。這些狀況並不注重強化程序,但 是注重安裝前及安裝後的工作。
26 Solaris Security Toolkit 4.2 管理指南 • 2005 7
執行安裝前作業
在強化已部署的系統前,請考慮及計劃兩個重要作業:
備份驗證
這些作業協助判定已部署系統的狀態以及在強化系統之前處理任何潛在的配置問題。
備份資料
此作業著重於偶發性計畫。萬一發生問題時,必須要確保系統配置及資料歸檔於某種形 式。您必須
備份系統確認可讀取備份媒體驗證內容可復原
對系統作任何重大改變之前進行這些步驟。
驗證系統穩定性
驗證作業與備份作業的重要性相同。驗證作業確保在實作任何配置變更 (例如強化程序 所作的變更) 前,系統處於穩定及工作狀態。驗證程序有:
重新開機成功測試任何應用程式或服務
期望一個完善定義的測試及接受計畫,但不一定有合適的計劃。如果是這種情況,根據 系統的情況來作測試。事實上,此項努力的目標是確保執行中的配置與儲存的配置相符 合。
當系統開機或應用程式啟動時,檢視任何顯示的錯誤訊息或警告。若您無法修正錯誤, 記錄他們。如此強化期間它們不會規為問題的潛在原因。檢查記錄檔時,確定要納入系 統、服務、以及應用程式記錄,如:
/var/adm/messages/var/adm/sulog/var/log/syslog/var/cron/log
當您可以重新啟動系統而沒有錯誤或警告訊息時,此項作業已經完成;所有已知的皆已 記載。系統應重新啟動至已知及穩定狀態。如果,驗證期間,您發現執行中與儲存的系 統配置不相同,重新評估您機構的變更控制策略以及程序來確認導致不同狀況的差異:
2 章 系統安全化:套用方法 27
執行安裝後作業
安裝後作業是安裝前工作的延伸。目的是確保強化程序並導致系統或應用程式的任 何新錯誤。此項作業主要由檢閱系統及應用程式記錄檔而達成。強化並重新開機之後 建立的記錄檔應當與強化系統之前收集的記錄檔相似。某些狀況下,應該有比較少的 訊息 (因為啟動的服務比較少)。最重要的是不應該有新的錯誤或警告訊息。
除了檢閱記錄檔,也請測試功能性 (因為有些應用程式可能失敗但未寫入記錄檔)。參閱 下列章節取得詳細驗證資訊。
驗證應用程式及服務功能性
此系統安全化程序中最後的作業包括驗證系統提供的應用程式及服務可以正確的執行功 能。此項工作也會驗證安全設定檔成功的實作安全設定檔的需求。重新啟動強化後的平 台之後完整的執行此項工作,確保偵測到任何不正常或問題後即刻被修正。此項作業分 為兩項子作業:驗證安全設定檔安裝及驗證應用程式及服務的功能性。
驗證安全性設定檔安裝
要驗證 Solaris Security Toolkit 軟體已正確安裝安全性設定檔且無錯誤,請檢閱安裝記 錄檔 jass-install-log.txt。此檔案安裝在 /var/opt/SUWWjass/runs,對於 每個強化或稽核執行來說為唯一的目錄底下 (執行的起始時間)。
備註 – 請參閱此記錄檔以瞭解 Solaris Security Toolkit 軟體對系統作了什麼。每當系
統執行時,會根據執行的開始時間將新的記錄檔儲存於目錄之中。
除了驗證設定檔已被安裝,也請評估系統的安全性配置。執行手動檢視或使用工具來自 動化程序。
驗證應用程式及服務功能性
要驗證程序應用程式及服務,請執行一個完善定義的測試及接受計畫。此計畫使用系統 或應用程式的不同元件來判定它們是否處於適用及工作順序中。若沒有適用的計畫,根 據系統使用的方式作合理的測試。此努力的目的為確保強化程序並未影響應用程式或服 務執行應有功能的能力。
28 Solaris Security Toolkit 4.2 管理指南 • 2005 7
當強化系統之後,若您發現應用程式或服務有異常,檢閱應用程式記錄檔判定問題所 在。很多狀況下,您可使用 truss 指令來判定應用程式自何處開始發生困難。了解之 後,您可將問題做為目標並回溯至 Solaris Security Toolkit 軟體所作的變更。
維護系統安全性
很多機構會發生的錯誤是只在安裝時注重安全性,之後就很少或不再關切此問題。維護 安全性是一個持續的程序。系統安全性必須定期的檢閱及重新查看。
維護一個安全的系統需要心生警惕,原因是任何系統的安全配置經過一段時間之後開放 度會大增。例如,系統的弱點已被人知道。
下列基本指示提供維護系統安全的介紹:
確定安裝之前及之後都要檢閱系統的安全狀態。而且,重要的是要使用最新的修補
程式來更新系統。
Solaris 作業系統修補程式可能會安裝其他軟體套裝模組做為安裝的一部分,及可能 覆寫系統的配置檔案。Solaris Security Toolkit 軟體可以協助您套用修補程式,這是 因為它可以支援系統重複的執行,因此安裝修補程式之後可以保護系統。每次安裝 修補程式後要使用適用的驅動程式來執行安全性軟體,確保您的配置與您定義的安 全性策略保持一致。除此之外,進行系統的手動檢閱,因為 Solaris Security Toolkit 軟體所使用的版本可能並支援修補程式新增的功能。
以進行中方式監控系統,確保沒有發生未經授權的運作方式。檢閱系統帳戶、密碼
以及存取模式,它們會提供大量有關系統動態的資訊。
部署及維護一個中央的 syslog 儲存庫來收集及剖析 syslog 訊息。您可藉由聚集
及檢閱記錄檔來取得重要的資訊。
建立一個容易瞭解的弱點及稽核策略來監控及維護系統配置。此項需求對於長時間
下維護系統於安全配置的情況下是非常重要的。
定期使用最新版本的 Solaris Security Toolkit 軟體來更新您的系統。
Solaris Security Toolkit 軟體包含做為起始點使用的預設安全性設定檔。
2 章 系統安全化:套用方法 29
30 Solaris Security Toolkit 4.2 管理指南 • 2005 7
3
升級、安裝及執行安全性軟體
本章提供下載、升級或安裝及執行 Solaris Security Toolkit 軟體的指示以及其他安全性 相關軟體。包含將您的環境配置為獨立或 JumpStart 模式以及取得支援的指示。
遵循本章提供的指示及程序來升級或安裝、配置以及執行軟體。這些指示包括下載其他 的安全性軟體、有用的範例以及導引。
雖然 Solaris Security Toolkit 軟體是獨立的產品,但是當它與其他下載的安全性軟體共 同使用時最為有效。此軟體包括來自 SunSolve OnLine 最新的 Recommended and Security Patch Cluster、可緊化 Solaris 作業系統及協力廠商軟體權限之權限及所有權 修正軟體,及可驗證 Sun 檔案及執行檔的完整性的驗證二進位碼。Solaris 作業系統發 行版本的 Secure Shell 軟體並未內含。
本章包含以下作業:
31 頁 「執行規劃與安裝前作業」 32 頁 「軟體需求」 32 頁 「判定使用何種模式」 33 頁 「升級程序」 35 頁 「下載安全性軟體」 42 頁 「自訂安全設定檔」 42 頁 「安裝及執行軟體」 54 頁 「驗證系統修改」
執行規劃與安裝前作業
正確的規劃是成功使用 Solaris Security Toolkit 軟體以鞏固系統安全性的關鍵。安裝軟 體之前,請參閱第 2 章取得詳細規劃資訊。
若您要安裝軟體於已部署的系統,請參閱第 27 頁 「執行安裝前作業」,取得在安裝軟 體於已部署系統之安裝前作業的資訊。
31
軟體需求
Solaris Security Toolkit 4.2 軟體需要 SUNWloc 套裝模組。若沒有此套裝模組,就會導 致 Solaris Security Toolkit 的執行失敗。
請參閱第 xxi 頁 「支援的 Solaris 作業系統版本」 以得知 Solaris 作業系統支援版本的 相關資訊。
請參閱第 xxi 頁 「支援的 SMS 版本」 以得知 System Management Services (SMS) 軟 體支援版本的相關資訊。
判定使用何種模式
作業系統安裝期間或之後要及時強化系統,限制系統處於可能暴露在攻擊的不安全狀態 時間。使用 Solaris Security Toolkit 軟體保護系統之前,請配置 Solaris Security
Toolkit 軟體以便在您的環境正確執行。
Solaris Security Toolkit 軟體具有模組化架構。若您沒有使用 JumpStart 產品,Solaris Security Toolkit 軟體架構的彈性可以有效的準備您之後使用 JumpStart。若您使用 JumpStart,您可自 Solaris Security Toolkit 軟體可以合至現存 JumpStart 架構的能力
中獲益。
下面章節說明獨立模式及 JumpStart 模式。
獨立模式
Solaris Security Toolkit 軟體在獨立模式下,直接自 Solaris 作業系統 shell 提示符號後 執行。此模式下,您可於需要更改或更新安全性的系統上使用 Solaris Security Toolkit 軟體,但是不可自原點開始重新安裝作業系統。但是如果可能,在進行安全化之前,作 業系統應改自原點開始重新安裝。
當安裝修補程式或協力廠商軟體之後做系統強化,獨立模式特別有用。您可在系統上執 行多次 Solaris Security Toolkit 軟體,不會有不良的效果。修補程式可能覆寫或者更改 那些 Solaris Security Toolkit 更改過的檔案;藉由執行 Solaris Security Toolkit 軟體, 任何因安裝修補程式而取消的安全性更改可以重新被使用。
備註 – 在生產環境中,於真實環境安裝修補程式之前,請於測試及開發環境呈現修補
程式。
32 Solaris Security Toolkit 4.2 管理指南 • 2005 7
獨立模式是用來儘快強化一個已部署的系統的最好選項之一。除了第 35 頁 「下載安全 性軟體」中提供的下載及安裝指示外,將 Solaris Security Toolkit 軟體整合至沒有
JumpStart 的架構並不需要特別的步驟。
JumpStart 模式
JumpStart 技術是以網路為基礎的 Solaris 作業系統安裝機制,可以在安裝期間執行 Security Toolkit 程序檔。本書假設讀者熟悉 JumpStart 技術,而且具備既存的 Jumpstart 環境可供使用。要取得有關 JumpStart 技術的資訊,請參閱 Sun BluePrints 文件 「JumpStart Technology: Effective Use in the Solaris Operating Environment」。
Solaris Security Toolkit 4.2 套裝模組是可重新定位的,所以只要使用正確的選項至 pkgadd 指令中,您可以將其安裝在任一個目錄底下。JASS_HOME_DIR 成為 JumpStart 伺服器的基底目錄。
整合 Solaris Security Toolkit 軟體至 JumpStart 架構只需要少數步驟。請參閱第 5 章取 得如何配置 JumpStart 伺服器的指示。
升級程序
本節包含如何將您的系統從 Solaris Security Toolkit 4.0 和 4.1 軟體升級至 Solaris Security Toolkit 4.2 軟體的資訊 (可升級或不升級您的 Solaris 作業系統)。此系統在您 的 Solaris 作業系統上使用 Solaris Security Toolkit 軟體加以強化。不論是從版本 4.0 或 4.1 升級,其程序都相同。請務必遵循此程序,因為其可避免覆寫所有先前的自訂。
注意只有一種 Solaris Security Toolkit 版本可在任何時候安裝。
Solaris Security Toolkit 4.2 軟體提供新的強化給 pkgrm 指令。按照此發行版本,在 pkgrm 指令的第一個步驟會檢查發行軟體中所有檔案的完整性。如果有任何不同的
檔案,pkgrm 指令與錯誤訊息會告知系統管理員,將正確檔案放置到定位或移除修 改過的檔案。
驅動程式位於安裝 Solaris Security Toolkit 的 Drivers 子目錄中。使用者寫入驅動程 式也在該子目錄中。移除 SUNWjasspkgrm 指令時,其會移除 Solaris Security Toolkit 所提供的驅動程式和使用者修改的驅動程式,但是會留下使用者所增加的任何 自訂驅動程式,這些自訂驅動程式應和 Solaris Security Toolkit 所提供的驅動程式之名 稱不同。
3 章 升級、安裝及執行安全性軟體 33
注意 – 如果驅動程式已修改,其必須在升級前先儲存。切勿修改 Solaris Security
Toolkit 軟體所發行的原始檔案。替代修改驅動程式檔案的動作,您可以複製驅動程式 檔案到新的檔案,然後修改新的檔案。
升級 Solaris Security Toolkit 軟體與 Solaris 作業
系統
1. 請按照最適合您系統的升級動作,也就是將其備份或使用 Solaris 升級。
2. 解除安裝先前的 Solaris Security Toolkit 軟體版本。
3. 安裝 Solaris Security Toolkit 4.2 軟體。
4. 在稽核模式下執行 Solaris Security Toolkit 4.2 軟體,而不是使用先前的 Solaris Security Toolkit 驅動程式及使用者特定驅動程式來升級系統。
使用者特定驅動程式必須在 Drivers 目錄中。如果已在該目錄中,則可指定給 jass-execute 或強化執行。
5. 請執行下列其中一項:
a. 如果沒有錯誤,請至步驟 6
b. 如果在執行時產生錯誤 (例如:未安裝執行控制程序檔被修改,或服務應使用 FMRI
控制),請先修改錯誤,然後重複步驟 4 5 直到沒有錯誤產生為止。
6. secure.driver 比較自訂的驅動程式,以決定是否要增加新的結束或稽核程序檔
到自訂的驅動程式中。
7. 請執行下列其中一項:
a. 如果沒有程序檔遺失,請至步驟 8
b. 如果有任何程序檔遺失,請增加遺失的程序檔,然後重複步驟 4、5、6 7,直到包
含全部需要的程序檔。
8. 在強化模式下執行 Solaris Security Toolkit 4.2
9. 在稽核模式下執行 Solaris Security Toolkit 4.2,並確定沒有任何錯誤。
10. 重新檢視系統的安全配置和狀態,以確定是否符合安全需求。
11. 請執行下列其中一項:
a. 如果系統符合需求,請至步驟 12
b. 如果系統不符合需求,請升級使用的驅動程式,並回到步驟 8
34 Solaris Security Toolkit 4.2 管理指南 • 2005 7
12. 完整測試系統以確保系統提供需求的網路服務,而且所有應用程式都可正常運作。
13. 如果遇到任何錯誤,請升級使用的驅動程式,並回到步驟 8
這樣即完成升級。
僅升級 Solaris Security Toolkit 軟體
1. 解除安裝先前的 Solaris Security Toolkit 軟體版本。
2. 安裝 Solaris Security Toolkit 4.2 軟體。
3. 請至第 34 頁「升級 Solaris Security Toolkit 軟體與 Solaris 作業系統」 的步驟 4
僅升級 Solaris 作業系統
如果您只要升級 Solaris 作業系統,而且已經安裝 Solaris Security Toolkit 4.2 軟體 (例 如:從 Solaris 8 作業系統升級至 Solaris 10 作業系統),您不需要解除安裝 Solaris
Security Toolkit 4.2 軟體。在您完成 Solaris 作業系統升級後,請在稽核模式下執行 Solaris Security Toolkit 4.2,然後重新檢閱系統安全配置以確保沒有任何錯誤。
下載安全性軟體
強化系統的第一階段為下載其他安全性套裝模組至您要保護的系統。本節涵蓋以下作 業:
36 頁 「下載 Solaris Security Toolkit 軟體」 37 頁 「下載 Recommended Patch Cluster 軟體」 38 頁 「下載 FixModes 軟體」 39 頁 「下載 OpenSSH 軟體」 40 頁 「下載 MD5 軟體」
備註本節說明的軟體中,Solaris Security Toolkit 軟體、Recommended and
Security Patch Cluster、FixModes
的。您可使用商業版本的 Secure Shell 替代 OpenSSH,不同廠商的軟體皆可適用。安 裝及使用 Secure Shell 產品至所有的系統。若使用 Solaris 9 10 作業系統,請使用內 含的 Secure Shell (SSH) 版本。如果使用 Solaris 10 作業系統,請使用包含在 MD5 總 和檢查中的 /usr/bin/digest 指令。
message-digest 5 (MD5) algorithm 軟體都是必要
3 章 升級、安裝及執行安全性軟體 35
下載 Solaris Security Toolkit 軟體
Solaris Security Toolkit 軟體是以 Solaris 作業系統套裝模組格式發行。首先下載 Solaris Security Toolkit 軟體。然後,如果您使用獨立模式 Solaris Security Toolkit
體,請安裝至伺服器上;或者,如果您使用 JumpStart 模式,請安裝至 JumpStart 伺服 器上。
備註 – 下列指示使用的檔案名稱與版本號碼無關。請務必下載網站上的最新版本。
在本手冊的其他部分中,環境變數 JASS_HOME_DIR 指的是 Solaris Security Toolkit 軟 體的根目錄,其為 /opt/SUNWjass 預設。
下載 pkg 版本
1. 下載軟體發行檔案 (SUNWjass-n.n.pkg.tar.Z)
此原始檔位於:
http://www.sun.com/security/jass
備註 – 若您下載軟體時遇到困難,請使用瀏覽器的 [另存新檔] 選項。
2. 使用 uncompress 指令,將軟體發行檔案解壓縮至伺服器上的目錄:
# uncompress SUNWjass-n.n.pkg.tar.Z
3. 使用 tar 指令將軟體發行的套裝模組解壓縮:
# tar -xvf SUNWjass-n.n.pkg.tar
4. 使用 pkgadd 指令,安裝軟體發行檔案至伺服器上的目錄,如下所示:
# pkgadd -d SUNWjass-n.n.pkg SUNWjass
其中 n.n 為您下載時的最新版本。
執行此指令會在 /opt 中建立 SUNWjass 目錄。此子目錄包含所有 Solaris Security Toolkit 目錄及相關檔案。
36 Solaris Security Toolkit 4.2 管理指南 • 2005 7
下載 Recommended Patch Cluster 軟體
Sun 發行的修補程式提供 Solaris 作業系統修補效能、穩定性、功能性以及安全性。對 於系統安全性而言,安裝最新的修補程式叢集非常重要。要確保安裝於您系統上的是 Solaris 作業系統 Recommended and Security Patch Cluster 最新版本,本節說明如何
下載最新修補程式叢集。
備註 – 安裝修補程式之前,在未上線系統或維護排程期間作評估及測試。
下載 Recommended Patch Cluster 軟體
安裝修補程式叢集之前,檢閱個別修補程式 README 檔案及其他提供的資訊。資訊通常 包含安裝修補程式叢集之前需要了解的建議以及有用的資訊。
1. SunSolve OnLine 網站下載最新修補程式叢集,位於:
http://sunsolve.sun.com
2. 按一下右邊導覽列的 「Patches」連結。
3. 按下 「Click the Recommended Patch Clusters」連結。
4. 選擇 「Recommended Solaris Patch Clusters」方塊內適當的 Solaris 作業系統版本。
本範例中,選擇 Solaris 10 作業系統。
5. 選擇最佳下載選項, HTTP 或是 FTP 的單選按鈕,然後按 「Go」。
瀏覽器視窗顯示一個 「Save As」對話方塊。
6. 本地儲存檔案。
7. 安全地移動檔案至強化的系統。
使用安全的複製指令,scp(1),或是其他提供安全檔案傳輸的方法。
使用 scp 指令如下:
# scp 10_Recommended.zip target01:
3 章 升級、安裝及執行安全性軟體 37
8. 移動檔案至 /opt/SUNWjass/Patches 目錄,然後解壓縮。
例如:
程式碼範例 3-1 移動修補程式至 /opt/SUNWjass/Patches 目錄
# cd /opt/SUNWjass/Patches # mv /directory in which file was saved/10_Recommended.zip . # unzip 10_Recommended.zip Archive: 10_Recommended.zip creating: 10_Recommended/ inflating: 10_Recommended/CLUSTER_README inflating: 10_Recommended/copyright inflating: 10_Recommended/install_cluster [. . .]
當您下載其他安全性套裝模組以及執行 Solaris Security Toolkit 軟體之後,修補程式會 自動安裝。
備註 – 若您未將 Recommended and Security Patch Cluster 軟體放置於
/opt/SUNWjass/Patches 目錄,當您執行 Solaris Security Toolkit 軟體時會出現警 告訊息。若無修補程式叢集適用,忽略此訊息是安全的。此狀況通常發生在新發行版本 的作業系統。
下載 FixModes 軟體
FixModes 是可緊化預設 Solaris 作業系統目錄及檔案權限的套裝模組。緊化這些權限 可以大幅改善整體的安全性。更具限制性的權限使得惡意使用者要取得系統權限變為更 加困難。
備註Solaris 10 作業系統發行版本對那些曾被 FixModes 軟體更改過的物件作了顯著
修改,來改進預設權限,所以已不需要該軟體。因此,無法在執行 Solaris 10 作業系統 的系統上使用 install-fixmodes 結束與稽核程序檔。
下載 FixModes 軟體
1. 自下列網址下載 FixModes 預先編譯之二進位碼:
http://www.sun.com/security/jass
FixModes 軟體以 Solaris 作業系統系統之預先編譯及壓縮套裝模組版本檔案格式做為 發行。檔案名稱為 SUNBEfixm.pkg.Z
38 Solaris Security Toolkit 4.2 管理指南 • 2005 7
2. 使用 scp 指令或其他安全傳送檔案的方法,安全地移動檔案至強化的系統。
使用 scp 指令如下:
# scp SUNBEfixm.pkg.Z target01:
3. 透過以下指令,儲存 /opt/SUNWjass/Packages 中的 Solaris Security Toolkit Packages 目錄的 SUNBEfixm.pkg.Z 檔案:
# uncompress SUNBEfixm.pkg.Z # mv SUNBEfixm.pkg /opt/SUNWjass/Packages/
接下來,當下載完所有其他安全性套裝模組後, FixModes 軟體會自動安裝並且執行 Solaris Security Toolkit 軟體。
下載 OpenSSH 軟體
任何安全環境下,要保護使用者互動階段作業,使用加密結合增強驗證是必要的。至 少,網路存取必須是加密的。
最通常被用來做為加密工具的是 Secure Shell 軟體,不論是與 Solaris 作業系統搭售的 版本、協力廠商的商業版本或是免費軟體版本皆可。要實作所有由 Solaris Security Toolkit 軟體所作的安全性更改,您必須納入一個 Secure Shell 軟體產品。
備註如果您正在使用 Solaris 9 10 作業系統,請使用作業系統所提供的 Secure
Shell 版本。此版本的 Secure Shell 可與其他 Solaris 作業系統安全功能,如 Basic Security Module (BSM) 以及 Sun 支援中心的支援作整合。
執行 Solaris Security Toolkit 軟體會停用所有未加密的使用者互動服務及系統的常駐程 式,特別是如 in.telnetd in.ftpd、 in.rshdin.rlogind 等常駐程式。
Secure Shell 可讓您如使用 Telne t FTP 一般地存取系統。
下載 OpenSSH 軟體
備註 – 若伺服器執行 Solaris 9 10 作業系統,您可使用搭售的 Secure Shell 軟體,跳
過本節所述的 OpenSSH 安裝步驟。無法在執行 Solaris 10 作業系統的系統上使用 install-ssh 結束與稽核程序檔。
3 章 升級、安裝及執行安全性軟體 39
請取得下列 Sun BluePrints OnLine 文章或 Sun BluePrints 書籍,並且使用指示以下
載軟體:
一篇標題為 「Building and Deploying OpenSSH on the Solaris Operating
Environment」的 Sun BluePrints OnLine 文摘,說明了如何編譯及部署 OpenSSH,可在下列網站中找到:
http://www.sun.com/blueprints
Sun BluePrints 出版之 「Secure Shell in the Enterprise」,應可於書店找到。
下載完所有其他安全性套裝模組及執行 Solaris Security Toolkit 軟體後,OpenSSH 體會自動安裝。
注意不要在需強化的系統上編譯 OpenSSH 而且不要安裝編譯器至需強化的系統。
使用另一個 Solaris 作業系統執行相同的 Solaris 作業系統版本、架構和模式 (例如:
Solaris 8 作業系統、Sun4U™ (sun4u) 64 位元) - 來編譯 OpenSSH。若您使用 SSH 的商業版本,則不需要編譯。此目的為限制編譯器為潛在入侵者的可能性。但是,
限制系統於本地安裝編譯器並不能保證系統無法遭惡意入侵,原因是仍要安裝預先編譯 的工具。
下載 MD5 軟體
MD5 軟體在強化系統上產生 MD5 數位指紋。產生數位指紋後,與 Sun 所發表之正 確指紋作比較,可以偵測被更改過的系統二進位程式碼或未被授權使用者的洛伊木馬 入侵 (安全下內藏危險程式)。藉由更改系統二進位碼,入侵者開了系統的後門可作存 取、隱瞞入侵者的存在並且導致系統的不穩定。
備註 – 若伺服器執行 Solaris 10 作業系統,您可使用隨附的 /usr/bin/digest
令,跳過本節所述的 MD5 安裝步驟。
下載 MD5 軟體
備註Solaris Security Toolkit 不會安裝也不會稽核 MD5 軟體的安裝,就如下列所述
Solaris 10 系統中之程序。執行 Solaris 10 作業系統的系統不需要 MD5 軟體,因為 digest(1M) 指令已包含 MD5 的功能。
1. 從以下網站下載 MD5 二進位碼:
http://www.sun.com/security/jass
MD5 程式以壓縮套裝模組版本檔案做為發行。
40 Solaris Security Toolkit 4.2 管理指南 • 2005 7
2. 使用 scp 指令強化,或使用提供安全檔案傳輸的另一種方法,將檔案 SUNBEmd5.pkg.Z 安全地移動到系統。
使用 scp 指令如下:
# scp SUNBEmd5.pkg.Z target01:
3. 移動檔案至 /opt/SUNWjass/Packages 內的 Solaris Security Toolkit 之 Packages 目錄內。使用如下的指令:
# uncompress SUNBEmd5.pkg.Z # mv SUNBEmd5.pkg /opt/SUNWjass/Packages/
MD5 軟體儲存到 /opt/SUNWjass/Packages 目錄之後,執行 Solaris Security Toolkit 軟體時就會安裝該軟體。
MD5 二進位碼已安裝完畢,您可透過 Solaris 指紋資料庫,使用它來確認系統執行 檔的完整性。Sun BluePrints OnLine 文摘,標題為 「The Solaris Fingerprint
Database A Security Tool for Solaris Software and Files」中可取得更多有關 Solaris 指紋資料庫的資訊。
4. (選擇使用) Sun BluePrint 網站下載及安裝 Solaris Fingerprint Database Companion 以及 Solaris Fingerprint Database Sidekick 軟體:
http://www.sun.com/blueprints/tools
備註 – 雖然步驟 4 為選擇性,但是在所有作業系統中使用是有其益處的。
安裝及使用 MD5 軟體的選用工具。這些工具簡化了驗證系統二進位碼與 MD5 檢查總 和資料庫作對照的程序。經常使用這些工具來驗證安全系統上,Solaris 作業系統二進 位碼及檔案的完整性。
如何下載這些工具及指示可以在標題為 「The Solaris Fingerprint Database A Security Tool for Solaris Software and Files」的 Sun BluePrints OnLine 文摘中找到。
應該驗證下載的安全性工具的完整性。安裝及執行 Solaris Security Toolkit 軟體及其他
安全性軟體之前,請使用 MD5 總和檢查來驗證完整性。Solaris Security Toolkit 的下
載頁上,可以取得 MD5 總和檢查。
3 章 升級、安裝及執行安全性軟體 41
自訂安全設定檔
Solaris Security Toolkit 軟體內含,如驅動程式,很多不同的安全設定檔範例。 這些 驅動程式所使用的安全設定檔將停用需要的服務,並啟用 secure.driver 停用的 安全功能選項。如前章所述,預設安全設定檔及這些驅動程式的更改可能適合您的 系統。
執行 Solaris Security Toolkit 軟體之前,為您的環境檢閱及自訂,或是建立一個新的預 設安全設定檔。「Solaris Security Toolkit 4.2 Reference Manual」 中提供了自訂安全設 定檔的技巧及導引。
安裝及執行軟體
在執行 Solaris Security Toolkit 軟體之前完成下列準備作業是重要的。當您執行 Solaris Security Toolkit 軟體時,大部分強化動作是自動完成的。
將 Solaris Security Toolkit 軟體及其他安全性軟體下載至您要強化的系統或是
JumpStart 伺服器上。請參閱第 35 頁 「下載安全性軟體」。
將您的系統配置為獨立模式或是 JumpStart 模式。請參閱第 32 頁 「判定使用何種模
式」。
為您的環境自訂 Solaris Security Toolkit 軟體 (如果需要)
安裝及執行 Solaris Security Toolkit 軟體及其他安全性軟體之前,透過使用 MD5
和檢查來驗證完整性。
您可自 JumpStart 伺服器或指令行執行 Solaris Security Toolkit 軟體。
對於指令行選項及執行軟體的其他資訊,請參閱下列章節:
42 頁 「在獨立模式下執行軟體」 53 頁「在 JumpStart 模式下執行軟體」
在獨立模式下執行軟體
程式碼範例 3-2 顯示獨立模式指令行用法範例。
程式碼範例 3-2 獨立模式指令行用法範例
# ./jass-execute -h
usage:
42 Solaris Security Toolkit 4.2 管理指南 • 2005 年 7
程式碼範例 3-2 獨立模式指令行用法範例 (續)
To apply this Toolkit to a system, using the syntax:
jass-execute [-r root_directory -p os_version ]
[ -q | -o output_file ] [ -m e-mail_address ] [ -V [3|4] ] [ -d ] driver
To undo a previous application of the Toolkit from a system:
jass-execute -u [ -b | -f | -k ] [ -q | -o output_file ]
[ -m e-mail_address ] [ -V [3|4] ]
To audit a system against a pre-defined profile:
jass-execute -a driver [ -V [0-4] ] [ -q | -o output_file ]
[ -m e-mail_address ]
To remove saved files from a previous run of the Toolkit:
jass-execute -c [ -q | -o output_file ]
[ -m e-mail_address ] [ -V [3|4] ]
To display the history of Toolkit applications on a system:
jass-execute -H
To display the last application of the Toolkit on a system:
jass-execute -l
To display this help message:
jass-execute -h jass-execute -?
To display version information for this program:
jass-execute -v
#
3-1 列出指令行選項並逐一說明。
3-1 使用 jass-execute 的指令行選項
選項 說明
-a driver
-b
-c
判定系統是否與安全設定檔相符。 請勿使用 -b、-k-f-c、-d、-h、-H、-l、-p、-r 或 -u 選項。
備份自強化運行之後所有曾遭手動更改的檔案,重新回復系統至原來 的狀態。
僅使用 -u 選項。
指定清除選項。從先前執行的 Solaris Security Toolkit 移除已儲存的 檔案。
3 章 升級、安裝及執行安全性軟體 43
3-1 使用 jass-execute 的指令行選項 (續)
選項 說明
-d driver
指定在獨立模式下執行驅動程式。
請勿使用 -a、-b、-c、-f、-h、-H、-k -u 選項。
-f
強化運行期間逆轉更改;不詢問您有關異常狀況,即使在強化運行之 後檔案曾遭手動更改。
使用 -u 選項。
-H
-h |-?
在系統上顯示 Solaris Security Toolkit 軟體的歷程記錄。
顯示 jass-execute 說明訊息,提供可用選項的簡介。 單獨使用。忽略 -h|-? 以外的任何特定選項。
-k
保留所有在強化運行之後您所作的手動更改檔案。
使用 -u 選項。
-l
-m e-mail_address
-o output_file
-p os_version
在安裝 Solaris Security Toolkit 系統上顯示最後一個應用程式。
為內部支援指定電子郵件位址。
指定完整的路徑給輸出檔案,以及輸出檔案。
指定 Solaris 作業系統版本。格式與 uname ñr 相同。
務必使用 -r root_directory 選項。
-q
特定無訊息模式。執行指令時不會顯示訊息。輸出會儲存在 JASS_REPOSITORY/
root_directory
-r
指定 jass-execute 執行期間使用的根目錄。此根目錄為/,且被 Solaris Security Toolkit 的環境變數 JASS_ROOT_DIR 定義。要安全
化的 Solaris 作業系統可透過 / 取得。例如,一個單獨的作業系統目 錄要安全化,暫時掛載至/mnt,然後使用-r 選項來指定 /mnt
務必使用 -p os_version 選項。
-u
互動提示詢問您意外發生要採取何種行動時,執行還原選項。
請勿使用 -a、-c、-d、-h、-l -p -r -H 選項。
-V verbosity_level
指定稽核運行的詳細程度。其中有五種等級 (0-4)
0 一行表示通過或失敗。
1 對於每個程序檔而言,一行會表示通過或失
敗,而所有程序檔行下有一個總和分數行。
2 對於每個程序檔,提供所有檢查的結果。
3 多行提供全部輸出,包含標題及標頭訊息。此
為預設。
4 多行 ( 等級 3 的所有資料 ) 加上由
logDebug 記錄函數產生的所有項目。此等
級作除錯之用。
-v
顯示此程式的版本資訊。
44 Solaris Security Toolkit 4.2 管理指南 • 2005 7
要取得獨立模式下執行 jass-execute 指令及其可用選項的詳細資訊,請參閱下面章 節:
47 頁 「稽核選項」 47 頁 「清除選項」 48 頁 「顯示說明選項」 49 頁 「驅動程式選項」 50 頁 「電子郵件通知選項」 50 頁 「執行歷程選項」 51 頁 「最近執行的選項」 51 頁 「輸出檔案選項」 52 頁 「無訊息輸出選項」 52 頁 「根目錄選項」 52 頁 「還原選項」
若要取得適用驅動程式的完整清單,請參閱第 5 頁「Drivers 目錄」。新版軟體可能包 含更多驅動程式。
3 章 升級、安裝及執行安全性軟體 45
在獨立模式下執行軟體
1. 執行 secure.driver (或者產品專用程序檔,例如: sunfire_15k_sc-secure.driver) 如下:
程式碼範例 3-3 在獨立模式下執行軟體
# ./jass-execute -d secure.driver
[NOTE] The following prompt can be disabled by setting JASS_NOVICE_USER to 0. [WARN] Depending on how the Solaris Security Toolkit is configured, it is both possible and likely that by default all remote shell and file transfer access to this system will be disabled upon reboot effectively locking out any user without console access to the system.
Are you sure that you want to continue? (YES/NO) [NO]
y
[NOTE] Executing driver, secure.driver
=============================================================== secure.driver:Driver started. ===============================================================
=============================================================== Solaris Security Toolkit Version: 4.2.0 Node name: ufudu Zone name: global Host ID: 8085816e Host address: 10.8.31.115 MAC address: 8:0:20:85:81:6e OS version: 5.10 Date: Tue Jul 5 16:28:24 EST 2005 =============================================================== [...]
若要取得適用驅動程式的完整清單,請參閱第 5 頁「Drivers 目錄」。新版軟體可能包 含更多驅動程式。
2. 執行 Solaris Security Toolkit 軟體之後,請重新啟動系統使變更生效。
強化期間,用戶端的配置作了不同的修改。這些更改可能包括伺服器停用起始程序檔, 服務的停用選項,以及透過修補程式安裝新二進位碼或程式庫。 直至用戶端重新啟動, 這些修改才會生效。
3. 重新啟動系統之後,確認更改的正確性及完整性。
請參閱第 54 頁 「驗證系統修改」。
46 Solaris Security Toolkit 4.2 管理指南 • 2005 7
4. 若發生任何錯誤,處理錯誤之後重新在獨立模式下執行 Solaris Security Toolkit 軟 體。
稽核選項
透過 -a 選項,Solaris Security Toolkit 可執行稽核,來判定系統是否與安全設定檔相 符。稽核不僅驗證更改過的系統檔案是否仍然使用中,還要確認已經遭停用的程序是否 仍然執行或者已移除的套裝模組是否被重新安裝。 要取得更多此項功能的資訊,請參閱 6 章。
對照安全性設定檔稽核系統的指令行規定用法:
# jass-execute -a driver [ -V [0-4] ] [ -q | -o output-file ] [ -m email-address ]
清除選項
-c 選項會從先前執行的 Solaris Security Toolkit 移除已儲存的檔案。您可以與清除選 項一起使用無訊息 (-q)、輸出 (-o)、郵件 (-m) 以及詳細程度 (-V) 選項。
程式碼範例 3-4 顯示使用 -c 選項的範例,其產生的輸出與下列相似:
程式碼範例 3-4 -c 選項輸出範例
# bin/jass-execute -c Executing driver, clean.driver
Please select Solaris Security Toolkit runs to clean:
1. July 15, 2005 at 11:41:02 (/var/opt/SUNWjass/run/20050715114102)
2. July 15, 2005 at 11:44:03 (/var/opt/SUNWjass/run/20050715114403) Choice (’q’ to exit)? 2 [NOTE] Cleaning previous run from /var/opt/SUNWjass/run/20050715114403
============================================================================== clean.driver: Driver started. ==============================================================================
============================================================================== Toolkit Version: 4.2.0 Node name: sstzone Zone name: sstzone Host ID: 80cb346c Host address: 10.8.28.45 MAC address: 8:0:20:cb:34:6c
3 章 升級、安裝及執行安全性軟體 47
程式碼範例 3-4 -c 選項輸出範例
OS version: 5.10 Date: Fri Jul 15 11:44:58 PDT 2005
============================================================================== clean.driver: Performing CLEANUP of /var/opt/SUNWjass/run/20050715114403. ==============================================================================
============================================================================== clean.driver: Driver finished. ==============================================================================
============================================================================== [SUMMARY] Results Summary for CLEAN run of clean.driver [SUMMARY] The run completed with a total of 1 script run. [SUMMARY] There were Failures in 0 Scripts [SUMMARY] There were Errors in 0 Scripts [SUMMARY] There were Warnings in 0 Scripts [SUMMARY] There was a Note in 1 Script [SUMMARY] Notes Scripts listed in:
/var/opt/SUNWjass/run/20050715114403/jass-clean-script-notes.txt
==============================================================================
顯示說明選項
jass-execute -h 選項顯示說明訊息,提供適用選項的簡介。
-h 選項之輸出與下列輸出相似:
程式碼範例 3-5 -h 選項輸出範例
# ./jass-execute -h To apply this Toolkit to a system, using the syntax:
jass-execute [–r root_directory –p os_version ]
[ –q | –o output_file ] [ –m e-mail_address ] [ –V [3|4] ] [ –d ] driver
To undo a previous application of the Toolkit from a system:
jass-execute –u [ –b | –f | –k ] [ –q | –o output_file ]
[ –m e-mail_address ] [ –V [3|4] ]
To audit a system against a pre-defined profile:
jass-execute –a driver [ –V [0–4] ] [ –q | –o output_file ]
[ –m e-mail_address ]
To remove saved files from a previous run of the Toolkit:
jass-execute -c [ -q | -o output_file ]
48 Solaris Security Toolkit 4.2 管理指南 • 2005 年 7
程式碼範例 3-5 -h 選項輸出範例 (續)
[ -m e-mail_address ] [ -V [3|4] ]
To display the history of Toolkit applications on a system:
jass-execute –H
To display the last application of the Toolkit on a system:
jass-execute –l
To display this help message:
jass-execute –h jass-execute –?
To display version information for this program:
jass-execute –v
Note that just the driver name should be specified when using the ’–d’ or ’–a’ options. A path need not be specified as the script is assumed to exist in the Drivers directory.
The ’–u’ undo option is mutually exclusive with the ’–d’ and ’–a’ options. The default undo behavior is to ask the user what to do if a file to be restored has been modified as the checksum is incorrect.
The –u option can be combined with the ’–k’, ’–b’, or ’–f’ to override the default interactive behavior. The use of one of these options is required when run in quiet mode (’–q’).
The ’–k’ option can be used to always keep the current file and backup if checksum is incorrect. The ’b’ can be used to backup the current file and restore original if the checksum is incorrect. The ’f’ option will always overwrite the original if the checksum is incorrect, without saving the modified original.
驅動程式選項
d driver 選項指定驅動程式在獨立模式下執行。
您必須指定驅動程式的 -d 選項。Solaris Security Toolkit 軟體會將 Drivers/ 加在程 序檔名稱之前。您需要在指令行輸入程序檔名稱。
備註 – 請勿-d 選項與 -a-b-c-f-H-h-k-u 選項一起使用。
3 章 升級、安裝及執行安全性軟體 49
jass-execute 強化指令使用 -d driver 選項之輸出與下列輸出相似:
程式碼範例 3-6 -d driver 選項輸出範例
# ./jass-execute -d secure.driver [...] [NOTE] Executing driver, secure.driver
=============================================================== secure.driver:Driver started. ===============================================================
=============================================================== Solaris Security Toolkit Version: 4.2.0 Node name: ufudu Zone name: global Host ID: 8085816e Host address: 10.8.31.115 MAC address: 8:0:20:85:81:6e OS version: 5.10 Date: Tue Jul 5 16:28:24 EST 2005 =============================================================== [...]
電子郵件通知選項
-m e-mail_address 選項提供當程式執行完畢時,Solaris Security Toolkit 軟體會自動傳 送獨立稽核、清除、強化和還原輸出的電子郵件機制。電子郵件報告是在系統上使用其 他選項,以及 Solaris Security Toolkit 軟體建立的本機記錄所產生的任何記錄之外的記 錄。
Solaris Security Toolkit 透過電子郵件選項執行呼叫
sunfire_15k_sc-config.driver 應與下列輸出相似:
# ./jass-execute -m root -d sunfire_15k_sc-config.driver [...]
執行歷程選項
-H 選項提供判定 Solaris Security Toolkit 軟體在系統上的執行次數的簡單機制。不論 是否做過還原,所有的執行皆被列出。
50 Solaris Security Toolkit 4.2 管理指南 • 2005 7
-H 選項之輸出與下列輸出相似:
程式碼範例 3-7 -H 選項輸出範例
# ./jass-execute -H Note: This information is only applicable for applications of the Solaris Security Toolkit starting with version 0.3.
The following is a listing of the applications of the Solaris Security Toolkit on this system.This list is provided in reverse chronological order:
1. June 31, 2004 at 12:20:19 (20040631122019) (UNDONE)
2. June 31, 2004 at 12:10:29 (20040631121029)
3. June 31, 2004 at 12:04:15 (20040631120415)
此輸出顯示 Solaris Security Toolkit 軟體執行了 3 次,最後一次作了還原。
最近執行的選項
-l 選項提供判定最近執行的機制。這總是 -H 選項列出的最後一項。
-l 選項提供類似下列的輸出:
程式碼範例 3-8 -l 選項輸出範例
# ./jass-execute -l
Note:This information is only applicable for applications of the Solaris Security Toolkit starting with version 4.2.0.
The last application of the Solaris Security Toolkit was:
1. June 31, 2005 at 12:20:19 (20040631122019) (UNDONE)
輸出檔案選項
-o output_file 選項重導 jass-execute 螢幕輸出至檔案 output_file。您可以為 output_file 指定完全合格的路徑名稱。
此選項對於 JASS_REPOSITORY 目錄中保存的記錄不發生作用。此選項對於在一台慢 終端機上執行連線時非常有幫助。依據特定的 verbosity_level 執行 Solaris Security Toolkit 時,會產生大量的輸出。
您可以將此選項與 -a-d-u 選項一起使用。
3 章 升級、安裝及執行安全性軟體 51
-o 選項之輸出與下列輸出相似:
程式碼範例 3-9 -o 選項輸出範例
# ./jass-execute -o /var/tmp/root/jass-output.txt -d secure.driver [NOTE] Executing driver, secure.driver [NOTE] Recording output to /var/tmp/root/jass-output.txt
無訊息輸出選項
-q 選項停止在強化執行期間之 Solaris Security Toolkit 輸出到主控台。
此選項對保留在 JASS_REPOSITORY 目錄的記錄檔沒有任何效用。與 -o 選項相似, 透過緩慢網路執行 Solaris Securiyt Toolkit 軟體 cron 工作時非常有幫助。
您可以將此選項與 -a-c-d-u 選項一起使用。
-q 選項之輸出與下列輸出相似:
程式碼範例 3-10 -q 選項輸出範例
# ./jass-execute -q -d secure.driver [NOTE] Executing driver, secure.driver
根目錄選項
-r root-directory 選項指定執行 jass-execute 時會使用到根目錄。使用 -r 選項需 要使用 -p 選項來指定平台 (作業系統) 版本。-p 選項的格式與 uname -r 產生的格 式相同。
此根目錄為 /,且被 Solaris Security Toolkit 的環境變數 JASS_ROOT_DIR 定義。要 安全化的 Solaris 作業系統可透過 / 取得。例如,一個單獨的作業系統目錄要安全 化,暫時掛載至 /mnt,然後使用 -r 選項來指定 /mnt。所有的程序檔套用到該作業 系統影像。
還原選項
透過 -u 選項,Solaris Security Toolkit 軟體可以還原強化期間的系統修改。每個結束 的程序檔可以使用 -u 選項作還原。除此之外,Solaris Security Toolkit 的還原能力與 每次執行時產生的總和檢查作緊密的整合。要取得此能力的更多資訊,請參閱第 4 章。
您有三個選項可以與 -u 選項一起使用:
-b (備份) 選項,備份自強化運行之後所有曾遭手動更改的檔案,重新回復系統至原
來的狀態。
52 Solaris Security Toolkit 4.2 管理指南 • 2005 7
-f (強制) 選項,強化運行期間逆轉更改;不詢問您有關異常狀況,即使在強化運行
之後檔案曾遭手動更改。
-k (保留) 選項,保留強化運行之後您手動變更的檔案。
還原指令的用法提要:
# jass-execute -u [ -b | -f | -k ] [ -q | -o output_file ] [ -m e-mail_address ] [ -V [3|4] ]
JumpStart 模式下執行軟體
JumpStart 模式由將 Solaris Security Toolkit 驅動程式加入 JumpStart 伺服器的 rules
檔案內來控制。
若您尚未將您的環境配置為使用 JumpStart 模式,請參閱第 5 章。
要取得更多有關 JumpStart 技術的資訊,參考 Sun BluePrints 文件 「JumpStart Technology: Effective Use in the Solaris Operating Environment」。
JumpStart 模式下執行軟體
要在 JumpStart 模式下執行 Solaris Security Toolkit 軟體,則必須將它整合至您的 JumpStart 環境。做為 JumpStart 安裝結束程序檔的一部分可被呼叫。要取得如何將 Solaris Security Toolkt 軟體整合至您的環境的資訊,請參閱第 5 章。
1. 當作完驅動程式所有必要的修改時,使用 JumpStart 基礎架構安裝用戶端。
於用戶端 ok 提示符號下,使用下列指令來完成此項作業。
ok> boot net - install
一旦安裝完成,JumpStart 軟體會重新啟動系統。
系統應該處於正確配置中。強化期間,用戶端的配置作了不同的修改。這些修改包括停 用服務起始程序,停用服務選項及透過修補程式安裝新的二進位碼或者程式庫。直至用 戶端重新啟動,這些修改才會生效。
2. 系統重新啟動後,確認修改的正確性及完整性。
請參閱第 54 頁 「驗證系統修改」。
3. 若發生任何錯誤,將錯誤修正並重新安裝作業系統。
3 章 升級、安裝及執行安全性軟體 53
驗證系統修改
重新啟動系統後,依照下面章節所述,驗證修改的正確性及完整性。
執行品質保證 (QA) 檢核服務
安全系統中一個重要的挑戰是判定什麼作業系統服務必須保留使用,才能使系統正常運 作。Solaris 作業系統服務可能是需要的,由於它們直接被 (如 Secure Shell) 用來登入 系統。或者,它們也可間接被使用,例如:協力廠商的圖形化使用者介面 (GUI) 則使用 RPC 常駐程式。
執行 Solaris Security Toolkit 軟體之前,要先判定大多數的需求。(請參閱第 18 頁「判 定應用程式及服務的需求」。) 但是,唯一確定的機制是安裝及保護系統,然後透過品 質保證 (QA) 測試來測試系統所需要的功能。當系統強化後,任何要部署的新系統必須 要執行 QA 計畫。同樣地,要強化已部署的系統,必須透過測試確保所有需要的及期待 的功能都存在。
QA 程序發現任何不一致性,請執行下列步驟:
1. 根據第 2 章中的導引判定問題區域。
2. 驗證應用程式在修改過的配置中可執行。
3. 還原 Solaris Security Toolkit 運作。
4. 根據問題的解析,修改安全設定檔 (驅動程式)
5. 重新執行 Solaris Security Toolkit 軟體。
最終結果必須是,安全設定檔的執行不會影響任何系統需求的功能。
執行配置的安全性評估
驗證系統是否執行所有需要的功能時,也要評估安全配置是否達到系統預想的安全等 級。根據系統所作的強化或最小化,可能牽涉不同的狀況。
最基本的,系統配置必須依下列方式檢閱:
確定已經安裝所有適用的 「安全性和建議的修補程式」。
驗證有執行需要和相關的程序,而且是以正確的引數執行。
確定有執行需要的常駐程式,而且是以正確的引數執行。
54 Solaris Security Toolkit 4.2 管理指南 • 2005 7
確定系統開啟需要的埠,可以透過本地檢查 (例如,netstat -a) 及使用遠端
Nmap 埠掃描器來判定網路介面何者埠是可用的。
若系統已最小化,請確定有安裝需要的 Solaris 作業系統套裝模組。
對於新建立及安全化的系統,此項檢視應當做最低限度的檢核。強化老舊的系統時,底 層的作業系統應該確認是否有未經授權的更改。完整性的檢查最好藉由掛載系統至唯讀 模式,然後自已知的作業系統實例中執行完整性檢核軟體。Sun BluePrints OnLine 文 摘「The Solaris Fingerprint Database-A Security Tool for Solaris Software and Files」中所述的工具在這些情境中十分有用。
驗證安全設定檔
在系統安全化及驗證完需要的服務及能力之後,請使用稽核功能確定安全檔案正確及 完整地被套用。這個作業重要的原因有兩個。首先確保系統如需求般做好強化。第二 要確保系統定義的安全設定檔可以正確的反映在 Solaris Security Toolkit 配置中。由 於配置資訊在整個部署的生命週期內,要用來維護系統的安全設定檔,因此這項檢核 非常重要。
要取得更多有關稽核功能的資訊,請參閱第 6 章。
執行安裝後作業
若您在已部署的系統上安裝軟體,請參閱第 28 頁 「執行安裝後作業」,以取得相關資 訊。
3 章 升級、安裝及執行安全性軟體 55
56 Solaris Security Toolkit 4.2 管理指南 • 2005 7
4
逆轉系統變更
本章提供資訊及程序,有關如何逆轉 (還原) 強化運行時由 Solaris Security Toolkit 軟體 所作的變更。此選項提供一個自動化的機制,您可將系統返回到 Solaris Security Toolkit 強化安全運作之前的狀態。
本章包含以下主題:
57 頁 「瞭解變更如何被記錄及逆轉」 58 頁 「還原系統變更的需求」 59 頁 「自訂程序檔還原變更」 60 頁 「檢查曾經手動更改的檔案」 60 頁 「使用還原功能選項」 63 頁 「還原系統更改」
瞭解變更如何被記錄及逆轉
每次 Solaris Security Toolkit 強化運作會建立一個 JASS_REPOSITORY 運作目錄。此 目錄的名稱根據起始的日期及時間而定。除了將結果顯示在螢幕上,Solaris Security Toolkit 軟體在目錄中建立一組檔案來追蹤變更及記錄作業。
這些儲存在目錄中的檔案追蹤系統所作的變更以及啟用還原功能來工作。
注意 – 管理員不應該修改 JASS_REPOSITORY 目錄底下的檔案內容。更改這些檔案,
當您使用還原功能時會導致內容毀損、錯誤或系統毀損。
當您使用 Solaris Security Toolkit 軟體來強化系統,不論是 JumpStart 或獨立模式,軟 體將所作的變更記錄在 JASS_REPOSITORY/jass-manifest.txt 記錄檔。此檔案列 舉可被還原功能用來逆轉所作變更的作業。檔案含有因 Solaris Security Toolkit 軟體而 生效的強化作業資訊,包括被建立、複製、移動或移除的檔案。除此之外,此檔案可能 含有若要逆轉更複雜的變更時,例如套裝軟體安裝,所需要的標準及自訂項目。一個強 化運行就建立一個 jass-manifest.txt 檔案。
57
備註Solaris Security Toolkit 軟體還原功能還原那些清單檔案 (manifest file) 中有
項目存在的變更。
還原運行瀏覽因 Solaris Security Toolkit 執行而產生並儲存在 JASS_REPOSITORY 清單檔案。此執行可復原備份的檔案到原始位置,其依據您是否有使用備份、強制或保 留選項。請參閱下列內容以取得更多關於備份、強制和保留選項之資訊:
61 頁 「備份選項」 61 頁 「強制選項」 62 頁 「保留選項」
如果檔案沒有在強化期間備份,而當 JASS_SAVE_BACKUP 變數在 user.init 檔案定 義為 0 或是使用 -c 選項時,還原功能則無法使用。詳情請參閱第 58 頁 「還原系統變 更的需求」。
Solaris Security Toolkit 的作業被還原後,相關的目錄並不會被移除。相反地,
JASS_REPOSITORY 目錄中會建立兩個檔案:jass-undo-log.txt reverse­jass-manifest.txt。之後,下次再執行 jass-execute -u 指令時,被還原的作
業不會再被列出。強化運作只可以被還原一次。
還原系統變更的需求
使用 Solaris Security Toolkit 軟體的還原功能,必須了解下列限制及需求:
Solaris Security Toolkit 版本 0.3 4.2 中,您可針對獨立或 JumpStart 模式起始
的運行使用還原功能。但是您能還原獨立模式下的變更。JumpStart 安裝期間不可 使用還原功能。
若您選擇 Solaris Security Toolkit 建立備份的選項,不論是透過獨立模式或
JumpStart 模式,還原功能適用。設定 JASS_SAVE_BACKUP 參數為 0,建立備份
檔案副本的功能即被停用。
一次運行能還原一次。
如果您建立新的結束程序檔,請務必使用 Solaris Security Toolkit 架構功能。您必須
建立相符的稽核程序檔,並使用 add_to_manifest 功能增加項目到清單檔案。否 則,Solaris Security Toolkit 無法知道您自訂的進度。
任何狀況下都不要更改 JASS_REPOSITORY 目錄內的內容。更改這些檔案,當您使
用還原功能時會導致內容毀損、錯誤或系統毀損。
58 Solaris Security Toolkit 4.2 管理指南 • 2005 7
自訂程序檔還原變更
Solaris Security Toolkit 架構提供彈性,可供設計及建立結束程序檔。架構允許您延伸 Solaris Security Toolkit 軟體的能力來符合機構的需要,同時協助您在生命期內作系統
配置上更好的管理。
當您自訂程序檔時,很重要的是要瞭解什麼行動會影響還原功能。要簡化自訂程序檔, 輔助程式函數會對清單檔案作正確的更改。(還原功能根據清單檔案的內容來逆轉強化 運行。) 大多數狀況下,這些輔助程式函數提供您自訂程序檔時所需要的資訊。
要取得如何使用輔助程式函數的資訊,請參閱「Solaris Security Toolkit 4.2 Reference Manual」。使用這些輔助程式函數代替相對應的系統指令,如此還原運行可以參照清 單檔案內的相關項目。
有些狀況下,若沒有輔助程式功能時,您可能需要執行一個函數。在這樣的狀況下,使 用名為 add_to_manifest 的特殊函數。使用此函數,您可手動的新增項目至清單檔 案中,不需要呼叫輔助程式函數。小心的使用此項特殊的函數,如此您可以保護系統及 Solaris Security Toolkit 儲存庫的完整性。範例中顯示當您想要加入那些不是 Sun pkg 格式的套裝軟體時,可使用此特殊函數。範例中,您必須告訴還原功能如何移除強化運 行期間以它種格式加入的套裝軟體。
藉由輔助程式函數及特殊 add_to_manifest 函數, Solaris Security Toolkit 軟體提供 簡單及彈性的方法來自訂程序檔以及可以使變更延伸至還原運行。
若您未使用這些函數來更改結束程序檔的運作方式,Solaris Security Toolkit 軟體無從 知道已經作了更改。因此您必須手動還原那些清單檔案內沒有參照的更改。
另一個範例是系統更改檔案之前,首先必須先儲存原先的版本的檔案。Solaris Security Toolkit 軟體環境之外,使用者一般可以執行 /usr/bin/cp 指令來達成此項工作。但 是在 Solaris Security Toolkit 環境之下,若您直接使用此指令,Solaris Security Toolkit 無從知道需要建立一個項目在清單檔案中。使用 backup_file 輔助程式函 數,而不使用 cp 指令。此函數儲存原先的檔案的副本,使用 JASS_SUFFIX 作後綴, 而且加入一個清單檔的項目,指示 Solaris Security Toolkit 軟體已經複製了一個檔案。 而且此函數計算檔案的總和檢查。檔案的總和檢查被還原功能及 jass-check-sum 指 令所使用。
4 章 逆轉系統變更 59
檢查曾經手動更改的檔案
雖然 jass-execute -u 指令可以自動檢查強化運行之後曾被手動更改過的檔案,但有 時您會發現使用 jass-check-sum 指令列舉及檢視檔案是非常有用的。
此指令可使您檢視 JASS_REPOSITORY 目錄的內容以及執行列入清單檔中所有檔案的 總和檢查。判定清單上的檔案在強化期間作總和檢查記錄之後是否遭更改。進行強制 還原運行之前進行此項檢查,可提供有價值的資訊,如此可以節省長時間不需要的疑 難排解。
下面是輸出的範例。
程式碼範例 4-1 手動更改檔案輸出的範例
# ./jass-check-sum File Name Saved CkSum Current CkSum
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ­/etc/inet/inetd.con 1643619259:6883 2801102257:6879 /etc/logadm.conf 2362963540:1042 640364414:1071 /etc/default/inetd 3677377803:719 2078997873:720
輸出指出三個檔案在強化運行完成之後被更改。
使用還原功能選項
本節描述 jass-execute -u 指令及選項,您可於執行還原運行時使用。
備註 – 您不可以與還原功能同時使用 -c-d-a-h-l -H 選項。在無訊息模
式中執行還原時,您必須提供 -b-k-f 選項。
jass-execute -u 指令是執行還原運行的標準方法。此指令會自動發現自上次強化後 任何曾遭更改的檔案。若 Solaris Security Toolkit 軟體發現強化運行之後檔案曾遭手動 更改,它會要求您選擇下列其中一個回應:
1. 在回復至原先的 (強化運行之前已經存在) 檔案之前先備份目前的檔案。
2. 保留最新的檔案,不要回復原先的檔案。
3. 強制覆寫至任何手動更改的檔案 (可能導致資料遺失) 以及回復原先的檔案。
4. 在回復至原先的 (強化運行之前已經存在) 檔案之前務必先備份目前的檔案。
60 Solaris Security Toolkit 4.2 管理指南 • 2005 7
5. 務必保留最新的檔案,不要回復原先的檔案。
6. 務必強制覆寫至任何手動更改的檔案 (可能導致資料遺失) 以及回復原先的檔案。
如果您想在強化執行時,定義還原指令應如何管理任何檔案修正,請在執行還原指令時 使用備份 (-b)、保留 (-k) 或強制 (-f) 選項。
4-1 列出您可與還原一同使用的指令行選項。要取得有關每個選項的更詳細的資訊, 請參閱下面章節。
4-1 使用還原指令的指令行選項
選項 說明
-b
-f
-k
-m
-o
-q
-V
備份自強化運行之後所有曾遭手動更改的檔案,重新回復系統至原來的狀態。
強化運行期間逆轉更改;不詢問您有關異常狀況,即使在強化運行之後檔案曾遭手 動更改。
保留所有在強化運行之後您所作的手動更改檔案。
傳送輸出至電子信箱。
導引輸出至檔案。
阻止將輸出顯示至螢幕。也稱作無訊息選項。輸出被儲存在 JASS_REPOSITORY/jass-undo-log.txt
指定還原運行的詳細程度。
備份選項
-b 選項自動備份自上次強化運行後所有曾遭手動更改的檔案,然後回復檔案至強化運 行之前的原來狀態。要使這些手動更改生效,您必須比較回復的檔案及備份檔案,然後 手動調整差異。若檔案使用此項選項作備份,它與下列範例相似。
/etc/motd.BACKUP.JASS_SUFFIX
強制選項
-f 選項,沒有例外地,逆轉強化運行間的所作的所有更改,即使檔案在強化運行之後 遭手動更改。還原運行比較儲存檔案及目前版本檔案的總和檢查。結果是,強化運行 之後若您曾手動更改過檔案,還原運行之後更改會被覆寫及遺失。
還原運行結束之後可能需要手動重新使更改生效。更進一步,根據所作的更改種類可能 需要調整檔案群組之間的差異。
4 章 逆轉系統變更 61
備註 – 要協助阻止此問題發生,使用 jass-check-sum 指令或上面所述 -b 指令行選
項。
保留選項
-k 選項自動保留強化運行之後您所作的檔案手動更改而不回復回原來的檔案。-k 選項 發現檔案間任何的不匹配,導致產生一個通知以及作記錄記錄,並以原來的檔案覆 蓋。唯一逆轉的變更是已儲存的總和檢查為有效的。
此選項並不全是沒缺點的。例如,若檔案子集被結束程序檔更改之後被更改,使得系統 即可能成為不一致狀態。
考慮 remove-unneeded-accounts.fin 結束程序檔。此程序檔修改系統的
/etc/passwd /etc/shadow 檔案。若使用者在強化運行結束之後手動更改密碼, /etc/shadow 檔案的總和檢查與 Solaris Security Toolkit 軟體所儲存的值無法配合。 結果是,如果使用保留選項,只有 /etc/passwd 檔案會複製回原來的狀態。 /etc/shadow 檔案保留目前的形式。兩個檔案不再一致。
輸出檔案選項
-o /complete/path/to/output_file 選項重導 jass-execute 螢幕輸出至檔案 output_file
此選項對於保留在 JASS_REPOSITORY 目錄的記錄沒有作用。此選項對於使用連接 緩慢終端機進行時特別有用,原因是 Solaris Security Toolkit 還原運行會產生大量的 輸出。
無訊息輸出選項
備註 – 在無訊息模式中執行還原時,您必須提供 -b、-k -f 選項。
-q 選項阻止 Solaris Security Toolkit 軟體顯示輸出至螢幕。此選項對於保留在 JASS_REPOSITORY 目錄的記錄沒有作用。與 -o 選項相似,透過緩慢網路執行 Solaris Securiyt Toolkit cron 工作時非常有幫助。
62 Solaris Security Toolkit 4.2 管理指南 • 2005 7
電子郵件通知選項
-m e-mail_address 選項指引 Solaris Security Toolkit 軟體傳送完整運行的副本至特定的 電子郵件地址。電子信箱報告為使用其他選項所產生之系統記錄檔之外的報告。
還原系統更改
有時候要逆轉一個或多個 Solaris Security Toolkit 強化運行時所作的更改是必要的。若 您發現強化運行時所作的更改對您的系統有負面的影響,請還原更改。
例如,強化之後若您發現需要的服務如 Solaris Volume Manager (SVM) 遭停用,請執 行下列動作:
1. 還原強化執行。
2. 建立自訂的驅動程式。
請參閱 「Solaris Security Toolkit 4.2 Reference Manual 第四章中的
Customizing Drivers」,以取得自訂驅動程式的指示。
3. 透過 JASS_SVCS_ENABLE環境變數啟用您想使用的 SVM 服務。
請參閱 「Solaris Security Toolkit 4.2 Reference Manual」第 7 章的
JASS_SVCS_ENABLE」,以取得使用 JASS_SVCS_ENABLE 的指示。
4. 重複強化執行。
本節提供逆轉一個或多個強化運行期間更改的指示。請注意,有效的逆轉強化運行是有 限制及需求的。請參閱第 58 頁 「還原系統變更的需求」。
還原 Solaris Security Toolkit 運行
1. 備份及重新啟動系統。
每次還原運作之前要備份及重新開機系統,來確保可以返回或可被帶回至已知的而且是 工作的狀態。
2. 決定您要使用 jass-execute -u 指令的何種選項。
請參閱第 60 頁 「使用還原功能選項」。
下面指示假設您使用 jass-execute -u 指令。
4 章 逆轉系統變更 63
3. 要還原一個或多個強化運行使用標準 -u 選項,自 JASS_HOME_DIR/bin 中輸入指令:
# ./jass-execute -u
Solaris Security Toolkit 軟體藉由尋找位於 JASS_REPOSITORY 的所有清單檔來收集每 次強化運行的資訊。若清單檔是空的或是不存在,可以假定沒有必要還原更改而且該運 行可被省略。除此之外,若名為 jass-undo-log.txt 檔案存在於清單檔案所在的目 錄內,可以假定該運行已被逆轉,因此運行可被省略。當收集程序已經完成,將顯示輸 出。下面是輸出的範例。
程式碼範例 4-2 還原可用之運行的輸出範例
# ./jass-execute -u [NOTE] Executing driver, undo.driver Please select a JASS run to restore through:
1. January 24, 2003 at 13:57:27 (/var/opt/SUNWjass/run/20030124135727)
2. January 24, 2003 at 13:44:18 (/var/opt/SUNWjass/run/20030124134418)
3. January 24, 2003 at 13:42:45 (/var/opt/SUNWjass/run/20030124134245)
4. January 24, 2003 at 12:57:30 (/var/opt/SUNWjass/run/20030124125730)
Choice? (‘q’ to exit)?
範例中,發現四個獨立的強化運行。這些運行對系統作了改變而且尚未還原。強化運行 的清單一定以相反的時間順序呈現。清單中的第一個項目是最近的強化運行。
64 Solaris Security Toolkit 4.2 管理指南 • 2005 7
4. 檢視輸出來決定您要還原的運行,然後輸入對應的編號。
對於所選擇的項目,Solaris Security Toolkit 軟體將逆轉那些等於或小於選定值的運 行。也就是,還原運行以相反順序來逆轉運行,以最近的強化做開始然後繼續至您所選 擇的項目。使用上面範例作為導引,若您選擇運行 3undo run 會首先逆轉運行 1, 然後移動至運行 2 的更改,最後逆轉運行 3 的更改。
程式碼範例 4-3 顯示當還原運行處理兩個清單檔案項目的輸出。
程式碼範例 4-3 還原處理多個清單檔案項目的運行之輸出範例
[...]
=============================================================== undo.driver: Performing UNDO of //var/opt/SUNWjass/run/20050715145837. ================================================================
[...]
================================================================ undo.driver: Undoing Finish Script: update-cron-allow.fin ================================================================
[NOTE] Undoing operation COPY. cp -p /etc/cron.d/cron.allow.JASS.20050715145906 /etc/cron.d/cron.allow rm -f /etc/cron.d/cron.allow.JASS.20050715145906
[NOTE] Removing a Solaris Security Toolkit-created file. rm -f /etc/cron.d/cron.allow
[...]
本範例中,Solaris Security Toolkit 軟體還原了複製作業以及移除強化期間所加入的檔 案。還原運行的輸出記錄用來回復系統所使用的真實指令,如此若您需要作系統配置疑 難排解時,程序可被清楚的了解及參考。
如果 Solaris Security Toolkit 自上一次強化執行以來的檔案修改檢查成功,還原執行會 持續直到所有執行和相應的清單檔案都已處理完並逆轉變更。
除了 Solaris Security Toolkit 軟體藉由尋找位於 JASS_REPOSITORY 的所有清單檔案 來收集每次強化運行的資訊之外,Solaris Security Toolkit 軟體會執行下列動作:
a. 比較每個修正檔案的總和檢查。
b. 產生總和檢查檔案中任何不符合的記錄通知。
c. 詢問您要為這些檔案採取什麼動作。
5. 若還原運作發現異常 (強化運作之後檔案被更改),請輸入其中一個選項。
4 章 逆轉系統變更 65
備註 – Solaris Security Toolkit 軟體會為特定例外的檔案記憶備份、保留和強制選項,
而下次您不需要為該檔案做選擇,因為該檔案在還原執行中為例外。
下面是輸出範例顯示異常及處理異常的選擇。
程式碼範例 4-4 還原異常的輸出範例
[...]
================================================================ undo.driver: Undoing Finish Script:enable-process-accounting.fin ================================================================
[NOTE] Undoing operation COPY. [WARN] Checksum of current file does not match the saved value. [WARN] filename = /var/spool/cron/crontabs/adm [WARN] current = db27341e3e1f0f27d371d2e13e6f47ce [WARN] saved = a7f95face84325cddc23ec66d59374b0
Select your course of action:
1. Backup - Save the current file, BEFORE restoring original.
2. Keep - Keep the current file, making NO changes.
3. Force - Ignore manual changes, and OVERWRITE current file.
NOTE:The following additional options are applied to this and ALL subsequent files:
4. ALWAYS Backup.
5. ALWAYS Keep.
6. ALWAYS Force.
Enter 1, 2, 3, 4, 5, or 6:
66 Solaris Security Toolkit 4.2 管理指南 • 2005 7
範例中,若您選擇項目 1,會顯示下列輸出。
程式碼範例 4-5 還原期間選擇備份選項的輸出範例
Enter 1, 2, 3, 4, 5, or 6: 1
[WARN] Creating backup copies of some files may cause unintended effects. [WARN] This is particularly true of /etc/hostname.[interface] files as well as crontab files in /var/spool/cron/crontabs.
[NOTE] BACKUP specified, creating backup copy of /var/spool/cron/crontabs/adm. [NOTE] File to be backed up is from an undo operation. [NOTE] Copying /var/spool/cron/crontabs/adm to /var/spool/cron/crontabs/adm.BACKUP.JASS.20050715151817 cp -p /var/spool/cron/crontabs.JASS/adm.JASS.20050715151719 /var/spool/cron/crontabs/adm rm -f /var/spool/cron/crontabs.JASS/adm.JASS.20050715151719
[NOTE] Undoing operation COPY. cp -p /var/spool/cron/crontabs.JASS/root.JASS.20050715151717 /var/spool/cron/crontabs/root rm -f /var/spool/cron/crontabs.JASS/root.JASS.20050715151717
[NOTE] Undoing operation MAKE DIRECTORY. rmdir /var/spool/cron/crontabs.JASS
[NOTE] Undoing operation SYMBOLIC LINK. rm -f /etc/rc3.d/S22acct
[NOTE] Undoing operation SYMBOLIC LINK. rm -f /etc/rc0.d/K22acct
4 章 逆轉系統變更 67
如果您選擇項目 4,會顯示下列輸出。
程式碼範例 4-6 還原期間務必選擇備份選項的輸出範例
Enter 1, 2, 3, 4, 5, or 6: 4 [NOTE] Always do BACKUP selected. Overriding JASS_UNDO_TYPE with BACKUP.
[WARN] Creating backup copies of some files may cause unintended effects. [WARN] This is particularly true of /etc/hostname.[interface] files as well as crontab files in /var/spool/cron/crontabs.
[NOTE] BACKUP specified, creating backup copy of /var/spool/cron/crontabs/adm. [NOTE] File to be backed up is from an undo operation. [NOTE] Copying /var/spool/cron/crontabs/adm to /var/spool/cron/crontabs/adm.BACKUP.JASS.20050715152126 cp -p /var/spool/cron/crontabs.JASS/adm.JASS.20050715151953 /var/spool/cron/crontabs/adm rm -f /var/spool/cron/crontabs.JASS/adm.JASS.20050715151953
[NOTE] Undoing operation COPY. [WARN] Checksum of current file does not match the saved value. [WARN] filename = /var/spool/cron/crontabs/root [WARN] current = 741af21a62ea7a9e7abe6ba04855aa76 [WARN] saved = bcf180f45c65ceff3bf61012cb2b4982 [WARN] Creating backup copies of some files may cause unintended effects. [WARN] This is particularly true of /etc/hostname.[interface] files as well as crontab files in /var/spool/cron/crontabs. [NOTE] BACKUP specified, creating backup copy of /var/spool/cron/crontabs/root. [NOTE] File to be backed up is from an undo operation. [NOTE] Copying /var/spool/cron/crontabs/root to /var/spool/cron/crontabs/root.BACKUP.JASS.20050715152127 cp -p /var/spool/cron/crontabs.JASS/root.JASS.20050715151951 /var/spool/cron/crontabs/root rm -f /var/spool/cron/crontabs.JASS/root.JASS.20050715151951
[NOTE] Undoing operation MAKE DIRECTORY. rmdir /var/spool/cron/crontabs.JASS
[NOTE] Undoing operation SYMBOLIC LINK. rm -f /etc/rc3.d/S22acct
[NOTE] Undoing operation SYMBOLIC LINK. rm -f /etc/rc0.d/K22acct
68 Solaris Security Toolkit 4.2 管理指南 • 2005 7
Solaris Security Toolkit 完成選擇的還原作業後,您應該重新檢視檔案 (強化時標示 為變更),然後做任何需要的系統修正。在手動檢視這些變更前,請勿重新開啟系統, 因為他們可能會使系統處在不一致的狀態。
備註 – 範例之中,被更改的檔案使用新名稱作儲存:
/etc/.login.BACKUP.JASS.20050715151817當還原已完成,比較該檔案與
/etc/.login 來決定是否需要進一步的調整。
6. 繼續之前調整異常。
7. 調整異常之後,重新開機。
對於修正,重新開啟系統是必須的,這樣才可使 Solaris 作業系統配置生效。
注意 – Solaris Security Toolkit JumpStart 模式執行時,會設定 root 密碼。如
果稍後才執行還原作業,root 密碼會回復到先前的密碼設定。表示任何人都不需要 密碼即可登入 root 帳戶。在您執行還原作業後,請記得以 passwd(1) 指令重新設定 root 密碼。Solaris Security Toolkit 4.2 軟體會在系統處於此狀態時顯示警示訊息。
4 章 逆轉系統變更 69
70 Solaris Security Toolkit 4.2 管理指南 • 2005 7
5
配置及管理 JumpStart 伺服器
本章提供用於配置及管理 JumpStart 伺服器的資訊,以使用 Solaris Security Toolkit 軟 體。JumpStart 技術為 Sun 網路基礎的 Solaris 作業系統安裝機制,安裝過程可以使用
Solaris Security Toolkit 軟體。
Solaris Security Toolkit JumpStart 模式根據 JumpStart 技 術,自 Solaris 作業系統版本
2.1 後即可用。JumpStart 技術藉由完全自動化 Solaris 作業系統及系統軟體安裝、提供
修正及系統標準化功能來協助您管理複雜的事務。它提供一種符合快速安裝及部署系統 的方法。
使用 JumpStart 技術的優點於系統安全領域是很明顯的。藉由使用 JumpStart 技術及 Solaris Security Toolkit 軟體,自動化安裝 Solaris 作業系統期間,安全化您的系統。 此動作協助確保系統安裝時系統安全是標準化的。要取得 JumpStart Enterprise Toolkit (JET) (提供 JumpStart 為基礎之安裝與包含以 Solaris Security Toolkit 支援強 化的模組),請至 Sun Software Download 網站,網址為:
http://www.sun.com/download/
要取得有關 JumpStart 技術的資訊,請參閱 Sun BluePrints 文件 「JumpStart Technology: Effective Use in the Solaris Operating Environment」。
本章包含以下主題:
72 頁 「配置 JumpStart 伺服器及環境」 74 頁 「使用 JumpStart 設定檔範本」 76 頁 「新增及移除用戶端」
71
配置 JumpStart 伺服器及環境
使用於 JumpStart 環境,安裝 Solaris Security Toolkit 來源於 /opt/SUNWjass (給
pkg 下載) JumpStart 伺服器的基本目錄中。預設目錄在 JumpStart 伺服器上的 /jumpstart。當完成此作業,JASS_HOME_DIR 即成為 JumpStart 伺服器的根目錄。
本章節假設讀者熟悉 JumpStart 技術而且有現存的 JumpStart 環境可使用。
要整合 Solaris Security Toolkit 軟體至 JumpStart 架構只需要幾個步驟。
配置 JumpStart 模式
1. 安裝 Solaris Security Toolkit 原始程式至 JumpStart 伺服器的根目錄。
Solaris Security Toolkit 可安裝在 JASS_REPOSITORY,此情況下為 /jumpstart,如 下列範例所示:
# pwd /opt/SUNWjass # pkgadd -R /jumpstart -d . SUNWjass
一般來說,Solaris Security Toolkit 軟體被安裝在 JumpStart 伺服器的 SI_CONFIG_DIR,它通常也會是 JASS_HOME_DIR
2. 若您作了 Solaris 2.5.1 作業系統 sysidcfg 檔案的任何修改,確定它們在 JASS_HOME_DIR/Sysidcfg/Solaris_2.5.1 目錄中。
若您使用 Solaris 2.5.1 作業系統,JASS_HOME_DIR/Sysidcfg/Solaris_2.5.1 中sysidcfg 檔案不能直接被使用,原因是此版本的 Solaris 僅支援 SI_CONFIG_DIR
sysidcfg 檔案而非子目錄中的檔案。要免於此項限制 Solaris 2.5.1 作業系統,Solaris Security Toolkit 軟體有 SI_CONFIG_DIR/sysidcfg,它連結至 JASS_HOME_DIR/Sysidcfg/Solaris_2.5.1/sysidcfg 檔案。
3. 利用下列指令複製 JASS_HOME_DIR/Drivers/user.init.SAMPLE JASS_HOME_DIR/Drivers/user.init
# pwd /jumpstart/opt/SUNWjass/Drivers # cp user.init.SAMPLE user.init
72 Solaris Security Toolkit 4.2 管理指南 • 2005 7
4. 如果您想在 JumpStart 安裝期間將 Solaris Security Toolkit 套裝模組安裝至目標系 統,您必須將套裝模組放置於在 user.init 檔案中定義的 JASS_PACKAGE_MOUNT 目錄。例如:
# cp /path/to/SUNWjass.pkg JASS_HOME_DIR/Packages
5. 若您遇到多宿主 (multihomed) JumpStart 伺服器的問題,請將
JASS_PACKAGE_MOUNT JASS_PATCH_MOUNT 這兩個項目修改為正確的路徑 JASS_HOME_DIR/Patches JASS_HOME_DIR/Packages 目錄。
6. 若您要安裝 Solaris Security Toolkit 軟體於 SI_CONFIG_DIR 子目錄下,如 SI_CONFIG_DIR/path/to/JASS,然後加入下列至 user.init 檔案:
if [ -z "${JASS_HOME_DIR}" ]; then
if [ "${JASS_STANDALONE}" = 0 ]; then
JASS_HOME_DIR="${SI_CONFIG_DIR}/path/to/JASS"
fi fi export JASS_HOME_DIR
7. 選擇或建立 Solaris Security Toolkit 驅動程式 (例如預設的 secure.driver)
所有 hardening.driver config.driver 中列出的程序檔要被使用,則請
加入 Drivers/secure.driver 路徑至 rules 檔案。
僅使用被選定之程序檔,請複製那些檔案,然後修改複製檔。請參閱 「Solaris
Security Toolkit 4.2 Reference Manual第四章中的 「Customizing Drivers」, 以
取得複製和修改驅動程式的指示。
注意切勿更改 Solaris Security Toolkit 軟體內含的程序檔。要允許更有效率的遷移
Solaris Security Toolkit 軟體之新發行版本,分開維護原始檔案及您的自訂檔案。
8. 當完成驅動程式後,製作正確的 rules 檔案項目。
項目應相似於下列:
hostname imbulu - Profiles/core.profile Drivers/secure-abc.driver
要成功的整合 Solaris 安全工具軟體至現存 JumpStart 環境,還需要一處的更改。
9. 若您使用 Solaris Security Toolkit 軟體所提供的 sysidcfg 檔案來自動化 JumpStart 用戶端的安裝,請檢閱它們的適用性。
當剖析 sysidcfg 檔案時,若 JumpStart 伺服器發生任何錯誤,整個檔案的內容會被 忽略。
5 章 配置及管理 JumpStart 伺服器 73
當完成本章節中所有配置步驟後,您可以於安裝 Solaris 作業系統的用戶端使用 JumpStart 技術,安裝過程中可以成功的強化或最小化作業系統。
使用 JumpStart 設定檔範本
JumpStart 設定檔範本是可於 JumpStart 模式下使用的檔案。需要的或選用的設定檔 內容描述於 Sun BluePrints 文件「JumpStart Technology: Effective Use in the Solaris Operating Environment」。
使用 JumpStart 設定檔範本如同您個人站台的修改的範例一般。檢查設定檔來判定您的 環境中什麼更改 (如有需要) 是必要的。
複製設定檔,然後自您的站台作修改。不要修改原始檔案,原因是 Solaris Security Toolkit 軟體更新可會覆寫您的自訂檔案。
下列 JumpStart 設定檔為 Solaris Security Toolkit 軟體內含的檔案:
core.profileend-user.profiledeveloper.profileentire-distribution.profileoem.profileminimal-SunFire_Domain*.profile
下列章節中說明這些設定檔。
core.profile
JumpStart 設定檔會安裝最小的 Solaris 作業系統叢集 (SUNWCreq)。除了指定磁碟 的分割包括 root 及交換分割區,沒有修改其他的配置。
end-user.profile
JumpStart 設定檔會安裝 「一般使用者 Solaris 作業系統」叢集 (SUNWCuser) 以及 為程序記錄正常運作所需的兩個 Solaris 作業系統套裝模組。除此之外,磁碟分割被定 義為包含 root 及交換分割區。
74 Solaris Security Toolkit 4.2 管理指南 • 2005 7
developer.profile
此 JumpStart 設定檔會安裝 「開發人員 Solaris 作業系統」叢集 (SUNWCprog) 以及為 程序記錄正常運作所需的兩個 Solaris 作業系統套裝模組。如同 core.profile 的定 義,除了 Solaris 作業系統叢集,定義另外一個配置是包含 root 及交換的磁碟分割。
entire-distribution.profile
JumpStart 設定檔會安裝 「完整分發 Solaris 作業系統」叢集 (SUNWCall)。如同其 他的設定檔,磁碟分割定義含 root 及交換分割區。
oem.profile
JumpStart 設定檔會安裝 「OEM Solaris 作業系統」叢集 (SUNWCXall)。此叢集為
「完整分發」叢集的超集合,它安裝由 OEM 提供的軟體。
minimal-SunFire_Domain*.profile
備註僅在執行 Solaris 作業系統版本 8 9 的系統上執行這些設定檔。
所有下列設定檔依據 Sun BluePrints OnLine 文摘,其標題為 「Minimizing Domains for Sun Fire V1280, 12K, and 15K Systems」。下列 JumpStart 設定檔與文章內參照的 相同。
minimal-SunFire_Domain-Apps-Solaris8.profileminimal-SunFire_Domain-Apps-Solaris9.profileminimal-SunFire_Domain-NoX-Solaris8.profileminimal-SunFire_Domain-NoX-Solaris9.profileminimal-SunFire_Domain-X-Solaris8.profileminimal-SunFire_Domain-X-Solaris9.profile
5 章 配置及管理 JumpStart 伺服器 75
新增及移除用戶端
add-clientrm-client 程序檔是用來配置伺服器,使伺服器可使用 JumpStart 軟體執行以網路為基礎的用戶端安裝。程序檔位於 JASS_HOME_DIR/bin 目錄中。 JumpStart 模式由將 Solaris Security Toolkit 驅動程式加入 JumpStart 伺服器的 rules 檔案內來控制。
若您尚未將您的環境配置為使用 JumpStart 模式,請參閱第 72 頁 「配置 JumpStart 伺 服器及環境」。
至於 SPARC 基礎系統,add-client 指令可安裝 JumpStart 用戶端及配置 Solaris Security Toolkit 所需之資訊。該指令是從 JumpStart server 執行。
至於 x86/x64 系統,其需要 (安裝) 媒體所提供的 add_install_client 程序檔。
動態主機配置協定 (DHCP) 用戶端,您必須使用 Solaris
add-client 程序檔
JumpStart 伺服器,要簡化新增用戶端,請使用此 Solaris Security Toolkit 軟體內含 的程序檔。下面段落說明了指令及選項,但是並說明底層的 JumpStart 技術。請參閱
Sun BluePrints 文件 「JumpStart Technology: Effective Use in the Solaris Operating Environment」,以取得有關 JumpStart 技術的資訊。
add-client 程序檔是一個 add_install_client 指令的包裝函式,它接受下列引 數。
add-client 指令之提要:
# add-client -c client -i server -m client-class -o client-OS -s sysidcfg
5-1 說明 add-client 指令的有效輸入。
5-1 JumpStart add-client 指令
選項 說明
-c client
-h|-?
-i server
-m client-class
JumpStart 用戶端可分解的主機名稱。
顯示用法資訊。不需搭配其他選項使用。忽略其他選項。
JumpStart 用戶端的 IP 位址或可分解之主機名稱 JumpStart 伺服器介 面。若沒有指定值,會顯示本地主機可用的介面清單。
JumpStart 用戶端的機器類別。它的格式如同 uname -m 指令的輸出格 式。
76 Solaris Security Toolkit 4.2 管理指南 • 2005 年 7
Loading...