個人原創禁止轉載 軟體環境: Centos6.9 x64 openvpn-2.4.3-1.el6.x86_64.rpm easy-rsa-2.2.2-1.el6.noarch.rpm #推薦使用2.2的版本 pkcs11-helper-1.11-3.el6.x86_64.rpm 網路環境: open ...
個人原創禁止轉載
軟體環境:
Centos6.9 x64
openvpn-2.4.3-1.el6.x86_64.rpm
easy-rsa-2.2.2-1.el6.noarch.rpm #推薦使用2.2的版本
pkcs11-helper-1.11-3.el6.x86_64.rpm
網路環境:
openvpn server:192.168.98.130
client:192.168.98.134
服務端安裝步驟:
# 本次安裝採用rpm方式安裝無需編譯,首先安裝openvpn以及相關依賴包
# rpm -ivh pkcs11-helper-1.11-3.el6.x86_64.rpm
# rpm -ivh openvpn-2.4.3-1.el6.x86_64.rpm
# rpm -ivh easy-rsa-2.2.2-1.el6.noarch.rpm
# 創建並編輯配置文件
# vim /etc/openvpn/server.conf
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
port 1194 #指定監聽的本機埠號
proto udp #指定採用的傳輸協議,可以選擇tcp或udp
dev tun
ca ca.crt #指定CA證書的文件路徑
cert server.crt #指定伺服器端的證書文件路徑
key server.key #指定伺服器端的私鑰文件路徑
dh dh2048.pem #指定迪菲赫爾曼參數的文件路徑
server 172.16.2.0 255.255.255.0 #指定客戶端網段,此處配置的伺服器自身占用172.16.2.1
push "route 10.10.0.0 255.255.0.0" #指定策略路由,訪問10.10.0.0網段時才經過openvpn
ifconfig -pool-persist ipp.txt #將IP分配信息存儲到ipp.txt
client-to-client
keepalive 10 120
comp-lzo
persist-key
persist-tun
status openvpn-status.log
log-append openvpn.log #日誌存放路徑
verb 3 #日誌級別
|
# 接下來配置證書
# mkdir -p /etc/openvpn/easy-rsa/keys
# cp -a /usr/share/easy-rsa/2.0/* /etc/openvpn/easy-rsa/
# vim /etc/openvpn/easy-rsa/vars
1 2 3 4 5 6 7 8 |
export KEY_COUNTRY= "CN" #國家
export KEY_PROVINCE= "BJ" #省
export KEY_CITY= "Bei Jing" #市
export KEY_ORG= "test" #定義所在的組織
export KEY_EMAIL= "[email protected]" #郵箱
export KEY_OU= "test" #定義所在的單位
export KEY_NAME= "vpnserver" #定義openvpn伺服器的名稱
export KEY_CN= "test" 這行配置,前邊預設的“ #”號註釋去掉
|
# cp /etc/openvpn/easy-rsa/openssl-1.0.0.cnf /etc/openvpn/easy-rsa/openssl.cnf
# cd /etc/openvpn/easy-rsa
# source ./vars
# ./clean-all
# ./build-ca #一路回車即可
# 創建服務端證書
# ./build-key-server server #創建名字為server的伺服器證書,註意如下輸入用戶名和名字
A challenge password []:password
An optional company name []:vpnserver
按兩次Y
# 創建客戶端證書
# ./build-dh #創建秘鑰
# ./build-key client #創建名稱為client的客戶端證書,用戶名和密碼要和服務端統一
A challenge password []:password
An optional company name []:vpnserver
按兩次Y
# 防火牆設置
# iptables -I INPUT -p tcp --dport 1194 -j ACCEPT #放行1194埠
# vi /etc/sysctl.conf #編輯配置文件,添加以下配置,設置永久路由轉發
# sysctl -p
# 配置NAT
# iptables -t nat -A POSTROUTING -s 172.16.2.0/24 -j SNAT --to-source 192.168.98.130
# 拷貝伺服器證書到相應路徑
# cd /etc/openvpn/easy-rsa/keys
# cp dh2048.pem ca.crt server.crt server.key /etc/openvpn
# 客戶端所用到的證書
ca.crt
client.crt
client.key
# 啟動openvpn
# service openvpn start
配置windows客戶端
# 安裝openvpn https://www.techspot.com/downloads/5182-openvpn.html
# 將客戶端證書保存到openvpn安裝目錄中config下
# 在config目錄下創建並編輯配置文件sample.ovpn
client
dev tun
proto udp
remote 192.168.98.130 1194 #伺服器地址
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt #客戶端證書
cert client.crt #客戶端證書
key client.key #客戶端證書
ns-cert-type server
comp-lzo
verb 3
# 啟動openvpn雙擊右下角openvpn圖標將會自動連接,右下角openvpn圖標變成綠色說明連接成功
配置linux客戶端
# rpm -ivh pkcs11-helper-1.11-3.el6.x86_64.rpm
# rpm -ivh openvpn-2.4.3-1.el6.x86_64.rpm
# 將客戶端證書文件拷貝到/etc/openvpn下
# 創建並編輯配置文件client.conf,內容與windows配置文件一致
# openvpn /etc/openvpn/client.conf & #啟動openvpn客戶端
openvpn客戶端證書的增加
# 先執行vars在運行客戶端證書生成工具
# cd /etc/openvpn/easy-rsa
# source ./vars
# ./build-key client11 #創建名稱為client的客戶端證書,用戶名和密碼要和服務端統一
A challenge password []:password
An optional company name []:vpnserver
按兩次Y