萬盛學電腦網

 萬盛學電腦網 >> Solaris介紹 >> 給Solaris打補丁 保護系統安全

給Solaris打補丁 保護系統安全

一、solaris補丁介紹  1.1補丁的種類及文件名      solaris的補丁分為兩類,一類是Point補丁,另一類是Cluster補丁。  a)Point補丁程序:        這類補丁僅僅是針對某一問題

一、solaris補丁介紹 

1.1補丁的種類及文件名 
    solaris的補丁分為兩類,一類是Point補丁,另一類是Cluster補丁。 

a)Point補丁程序: 
      這類補丁僅僅是針對某一問題或缺陷而發布的單個補丁程序,solaris7、solaris8、solairs9的Patch一般為*.zip文件solaris2.6一般為.tar.Z或.tar.gz文件,它有如下編號方式:
patch base code-revision num  (如110668-04)
前面部分是這個補丁的主版本號(base code),後面部分是此補丁的修訂號。兩者合起來構成此補丁的Patch-ID。如上例編號為110668-04的補丁,110668為主版本號,04是修訂號。此補丁是在110668-03的基礎上做了新的修復。有一點需要指出,補丁版本號為110668的一系列補丁都是針對 /usr/sbin/in.telnetd 這一文件的不同問題的修復,110668-04發布以後,sun將不再提供110668-04以前的補丁,如110668-03等。 

b) Cluster補丁程序:  
    cluster補丁僅僅是一系列point補丁的重新包裝,並帶有自動安裝程序。Cluster補丁的命名方式如下:
version_Recommended 
如:9_x86_Recommended.zip是針對Solaris 9 for X86的補丁集。 
    8_Recommended.zip是針對Solaris 8 for Sparc 的補丁集。 
    每個Cluster補丁都對應一個CLUSTER_README文件,詳細描述了該Cluster包含的補丁,以及安裝的方法或注意事項。 

1.2 關於補丁的其他信息 
    sun公司對每一版本的solaris都維護了一份Patch Reports,該Patch Reports包含了對應版本solaris所有補丁的描述。Patch Reports每月更新兩次,可以從如下地址得到: 
http://sunsolve.sun.com/pub-cgi/show.pl?target=patches/patch-access&nav=patchpage 

    另外sun還維護了一份Sun Alert Patch Report,該文檔按產品分類,並且隨時更新。從這裡可以找到所有sun產品的更新文檔及相應補丁,當然也包括的solaris的Sun Alert 文檔、Patch ID、簡要說明等。Sun Alert Patch Report從這裡可以得到: 
http://sunsolve.sun.com/pub-cgi/show.pl?target=sunalert_patches 
相應的solaris部分可從如下鏈接得到: 
http://sunsolve.sun.com/pub-cgi/show.pl?target=sunalert_patches#Solaris 
表格按時間排序,從Category表格中可以知道此問題屬於安全缺陷修復還是應用優化。 

二、補丁的下載 
    Cluster補丁可以從如下網址下載:
http://sunsolve.sun.com/pub-cgi/show.pl?target=patches/patch-access&nav=patchpage 
同樣可以使用FTP協議下載,在sunsolve.sun.com的/pacthroot/clusters可以找到所有的Cluster補丁。下載後為一個*_Recommended.zip文件。該壓縮文件包含一份CLUSTER_README文件,建議安裝前閱讀此文件。 
    Point補丁由於其分散性不易下載與管理,可以使用Sun Alert Patch Report或Patch Reports來查看補丁情況,這兩份文檔相應的Patch ID及對應下載地址。另外sun網站提供的Patch Finder 功能也可以使我們在知道Patch ID的情況下很方便的找到該補丁,連接如下: 
http://sunsolve.sun.com/pub-cgi/show.pl?target=patches/patch-access&nav=patchpage 
同樣,利用ftp協議從sunsolve.sun.com的/patchroot/all_unsigned目錄下也可以下載指定Patch。 
    Sun公司建議所有下載的補丁都放到/var/tmp目錄下(這也是通常的做法),如此將不會導致補丁安裝時出現的任何permission/ownership的問題。

三、solaris補丁的安裝和刪除 

3.1 /var/sadm/patch目錄 
    在/var/sadm/patch目錄下,記錄了已安裝的補丁。 
    如: # ls /var/sadm/patch  
    107558-05 107594-04 107630-01 107663-01 107683-01  
    107696-01 107817-01 107582-01 107612-06 107640-03 
    建議不要對此目錄做任何修改,此目錄被破壞後將不能安裝或刪除任何補丁。 

3.2 管理solaris補丁 
    Solaris提供了兩個命令來管理補丁,patchadd和patchrm。這兩個命令是在Solaris 2.6版本開始提供的,在2.6以前的版本中,每個補丁包中都提供了一個installpatch 程序和一個backoutpatch 程序來完成補丁的安裝和卸載。
    patchadd用來安裝解壓縮後的補丁程序。patchadd通過調用pkgadd 命令來安裝補丁。安裝補丁前,我們需要將補丁解壓到/var/tmp下安裝。安裝補丁如下命令: 
    # cd /var/tmp 
    # patchadd 110668-04 
    Checking installed patches... 
    Verifying sufficient filesystem capacity (dry run method) 
    Installing patch packages... 
     
    如果當前目錄下有110668-04目錄,patchadd將安裝此補丁。補丁安裝後,系統會備份原文件,以便在以後刪除此補丁。如果使用patchadd -d 選項安裝補丁,系統將不備份源文件,這意味著你將不能在以後刪除此補丁。使用patchadd -p 選項可以檢驗已安裝的patch,例如: 
    # patchadd -p 
    Patch: 106793-01 Obsoletes: Requires: Incompatibles: 
    Packages: SUNWhea 
    . . . 
    同樣,solaris提供了另一命令來查看已安裝的patch: 
    # showrev -p 
    Patch: 106793-01 Obsoletes: Requires: Incompatibles: 
    Packages: SUNWhea 
    . . . 
    patchrm 如果因為某種情況你想卸載某一補丁,你可以使用patchrm命令來完成。此命令通過調用 pkgadd來恢復安裝補丁前的文件備份來卸載補丁。使用Patch-ID作為patchrm的參數就可以卸載補丁: 
    # patchrm 106793-01 
    Checking installed packages and patches... 
    Backing out patch 106793-01... 
    Patch 106793-01 has been backed out. 
    這裡需要說明一下,在如下三種情況下,補丁將不能卸載: 
    1).在安裝patch時,用patchadd -d命令指定patchadd不備份被更新的文件。這樣安裝的patch無法刪除。 
    2).另一patch需要此patch,即存在dependence(關聯性), 如一定要刪掉該patch,先刪掉另一patch。 
    3).要刪的patch已被另一更新的patch廢棄了。如安裝110668-04補丁後,如果以前安裝過110668-03,則110668-03將被110668-04廢棄,110668-03將無法刪除。 

3.3 Cluster補丁的安裝 
    Cluster補丁為單個補丁的集合,下載解壓後,可以通過執行./install_Cluster腳本來完成補丁集的安裝。執行./install_Cluster後,腳本將檢查當前目錄下的patch_order文件,此文件標明了Patch的安裝順序,./install_Cluster將按照patch_order文件給出的順序來安裝patch。如果沒有patch_order文件,則假定當前目錄下所有以1開始的目錄名均為需要安裝的補丁目錄,並且假定這些目錄的名稱次序作為安裝Patch的次序。因此你可以通過修改patch_order文件來決定安裝或不安裝某Patch。 

3.4 安裝Patch時的注意事項 
    由於在安裝Patch時需要更

copyright © 萬盛學電腦網 all rights reserved