我們將在Centos 7安裝及配置OpenVPN 服務,並共使用Windows Client連接OpenVPN。
OpenVPN是一個open source的VPN應用程式(服務),允許使用者通過Internet 安全的建立連線至Private Network。
事情準備:
- CentOS 7 環境
- root權限帳號
- 固定IP (如果有Domain或SubDomain是更好的選擇)
在安裝之前需要先安裝Extra Packages for Enterprise Linux (EPEL) repository,因為OpenVPN並不包含在CentOS的 repository,EPEL是一個很受歡迎的repository.
一. 安裝Open VPN
使用Easy RSA來產生SSL Key當做VPN安全連線使用。
yum install openvpn easy-rsa -y
二. 設定Open VPN
copy一個sample的設定檔來當做預設的config檔案。
cp /usr/share/doc/openvpn-*/sample/sample-config-files/server.conf /etc/openvpn
nano /etc/openvpn/server.conf
A.查看dh的檔案是否為dh2048.pem,筆者安裝時預設已由原本的dh1024.pem改成dh2048.pem了,所以並不需要更動。
B. 如果想要上網均由vpn server端出去的話,把下面redirect-gateway這行mark拿掉,再加上push remote-gateway 主機ip
push “redirect-gateway def1 bypass-dhcp”
push “remote-gateway vpn_server_ip”
push “route 10.8.0.0 255.255.255.0”
C. push dbcp的DNS Service,給client使用的dns,這裡使用Google’s public DNS server
push “dhcp-option DNS 8.8.8.8”
push “dhcp-option DNS 8.8.4.4”
D. 我們希望執行OpenVPN後沒有任何權限
三. 建立 Keys and Certificates
使用Easy RSA來建立keys and Certificates,其它vars的修改部份,並不一定要跟著修改,只是在建立Keys and Certificates都要重新輸入一次
A. 建立一個目錄來存放建立的資料
mkdir -p /etc/openvpn/easy-rsa/keys
B. 把建立key and certificate的script copy過來
cp -rf /usr/share/easy-rsa/2.0/* /etc/openvpn/easy-rsa
C. 修改vars預設值
nano /etc/openvpn/easy-rsa/vars
內容請依實際狀況填寫,建立時也可再行修改
其中
KEN_NAME :請填入server
KEN_CN : 填入domain或是subdoman
Read More