如何在 CentOS6.4 Linux 上安裝和配置 openVPN 服務器


打開VPN 是一個開源軟件應用程序,實現 虛擬專用網絡 (VPN) 創建安全技術 點對點 聯繫 路由或橋接配置和遠程訪問功能。使用使用 SSL / TLS 進行密鑰交換的自定義安全協議。您可以通過網絡地址轉換器 (NAT) 和防火牆。

打開VPN 允許對等方使用預共享密鑰、證書或用戶名/密碼相互進行身份驗證。在多客戶端服務器配置中使用時,服務器可以使用簽名和證書頒發機構在每個客戶端的基礎上頒發認證證書。 它廣泛使用 OpenSSL 加密庫和 SSLv3 / TLSv1 協議,並具有許多安全和控制功能。 OpenVPN 詳細信息

在 CentOS 5.x / 6.0 / 6.1 / 6.2 / 6.3 / 6.4 / 6.5 上安裝 OpenVPN

在開始之前,您需要擁有 企業 Linux 的附加軟件包 ((((埃佩爾) 在服務器上啟用存儲庫。
在 CentOS 5.x / 6.x 上啟用 Epel 存儲庫

# yum update

確保安裝了 Tun / Tap。

# cat /dev/net/tun

它應該返回類似於以下內容的行:

cat: /dev/net/tun: File descriptor in bad state

安裝 這個 打開VPN 來自 EPEL 的包裝:

# yum install openvpn -y

在 CentOS 5.x / 6.0 / 6.1 / 6.2 / 6.3 / 6.4 / 6.5 上配置 OpenVPN

將示例 openVPN 配置文件複製到 /etc/opnvpn

# cp /usr/share/doc/openvpn-2.3.2/sample/sample-config-files/server.conf /etc/openvpn/

編輯 /etc/openvpn/server.conf 文件

# nano /etc/openvpn/server.conf

取消註釋允許客戶端系統流量通過的“push”參數 打開VPN..

push "redirect-gateway def1 bypass-dhcp"

另外,取消註釋下一行。

user nobody
group nobody
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"

使用 easy-rsa 生成密鑰和證書

現在您已經修改了配置文件,生成所需的密鑰和證書。創建所需的文件夾並複製文件。

 # mkdir -p /etc/openvpn/easy-rsa/keys

下載所需的腳本和證書。

# cd /tmp
# wget https://github.com/downloads/OpenVPN/easy-rsa/easy-rsa-2.2.0_master.tar.gz
# tar -xvf easy-rsa-2.2.0_master.tar.gz
# cp /tmp/easy-rsa-2.2.0_master/easy-rsa/2.0/* /etc/openvpn/easy-rsa

文件位於所需位置後,編輯“vars”文件,該文件提供了 easy-rsa 腳本所需的信息。

# nano /etc/openvpn/easy-rsa/vars

更改文件底部的“KEY_”變量。變量名稱具有相當的描述性,您需要輸入適當的信息。
完成後,“vars”文件的底部應如下所示:
export KEY_COUNTRY="US"
export KEY_PROVINCE="CA"
export KEY_CITY="SanFrancisco"
export KEY_ORG="Lin tut"
export KEY_EMAIL="[email protected]"
export [email protected]
export KEY_CN=changeme
export KEY_NAME=changeme
export KEY_OU=changeme
export PKCS11_MODULE_PATH=changeme

然後切換到你的工作目錄,根據上述信息建立一個證書頒發機構或 CA。

cd /etc/openvpn/easy-rsa
source ./vars
./clean-all
./build-ca

現在我們有了 CA,我們將創建一個證書。 打開VPN 服務器。當被問及 構建密鑰服務器回答“是”並發送。

./build-key-server server

您還需要生成 Diffie-Hellman 密鑰交換 使用 build-dh 腳本創建文件並將所有文件複製到 /etc/openvpn 如下:

./build-dh
cd /etc/openvpn/easy-rsa/keys
cp dh1024.pem ca.crt server.crt server.key /etc/openvpn

要允許客戶端進行身份驗證,您需要創建客戶端證書。您可以根據需要重複此操作,為每個客戶端或設備生成唯一的證書和密鑰。如果您使用多個證書對,請使用描述性文件名。

cd /etc/openvpn/easy-rsa
./build-key client

路由配置並啟動 OpenVPN 服務器

使用 sysctl 啟用 IP 轉發。

nano -w /etc/sysctl.conf

# Controls IP packet forwarding
net.ipv4.ip_forward = 1

應用新的 sysctl 設置。

# sysctl -p
# service openvpn start
# chkconfig openvpn on

創建 iptables 規則以正確路由 VPN 子網。

# iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
# service iptables save

配置 OpenVPN 客戶端

最後,讓我們創建一個 server.ovpn 配置文件。為方便起見,您可以使用記事本(或任何其他簡單的文本編輯器工具)在本地計算機上輕鬆創建它。在該文件中,鍵入:
client
dev tun
proto udp
remote ip.add.re.ss 1194 # - Your server IP and OpenVPN Port
resolv-retry infinite
nobind
tun-mtu 1500
tun-mtu-extra 32
mssfix 1450
persist-key
persist-tun
ca ca.crt
auth-user-pass
comp-lzo
reneg-sec 0
verb 3

然後使用 .ovpn 擴展名保存它。將文件保存在安裝位置的 config 目錄中 OpenVPN 客戶端 在你的電腦。

還要檢查如何在 RHEL / Centos6.4 Linux 上安裝 PPTP VPN 服務器。