CentOS7搭建OpenVPN

CentOS7搭建OpenVPN

文:鐵樂與貓

2017年11月份

環境

安裝了虛擬機,嘗試搭建OpenVPN。

  • 公網IP:X.x.x.x
  • 內網IP:172.16.1.218
  • 操作系統:centos7.3 64位
  • openvpn 2.4.4

安裝

第一步、安裝openvpn及所需軟件

  • 安裝EPEL倉庫

    wget http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
    rpm -Uvh epel-release-6-8.noarch.rpm
  • 安裝openvpn

yum install openvpn

上圖中可以看出有可能第一次我嘗試編譯安裝時沒有將依賴所需的lz4包裝上會有點問題。
另外安裝上epel倉庫後,獲取到的openvpn包也比較新吶。

  • 安裝openvpn最新的easy-rsa

該包用來製作ca證書,服務端證書,客戶端證書。
最新的爲easy-rsa3。

  • 將解壓得到的文件夾easy-rsa-master重命名爲easy-rsa

    mv easy-rsa-mater/ easy-rsa/
    然後將easy-ras文件夾複製到/etc/openvpn/目錄下
    cp -R easy-rsa/ /etc/openvpn/

第二步、編輯vars文件,根據自己環境配置

  • 進入/etc/openvpn/easy-rsa/easyrsa3目錄
    cd /etc/openvpn/easy-rsa/easyrsa3/

  • 複製vars.example爲vars
    cp vars.example vars

  • 修改下面字段

    • 命令:vim vars,然後修改,最後wq保存
    //以下字段根據自己實際情況更改,這些信息前面是有#註釋的,去掉#號
    
    set_var EASYRSA_REQ_COUNTRY “CN” #國家
    set_var EASYRSA_REQ_PROVINCE “GuangDong” #省份
    set_var EASYRSA_REQ_CITY “GuangZhou” #城市
    set_var EASYRSA_REQ_ORG “tielemao” #非盈利組織,此處可填公司之類
    set_var EASYRSA_REQ_EMAIL “[email protected]#郵箱地址
    set_var EASYRSA_REQ_OU “My OpenVPN” #組織單元
    

這個vars文件似乎也不是很重要,不過填上一些信息也無不可?

第三步、創建服務端證書及key

  • 進入/etc/openvpn/easy-rsa/easyrsa3/目錄初始化./easyrsa init-pki

    [root@yunwei_OpenVPN easyrsa3]# ./easyrsa init-pki
    
    Note: using Easy-RSA configuration from: ./vars
    
    init-pki complete; you may now create a CA or requests.
    Your newly created PKI dir is: /etc/openvpn/easy-rsa/easyrsa3/pki
  • 創建根證書
    ./easyrsa build-ca
    如下圖:


注意:在上述部分需要輸入PEM密碼 PEM pass phrase,輸入兩次,此密碼必須記住,不然以後不能爲證書籤名。
這裏密碼測試的時候我輸入了比較好記的ABCabc123。
還需要輸入common name 通用名,自定義一個好記的。
生成的根證書文件爲:/etc/openvpn/easy-rsa/easyrsa3/pki/ca.crt

  • 創建服務器端證書
    ./easyrsa gen-req server nopass
    如下圖:

同樣起個好記的通用名字,不過就不能和前面根證書的一樣。
生成的文件有兩個,注意這個時候這兩個文件還不是服務端證書:

req: /etc/openvpn/easy-rsa/easyrsa3/pki/reqs/server.req
key: /etc/openvpn/easy-rsa/easyrsa3/pki/private/server.key
  • 簽約服務端證書:
    • ./easyrsa sign server server
    • 注,這裏前一個server是命令表示註冊的是server端,後一個server是可以自行定義的名字,
      但是要和前面命令起的名字一致,我這裏一致都是server。
      如下圖:

要輸入yes確認才能繼續操作下去,
輸入之前創建根證書的時候輸入的PEM密碼,如果忘記了就得從創建根證書重新做起了。
最終生成服務端的證書,crt格式:
/etc/openvpn/easy-rsa/easyrsa3/pki/issued/server.crt

  • 創建Diffie-Hellman,確保key穿越不安全網絡的命令:
    ./easyrsa gen-dh
    如下圖:

  • 生成dh.pem文件:
    /etc/openvpn/easy-rsa/easyrsa3/pki/dh.pem

第四步、創建客戶端證書

  • 新建client文件夾

進入root目錄新建client文件夾,文件夾可隨意命名,然後拷貝前面解壓得到的easy-ras文件夾到client文件夾,進入下列目錄:

cd /root/
mkdir client && cd client
cp -R /root/easy-rsa/ client/

:這裏我是將之前下載的master.zip解壓和命令了放置在root下了,所以路徑是/root/easy-rsa

實驗的時候要根據自己的實際情況操作。

cd client/easy-rsa/easyrsa3/

  • 初始化

    ./easyrsa init-pki

注:其實和之前創建服務端證書前的操作無二,不同的是這次是將easy-rsa的目錄放用戶家目錄下。
其實理解原理後,跳過這兩步,也可以考慮反覆只用/etc/openvpn/easy-rsa這個目錄去操作。

  • 創建客戶端key及生成證書(記住和之前的操作一樣生成時是自己輸入的密碼)
    ./easyrsa gen-req client-wwz //名字自己定義
[root@yunwei_OpenVPN easyrsa3]# ./easyrsa gen-req client-wwz
Generating a 2048 bit RSA private key
...........................+++...............................................................................+++
writing new private key to '/root/client/easy-rsa/easyrsa3/pki/private/client-wwz.key.fXcHCDk8k1'
Enter PEM pass phrase:

## Verifying - Enter PEM pass phrase:

You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,

## If you enter '.', the field will be left blank.

Common Name (eg: your user, host, or server name) [client-wwz]:

Keypair and certificate request completed. Your files are:
req: /root/client/easy-rsa/easyrsa3/pki/reqs/client-wwz.req
key: /root/client/easy-rsa/easyrsa3/pki/private/client-wwz.key
  • 將生成的client-wwz.req導入然後簽約客戶端證書

返回到/etc/openvpn/easy-rsa/easyrsa3/
cd /etc/openvpn/easy-rsa/easyrsa3/
導入req

./root/client/easy-rsa/easyrsa3/pki/reqs/client-wwz.req client-wwz

[root@yunwei_OpenVPN easyrsa3]# cd /etc/openvpn/easy-rsa/easyrsa3/
[root@yunwei_OpenVPN easyrsa3]# pwd
/etc/openvpn/easy-rsa/easyrsa3
[root@yunwei_OpenVPN easyrsa3]# ./easyrsa import-req /root/client/easy-rsa/easyrsa3/pki/reqs/client-wwz.req client-wwz

Note: using Easy-RSA configuration from: ./vars

The request has been successfully imported with a short name of: client-wwz

## You may now use this name to perform signing operations on this request.

簽約證書
./easyrsa sign client client-wwz
//這裏生成client所以必須爲client,client-wwz要與之前導入名字一致
上面簽約證書跟server類似,就不截圖了,但是期間還是要輸入CA的密碼

------

[root@yunwei_OpenVPN easyrsa3]# ./easyrsa sign client client-wwz

Note: using Easy-RSA configuration from: ./vars

You are about to sign the following certificate.
Please check over the details shown below for accuracy. Note that this request
has not been cryptographically verified. Please be sure it came from a trusted
source or that you have verified the request checksum with the sender.

Request subject, to be signed as a client certificate for 3650 days:

subject=
commonName = client-wwz

Type the word 'yes' to continue, or any other input to abort.
Confirm request details: yes
Using configuration from ./openssl-easyrsa.cnf
Enter pass phrase for /etc/openvpn/easy-rsa/easyrsa3/pki/private/ca.key:
Check that the request matches the signature
Signature ok
The Subject's Distinguished Name is as follows
commonName :ASN.1 12:'client-wwz'
Certificate is to be certified until Nov 9 07:10:14 2027 GMT (3650 days)

Write out database with 1 new entries
Data Base Updated

## Certificate created at: /etc/openvpn/easy-rsa/easyrsa3/pki/issued/client-wwz.crt

客戶端的證書client-wwz.crt路徑在/etc/openvpn/easy-rsa/easyrsa3/pki/issued/client-wwz.crt

  • 現在梳理一下上面都生成了些什麼東西:

    • 服務端:etc/openvpn/easy-rsa/文件夾
    /etc/openvpn/easy-rsa/easyrsa3/pki/ca.crt
    /etc/openvpn/easy-rsa/easyrsa3/pki/reqs/server.req
    /etc/openvpn/easy-rsa/easyrsa3/pki/reqs/client.req
    /etc/openvpn/easy-rsa/easyrsa3/pki/private/ca.key
    /etc/openvpn/easy-rsa/easyrsa3/pki/private/server.key
    /etc/openvpn/easy-rsa/easyrsa3/pki/issued/server.crt
    /etc/openvpn/easy-rsa/easyrsa3/pki/issued/client-ww.crt
    /etc/openvpn/easy-rsa/easyrsa3/pki/dh.pem

    重要的是pki/issued目錄下的服務端和客戶端這兩個證書

    • 客戶端:root/client/easy-rsa文件夾
    /root/client/easy-rsa/easyrsa3/pki/private/clinet-wwz.key
    /root/client/easy-rsa/easyrsa3/pki/reqs/client.req
    //這個文件被我們導入到了服務端文件所以那裏也有

    感覺這裏都不太重要了,其實是沒必要特意在root家目錄下再弄這一出。
    下次統一用/etc/openvpn/easy-rsa/easyrsa3下操作創建客戶端證書等也可。

第五步、拷貝生成的證書放置回openvpn目錄

  • 拷貝證書等文件放入到相應位置。

將下列文件放到/etc/openvpn/ 目錄:

cp /etc/openvpn/easy-rsa/easyrsa3/pki/ca.crt /etc/openvpn
cp /etc/openvpn/easy-rsa/easyrsa3/pki/private/server.key /etc/openvpn
cp /etc/openvpn/easy-rsa/easyrsa3/pki/issued/server.crt /etc/openvpn
cp /etc/openvpn/easy-rsa/easyrsa3/pki/dh.pem /etc/openvpn

這樣就將上述四個文件放入到了/etc/openvpn目錄下

將下列文件放到/root/client 目錄下:

cp /etc/openvpn/easy-rsa/easyrsa3/pki/ca.crt /root/client
cp /etc/openvpn/easy-rsa/easyrsa3/pki/issued/client-wwz.crt /root/client
cp /root/client/easy-rsa/easyrsa3/pki/private/client-wwz.key /root/client

將上述三個文件複製到/root/client目錄。

  • 檢驗:
[root@yunwei_OpenVPN easyrsa3]# ls /etc/openvpn/
ca.crt dh.pem easy-rsa master.zip server.crt server.key

[root@yunwei_OpenVPN easyrsa3]# ls /root/client/
ca.crt client-wwz.crt client-wwz.key easy-rsa

第六步、編寫服務端配置文件

文件都準備好後,就可以進行編寫服務端配置文件了。這就是磨刀不誤砍柴工,萬事俱備,只欠東風!

由於我們是yum安裝的openvpn。
所以相應在/usr/share/doc/下會有對應openvpn版本/sample/sample-config-files目錄下會有一個server.conf文件,
將這個文件複製到/etc/openvpn
cp /usr/share/doc/openvpn-2.4.4/sample/sample-config-files/server.conf /etc/openvpn/

然後修改配置vi server.conf如下:

local 172.16.1.128            # 填自己openvpn服務器的 IP,默認偵聽服務器上的所有ip
port 1194                     # 偵聽端口,默認1194
proto udp                     # 端口協議,默認udp,也可以開啓tcp方便映射轉發。
dev tun                       # 默認創建一個路由IP隧道
ca /etc/openvpn/ca.crt        # 根證書
cert /etc/openvpn/server.crt  # 證書
key /etc/openvpn/server.key   # 私鑰文件/重要保密
dh /etc/openvpn/dh.pem

server 10.66.72.0 255.255.255.0 
# 設置服務器端模式,並提供一個VPN子網,以便於從中爲客戶端分配IP地址。
# 服務器自身會使用10.66.72.1這個ip。

ifconfig-pool-persist ipp.txt 
# 指定用於記錄客戶端和虛擬IP地址的關聯關係的文件。
# 當重啓OpenVPN時,再次連接的客戶端將分配到與上一次分配相同的虛擬IP地址

push “route 192.168.0.0 255.255.0.0# 推送路由信息到客戶端,以允許客戶端能夠連接到服務器背後的其他私有子網。
# (簡而言之,就是允許客戶端訪問VPN服務器自身所在的其他局域網)
# 記住,這些私有子網也要將OpenVPN客戶端的地址池(10.66.72.0/255.255.255.0)反饋回OpenVPN服務器。

push "redirect-gateway def1 bypass-dhcp" 
# 啓用該指令,所有客戶端的默認網關都將重定向到VPN,這將導致諸如web瀏覽器、DNS查詢等所有客戶端流量都經過VPN。
# (爲確保能正常工作,OpenVPN服務器所在計算機可能需要在TUN/TAP接口與以太網之間使用NAT或橋接技術進行連接)
# 這個指令其實挺影響客戶端處的網絡的,比如我就在vpn上阿里雲的服務器後,本地瀏覽網絡會出沒法訪問外網,有必要到阿里雲vpn服務器上註釋掉此指令,而且這樣也會導致雲服務器流量激增,並不利。

push “dhcp-option DNS 119.29.29.29# 某些具體的Windows網絡設置可以被推送到客戶端,例如DNS或WINS服務器地址。
# 實際上可用於推送內網dns或阿里內網dns等。

keepalive 10 120 
# keepalive指令將導致類似於ping命令的消息被來回發送,以便於服務器端和客戶端知道對方何時被關閉。
# 默認每10秒鐘ping一次,如果120秒內都沒有收到對方的回覆,則表示遠程連接已經關閉。比較頻繁,建議改成30 240?

comp-lzo 
# 在VPN連接上啓用壓縮。如果你在此處啓用了該指令,那麼也應該在每個客戶端配置文件中啓用它。

max-clients 100 #默認最大客戶端連接100,爲安全可限到12# 持久化選項可以儘量避免訪問那些在重啓之後由於用戶權限降低而無法訪問的某些資源。

persist-key
persist-tun

status openvpn-status.log # 狀態日誌
# 爲日誌文件設置適當的冗餘級別(0~9)。冗餘級別越高,輸出的信息越詳細。
# 0 表示靜默運行,只記錄致命錯誤。
# 4 表示合理的常規用法。
# 5 和 6 可以幫助調試連接錯誤。
# 9 表示極度冗餘,輸出非常詳細的日誌信息。
## verb 3

還有許多詳細配置,可查看官網說明。

第七步、啓動openvpn服務

VMware虛擬機可能還需加載tun內核模塊並啓用轉發。

  • 加載tun內核模塊並啓用轉發。
    加載tun內核模塊以便於openvpn生成虛擬網卡。

    - [root@yunwei_OpenVPN openvpn]# modprobe tun
    檢驗加載成功沒有
    [root@yunwei_OpenVPN openvpn]# lsmod | grep tun
    tun 31621 0
    啓用轉發
    [root@yunwei_OpenVPN openvpn]# echo 1 > /proc/sys/net/ipv4/ip_forward
    檢驗
    [root@yunwei_OpenVPN openvpn]# cat /proc/sys/net/ipv4/ip_forward
    1
    [root@yunwei_OpenVPN openvpn]# locate tun.ko
    /usr/lib/modules/3.10.0-514.el7.x86_64/kernel/drivers/net/tun.ko
    /usr/lib/modules/3.10.0-693.5.2.el7.x86_64/kernel/drivers/net/tun.ko.xz
    
    [root@yunwei_OpenVPN openvpn]# openvpn --config /etc/openvpn/server.conf
    (注:這種命令還不是在後臺模式運行的)
    Thu Nov 16 17:19:39 2017 OpenVPN 2.4.4 x86_64-redhat-linux-gnu [Fedora EPEL patched][SSL (OpenSSL)] [LZO][LZ4] [EPOLL][PKCS11] [MH/PKTINFO][AEAD] built on Sep 26 2017
    Thu Nov 16 17:19:39 2017 library versions: OpenSSL 1.0.1e-fips 11 Feb 2013, LZO 2.06
    Thu Nov 16 17:19:39 2017 Diffie-Hellman initialized with 2048 bit key
    Thu Nov 16 17:19:39 2017 Failed to extract curve from certificate (UNDEF), using secp384r1 instead.
    Thu Nov 16 17:19:39 2017 ECDH curve secp384r1 added
    Thu Nov 16 17:19:39 2017 ROUTE_GATEWAY 172.16.1.2/255.255.255.0 IFACE=ens33 HWADDR=00:0c:29:96:0a:fe
    Thu Nov 16 17:19:39 2017 TUN/TAP device tun0 opened
    Thu Nov 16 17:19:39 2017 TUN/TAP TX queue length set to 100
    Thu Nov 16 17:19:39 2017 do_ifconfig, tt->did_ifconfig_ipv6_setup=0
    Thu Nov 16 17:19:39 2017 /sbin/ip link set dev tun0 up mtu 1500
    Thu Nov 16 17:19:39 2017 /sbin/ip addr add dev tun0 local 10.66.72.1 peer 10.66.72.2
    Thu Nov 16 17:19:39 2017 /sbin/ip route add 10.66.72.0/24 via 10.66.72.2
    Thu Nov 16 17:19:39 2017 Could not determine IPv4/IPv6 protocol. Using AF_INET
    Thu Nov 16 17:19:39 2017 Socket Buffers: R=[212992->212992] S=[212992->212992]
    Thu Nov 16 17:19:39 2017 UDPv4 link local (bound): [AF_INET][undef]:1194
    Thu Nov 16 17:19:39 2017 UDPv4 link remote: [AF_UNSPEC]
    Thu Nov 16 17:19:39 2017 MULTI: multi_init called, r=256 v=256
    Thu Nov 16 17:19:39 2017 IFCONFIG POOL: base=10.66.72.4 size=62, ipv6=0
    Thu Nov 16 17:19:39 2017 IFCONFIG POOL LIST
    Thu Nov 16 17:19:39 2017 Initialization Sequence Completed

openvpn --daemon --config /etc/openvpn/server.conf運行則是在後臺模式。
最後我還是以systemctl start openvpn 運行的。
因爲我是yum安裝的,使用systemctl來啓動和停止openvpn挺方便的。

第八步、下載windows openvpn客戶端,並進行配置。

  • 用sftp之類將在openvpn服務器生成的客戶端證書和key下載到客戶端電腦。
    ca.crt client-wwz.crt client-wwz.key //這三個文件

  • 去官網下載openvpn客戶端進行安裝,然後安裝目錄找到simple-config
    D:\Program Files\OpenVPN\sample-config\client.ovpn

將client.ovpn 複製到D:\Program Files\OpenVPN\ToVMware(文件夾可以自己新建定義)下,根據自己實際安裝情況選擇.
將下載到的三個文件放入D:\Program Files\OpenVPN\ToVMware下然後編輯client.ovpn配置文件:

  • 編輯配置文件:

    client
    dev tun
    proto udp
    remote 172.16.1.128 1194 //主要這裏修改成openvpn服務器的ip
    resolv-retry infinite
    nobind
    persist-key
    persist-tun
    ca ca.crt 
    // 這裏需要證書,之前和配置文件放同一文件夾下了,理論上不需要敲絕對路徑也能找到,
    // 然而後面發現客戶端導入配置文件後目錄又是在另外路徑下,以致還是要敲絕對路徑。
    cert client-wwz.crt
    key client-wwz.key
    comp-lzo
    verb 3

    簡單應用的話我們只需要以上項目每行一個,複雜些應用的話可以參照官方具體配置文檔。

    • 補充:

    正確的配置證書路徑爲:

    ca D:\\Programs\\OpenVPN\\ToVMware\\ca.crt
    cert D:\\Programs\\OpenVPN\\ToVMware\\client-wwz.crt
    key D:\\Programs\\OpenVPN\\ToVMware\\client-wwz.key
  • 打開openvpn客戶端,右鍵彈出菜單,選擇導入配置文件

選中之前編輯好的配置文件,點擊連接


結果報錯,查看錯誤日誌得知

Options error: --ca fails with 'ca.crt': No such file or directory
Options error: --cert fails with 'client.crt': No such file or directory
Thu Dec 07 16:06:09 2017 WARNING: cannot stat file 'client.key': 系統找不到指定的文件。 (errno=2)
Options error: --key fails with 'client.key': No such file or directory
Options error: Please correct these errors.
Use --help for more information.

原來這些認證文件還是得指明絕對路徑阿……
修改配置文件(注意,運行時修改要直接在客戶端中選擇Edit Config)
(因爲導入之後,它實際的路徑是C:\Users\Administrator\OpenVPN\confing\client\client.ovpn

ca D:\Programs\OpenVPN\ToVMware\ca.crt
cert D:\Programs\OpenVPN\ToVMware\client-wwz.crt
key D:\Programs\OpenVPN\ToVMware\client-wwz.key

繼續報錯,還好這次是報我路徑寫錯了

Options warning: Bad backslash ('\') usage in client.ovpn:89: remember that backslashes are treated as shell-escapes and if you need to pass backslash characters as part of a Windows filename, you should use double backslashes such as "c:\\openvpn\\static.key"
Use --help for more information.

看來我要寫成

ca D:\\Programs\\OpenVPN\\ToVMware\\ca.crt
cert D:\\Programs\\OpenVPN\\ToVMware\\client-wwz.crt
key D:\\Programs\\OpenVPN\\ToVMware\\client-wwz.key

這次總算是對了。雖然也有不指明路徑而是將證書內容一併合併到配置文件上的做法,但這樣一來就不算安全了。

這裏還好我還記得是輸了啥密碼的,果然這個密碼是要記住的呢!!
此密碼也可以點選save password,這樣在常用的電腦上不用每次都輸密碼,不過不記住也更安全。
輸完之後連接成功(好吧,其實我還多了步操作,開放openvpn服務器中的防火牆!systemctl stop firewalld, 當然生產環境不是關閉防火牆,而是設置開放對openvpn端口的規則)


windows版本的客戶端連接Linux的openvpn服務端是搞懂了,再進行測試linux客戶端。

第九步 Linux openvpn客戶端連接服務端測試

做爲測試,這次我在centos6.9上安裝openvpn客戶端連接centos7.3的openvpn服務端。
同樣使用yum install openvpn省事,後面主要是修改運行配置文件指定爲client端。

  • 在客戶端openvpn主目錄/etc/openvpn下新建config目錄,
    同樣將服務端的ca.crtclient-wwz.crtclient-wwz.key放置進去。

複製一份客戶端配置範例進config目錄,這裏要注意的是,之前windows用的配置文件後綴名爲.ovpn,到了linux用的就是.conf了!

cp /usr/share/doc/openvpn-2.4.4/sample/sample-config-files/client.conf /etc/openvpn/config/client.conf
  • 編輯配置文件:
client         # 指定當前VPN是客戶端
dev tun        # 必須與服務器端的保持一致
proto udp      # 必須與服務器端的保持一致
remote 172.16.1.128 1194   # 指定連接的遠程服務器的實際IP地址和端口號

resolv-retry infinite    
# 斷線自動重新連接,在網絡不穩定的情況下(例如:筆記本電腦無線網絡)非常有用。

nobind         # 不綁定特定的本地端口號
persist-key
persist-tun

ca /etc/openvpn/config/ca.crt                 # 指定CA證書的文件路徑
cert /etc/openvpn/config/client-wwz.crt       # 指定當前客戶端的證書文件路徑
key /etc/openvpn/config/client-wwz.key        # 指定當前客戶端的私鑰文件路徑

ns-cert-type server      # 指定採用服務器校驗方式

# tls-auth ta.key 1     
#如果服務器設置了防禦DoS等攻擊的ta.key,則必須每個客戶端開啓;如果未設置,則註釋掉這一行;

comp-lzo              #與服務器保持一致
verb 3                #指定日誌文件的記錄詳細級別,可選0-9,等級越高日誌內容越詳細
  • 注意:

    • 配置文件中的文件路徑涉及到相對路徑的,均以啓動OpenVPN時的所在目錄爲準。
      由於在配置文件中設置的文件路徑都是相對config目錄的路徑,因此也只能在config目錄下才能正常啓動OpenVPN。如果想在任何地方都能使用上述命令啓動OpenVPN,建議將配置文件與文件路徑相關的部分全部改爲絕對路徑。
    • OpenVPN服務器所在計算機必須允許OpenVPN通過防火牆,你可以禁用掉防火牆,或者將OpenVPN設爲可信程序,或者開放1194端口。
      -A INPUT -p udp --dport 1194 -j ACCEPT
    • 啓動服務器和客戶端都需要一定的權限,建議測試學習時用root賬戶或sudo命令進行啓動。
  • 運行openvpn客戶端:

openvpn --daemon --cd 配置文件路徑 --config client.ovpn(配置文件名稱) --log-append /var/log/openvpn/openvpn.log(日誌路徑)

查看日誌成功連接沒有:
tail -f /var/log/openvpn/openvpn.log
到此已經成功了。

  • 設置開機自動連接
    vim /etc/rc.local
openvpn --daemon --cd 配置文件路徑 --config client.ovpn(配置文件名稱) --log-append /var/log/openvpn.log(日誌路徑)
  • 加入到/etc/rc.local配置文件裏。

openvpn的搭建和簡單使用本次就介紹到這裏。

2018-9-7 重新修改成md文件

end

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章