歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux綜合 >> Linux資訊 >> 更多Linux

在Solaris和Linux之間實現IPSec連接

  企業在逐步向全球市場邁進的過程中,隨著企業的職員分布到世界各地,我們迫切需要在不同地理位置和千差萬別的操作系統之間建立網絡連接。與此同時,我們還必須保護自己的系統以及系統之間傳輸的數據,使之具有一定的安全性。  在不同的平台之間建立安全連接有一種最常用的方法,這就是采用IPSec(IP安全協議:IP Security Protocol)。IPSec在網絡的IP層上提供加密服務以支持數據來源認證、數據的完整性和機密性。IPSec的使用對用戶和網絡應用都是完全透明的,這使之成為改進現有網絡服務安全性的一個很吸引人的方案。在這篇文章裡,我就將告訴你如何建立和配置Solaris和Linux計算機之間的IPSec連接。  IPSec標准在Linux系統上的實現就是FreeS/WAN;Solaris在Solaris 8版本上也提供了自己的標准實現產品。因為兩種系統所實現的軟件包都遵從標准協議,所以兩者之間建立相互通信並不困難。現在就讓我們從頭開始在兩種系統之間設置連接。在我們所舉的例子中,Solaris機器裝備了Sparc20處理器,運行著Solaris 8,而Linux系統則是一台膝上計算機,運行Mandrake Linux的一個經過大量修改後的分發版本。  Solaris設置  Solaris 8 系統支持IPSec,但是,由於出口限制的問題,系統光盤上並沒有包含實現IPSec所必需的全部軟件。為了采用IPSec,你必須下載和安裝Solaris 8附帶加密包。  假如你手頭沒有Sun下載中心的用戶ID,那麼你首先得提供自己的有關信息注冊。注冊成功之後登錄網站,即可在Individual Solaris Sparc Downloads欄目下載Solaris 8 附帶加密工具包。    下載完成後,把軟件包解壓縮並如清單A所示安裝它。    選擇所有安裝需要的可用包,安裝完成之後重新啟動系統。    接下來在/etc/inet/ipseckey目錄下創建安全關聯,如清單B所示。    修改文件權屬,保證只能由root用戶讀取:  chmod 0600 /etc/inet/ipseckey    輸入IPSec隧道通信兩側的IP地址、加密方法和秘鑰。    然後裝載Security Association數據庫:  ipseckey -f /etc/inet/ipseckey    現在你可以用ipseckeydump查看數據庫內容了。    接著,編輯 /etc/inet/ipsecinit.conf,對受到保護的端口流量設置安全策略。文件中的條目可以定義端口、IP地址或者子網,如清單C所示。    以上是在Solaris一側完成的操作。如果一切順利,現在你就可以重新啟動系統,同時你需要運行ipseckey dump和ipsecconf裝載配置參數。  Linux配置  對Linux來說,除非你得到的版本已經包括了FreeS/WAN軟件包,否則你必須從網絡上下載。FreeS/WAN 軟件包包括必須同系統內核源代碼一同重構的內核模塊以及設置IPSec連接的有關實用程序。FreeS/WAN的文檔對以上的組成部分和有關安裝過程做了比較詳細的說明。源代碼和文檔都可以從FreeS/WAN下載。你從以下站點還可以獲得最新的穩定版:  FTP://ftp.xs4all.nl/pub/crypto/freeswan/freeswan-\*    還有,假如你的Linux版本沒有提供FreeS/WAN,那麼你需要用FreeS/WAN補丁程序編譯系統內核才能啟用IPSec。假如你的內核源代碼在/usr/src/linux目錄下,而其配置符合你正在運行的實際內核,那麼FreeS/WAN 的安裝一點不難,如清單D所示。  以上的措施照顧到了所有的補丁修正、內核配置以及針對你的系統的特定安裝。


另外,你還可以創建/安裝個人修改的此類軟件或采用其他創建選項創造你自己的RPM。  Linux機器上的配置是/etc/ipsec.conf,如清單E所示。  Solaris的IPSec實現只能使用手工設置密鑰模式而非自動密鑰模式。配置內容中的第一節由基本配置選項組成,對任何安裝都是最常用的,然後是附加的條目,手工地啟動我們的Sparc連接。  Conn條目說明了參予連接的兩個IP地址,這同我們在Solaris機器上定義的加密條目是一樣的。大多數Linux IPSec實現都附帶了init腳本,你可以這樣啟動:  /etc/rc.d/init.d/ipsec start    清單F顯示了如何查看裝載的配置。    注意路由條目,包括普通的的eth0條目和附加的ipsec0 路由。    假定在啟用IPSec之前你能在2台機器之間建立網絡連接。然後經過以上配置假如兩台機器之間突然停止工作,那很可能是由於你的配置文件內容有誤或在Solaris方面不能啟用ipseckey 。你最好查看系統日志記錄找到問題的原因所在。    Solaris:  tail -f /var/adm/messages    Linux:  tail -f /var/log.messages    那麼我們如何才能得知網絡連接真正加密了呢?這很簡單,你可以在Solar計算機上用snoop監視連接。清單G顯示了一個Telnet會話過程的記錄,我們知道Telnet因為明文傳輸用戶名和密碼而在安全問題上備受關注。不過,正如你能看到的那樣,在嗅探接口時,並不存在清楚可讀的文本。  數據封裝  以上就是在Solaris和Linux系統之間設置安全連接的過程。盡管在我們例子中,兩個系統都位於同一網絡上,但是,通過因特網或其他一些不受信網絡設置安全的連接隧道也是可能的。兩台機器仍然可以同其他客戶程序建立普通的、不安全的連接,但是在它們之間的所有流量都被加密了。IPSec 的優點比ssh或者其它加密連接類型都更為突出,原因是IPSec能在客戶之間加密所有的流量而非針對有限的協議類型。  本文的所有連接請點這裡



Copyright © Linux教程網 All Rights Reserved