安裝 Strongswan :Linux 上一個基於 IPsec 的 VPN 工具
IPsec是一個提供網路層安全的標準。它包含認證頭(AH)和安全負載封裝(ESP)組件。AH提供包的完整性,ESP組件提供包的保密性。IPsec確保了在網路層的安全特性。
- 保密性
- 資料包完整性
- 來源不可抵賴性
- 重放攻擊防護
Strongswan是一個IPsec協議的開原始碼實現,Strongswan的意思是強安全廣域網路(StrongS/WAN)。它支援IPsec的VPN中的兩個版本的密鑰自動交換(網路金鑰交換(IKE)V1和V2)。
Strongswan基本上提供了在VPN的兩個節點/網關之間自動交換密鑰的共用,然後它使用了Linux核心的IPsec(AH和ESP)實現。密鑰共用使用了之後用於ESP資料加密的IKE 機制。在IKE階段,strongswan使用OpenSSL的密碼編譯演算法(AES,SHA等等)和其他加密類庫。無論如何,IPsec中的ESP組件使用的安全演算法是由Linux核心實現的。Strongswan的主要特性如下:
- x.509認證或基於預先共用金鑰認證
- 支援IKEv1和IKEv2金鑰交換協議
- 可選的,對於外掛程式和庫的內建完整性和加密測試
- 支援橢圓曲線DH群和ECDSA認證
- 在智慧卡上儲存RSA私密金鑰和認證
它能被使用在用戶端/伺服器(road warrior模式)和網關到網關的情景。
如何安裝
幾乎所有的Linux發行版都支援Strongswan的二進位包。在這個教程,我們會從二進位包安裝strongswan,也會從原始碼編譯帶有合適的特性的strongswan。
使用二進位包
可以使用以下命令安裝Strongswan到Ubuntu 14.04 LTS
$ sudo aptitude install strongswan
安裝strongswan
strongswan的全域配置(strongswan.conf)檔案和ipsec配置(ipsec.conf/ipsec.secrets)檔案都在/etc/目錄下。
strongswan源碼編譯安裝的依賴包
- GMP(strongswan使用的高精度數學庫)
- OpenSSL(密碼編譯演算法來自這個庫)
- PKCS(1,7,8,11,12)(認證編碼和智慧卡整合)
步驟
1) 在終端使用下面命令到/usr/src/目錄
$ cd /usr/src
2) 用下面命令從strongswan網站下載原始碼
$ sudo wget http://download.strongswan.org/strongswan-5.2.1.tar.gz
(strongswan-5.2.1.tar.gz 是當前最新版。)
下載軟體
3) 用下面命令提取下載的軟體,然後進入目錄。
$ sudo tar –xvzf strongswan-5.2.1.tar.gz; cd strongswan-5.2.1
4) 使用configure命令配置strongswan每個想要的選項。
$ ./configure --prefix=/usr/local-–enable-pkcs11 -–enable-openssl
檢查strongswan包
如果GMP庫沒有安裝,配置指令碼將會發生下面的錯誤。
GMP library error
因此,首先,使用下面命令安裝GMP庫然後執行配置指令碼。
gmp installation
不過,如果GMP已經安裝還報上述錯誤的話,在Ubuntu上使用如下命令,給在路徑 /usr/lib,/lib/,/usr/lib/x86_64-linux-gnu/ 下的libgmp.so庫建立軟串連。
$ sudo ln -s /usr/lib/x86_64-linux-gnu/libgmp.so.10.1.3/usr/lib/x86_64-linux-gnu/libgmp.so
softlink of libgmp.so library
建立libgmp.so軟串連後,再執行./configure指令碼也許就找到gmp庫了。然而,如果gmp標頭檔發生其他錯誤,像下面這樣。
GMP header file issu
為解決上面的錯誤,使用下面命令安裝libgmp-dev包
$ sudo aptitude install libgmp-dev
Installation of Development library of GMP
安裝gmp的開發庫後,在運行一遍配置指令碼,如果沒有發生錯誤,則將看見下面的這些輸出。
Output of Configure scirpt
使用下面的命令編譯安裝strongswan。
$ sudo make ; sudo make install
安裝strongswan後,全域配置(strongswan.conf)和ipsec策略/密碼設定檔(ipsec.conf/ipsec.secretes)被放在/usr/local/etc目錄。
根據我們的安全需要Strongswan可以用作隧道或者傳輸模式。它提供眾所周知的site-2-site模式和road warrior模式的VPN。它很容易使用在Cisco,Juniper裝置上。
via: http://linoxide.com/security/install-strongswan/
作者:nido 譯者:wyangsun 校對:wxy
本文由 LCTT 原創翻譯,Linux中國 榮譽推出
本文永久更新連結地址: