[FrontPage] [TitleIndex] [WordIndex

This is a read-only archived version of wiki.centos.org

在 CentOS 5.x 上使用 vpnc

vpnc 這個程式是用來連線到 CisCO VPN 的。雖然 Cisco 提供一個 Linux 的客戶端,但編譯它的時候,尤其是在 64 位元或多內核的系統上,經常會出現問題。此外,vpnc 可以很快便安裝妥,亦很容易設定。

首先請安裝及啟用 rpmforge 軟件庫。一旦完成後,你便可以這樣安裝 vpnc

yum -y install vpnc 

這樣做會安裝 vpnc,建立一個 /etc/vpnc 目錄及安裝 pcf2vpnc 腳本。/etc/vpnc 這個目錄內藏有一個預設的 vpnc.conf 範本,及 vpnc-script。這個目錄及檔案屬於 root。vpnc-script 必須被設定為可執行的。請以 root 的身份或權限執行

chmod 700 /etc/vpnc/vpnc-script

接著建立一個自訂的 vpnc.conf 檔案。vpnc 預設會先在 /etc/vpnc/ 內找尋一個名叫 defaults.conf 檔案。如何找不到,它會找尋 /etc/vpnc.conf。用戶可以選擇將自訂檔命名為 vpnc.conf 並放置在 /etc 內,或者給它一個獨特的名稱並放置在 /etc/vpnc 內。這個檔案的副檔名必須是 .conf,例如 mycompany.conf。如果你選用一個獨特的名稱,當你使用 vpnc 時,這個 .conf 檔案就是它的參數,但你須要移除副檔名,因此所執行的指令是

vpnc company

在這個範例中,自訂的設定檔名叫 vpnc.conf 而且被放置在 /etc 內。你可以將 /etc/vpnc 內的範例 vpnc.conf 改名來避免有所混淆,但程式本身並不會嘗試使用 /etc/vpnc 內的預設 vpnc.conf。它只會在 /etc 內找尋 vpnc.conf。

下一步是建立自訂的 .conf 檔。你的公司應該為你提供了一個 .pcf 檔。這個檔案內含有數項資料,包括:群組編號、群組密碼、及伺服器的位址。它可能會藏有其它資訊,例如:你的用戶名稱及密碼、及 IKE 驗證模式。

要建立一個供 vpnc 使用的 .conf 檔,請使用 pcf2vpnc 腳本。如何所提供的 pcf 檔名叫 company.pcf,指令便是

pcf2vpnc company.pcf vpnc.conf

你會得到一個信息,表示它因為不能執行 cisco-decrypt 而將密碼以混淆的形式加在檔案內。這是沒有問題的。cisco-decrypt 這個腳本原來可以解讀 pcf 檔內加密了的密碼,但 vpnc 可以直接使用加密了的密碼。另外還有一個信息是關於 vpnc.conf 擁有 100664 的權限,以及一個關於修正權限的信息。請照著做。假設你是以 root 的身份或權限來做上面的步驟,而檔案屬於 root。如果這不屬實,請先更改它的擁有者。

chown root vpnc.conf

接著設定只有 root 能讀寫它。

chmod 600 vpnc.conf
mv vpnc.conf /etc/

如果你的個別戶用名稱及密碼存在於 pcf 檔內,它們亦會被包含到新建立的 vpnc.conf 檔案內。這是十分罕見的,而檔案內最常見的是以下兩行

# Xauth username <your username>
# Xauth password <your password>

你可以選擇加入用戶名稱及密碼(移除這兩行的註釋),或者假若你較喜歡每次輸入用戶名稱及密碼,將它們改為

Xauth interactive

由於 Cisco VPN 或許會提供自已的 DNS 伺服器,vpnc-script 會將 /etc/resolv.conf 備份並取代這個檔案。如無意外的話,當你斷線後,它會將備份了的 /etc/resolv.conf 還原,但讀者可能會想在執行指令前自行複製,以防萬一。

cp /etc/resolv.conf /etc/resolv.conf.orig

一旦你完成這個步驟後,你便可以輸入以下指令來使用程式(以 root 的身份或權限)

vpnc

當你不再需要 vpnc 工作階段時,請這樣斷線

vpnc-disconnect

斷線後,讀者可能會想確定 vpnc-script 已經還原了 /etc/resolv.conf。如何它未能這樣做,而你又遁照上面的建議將 resolv.conf 備份,你可以手動式地將它放回原處

cp /etc/resolv.conf.orig /etc/resolv.conf

這個步驟一般沒有必要,除非你用完後忘記了斷線,導致工作階段逾時,因而你公司(很可能是內部)的名稱伺服器被遺留在 Cisco VPN 所建立的 resolv.conf 內。

Translation of revision 5


2023-09-11 07:23