VPN 代表虛擬專用網(wǎng)絡(luò)。
虛擬專用網(wǎng)絡(luò)使計算機能夠?qū)?shù)據(jù)從一個專用網(wǎng)絡(luò)發(fā)送和接收到另一個通過公共網(wǎng)絡(luò)(Internet)連接的專用網(wǎng)絡(luò)。
這對于那些在公司內(nèi)網(wǎng)之外,并且喜歡安全地連接到辦公網(wǎng)絡(luò)以訪問內(nèi)部服務(wù)器的人來說是有幫助的。當(dāng)您將多個分支機構(gòu)連接在一起時,VPN 也很有幫助。
即使您沒有將多個分支機構(gòu)連接在一起,您仍然可以使用 VPN 設(shè)置讓您的員工從他們的筆記本電腦遠(yuǎn)程連接到數(shù)據(jù)中心并訪問系統(tǒng)。
有時公司會購買專線組成WAN(廣域網(wǎng)),并與分支機構(gòu)進(jìn)行通信。專線雖然安全可靠,但價格昂貴。
VPN 通過通過公共網(wǎng)絡(luò)提供點對點虛擬連接來填補這一空白。VPN 可以擴展以輕松容納不同地理位置的更多用戶。
VPN的類型
概括地說,以下是兩種類型的 VPN:
遠(yuǎn)程訪問
站點到站點
遠(yuǎn)程訪問是通過 VPN 將個人計算機連接到網(wǎng)絡(luò)。“站點到站點”通過 VPN 將兩個網(wǎng)絡(luò)連接在一起。
什么是 OpenVPN
來自 OpenVPN 人:
OpenVPN 是 James Yonan 的開源 VPN 守護(hù)程序。OpenVPN 是一個強大且高度靈活的 VPN 守護(hù)程序。OpenVPN 支持 SSL/TLS 安全性、以太網(wǎng)橋接、通過代理或 NAT 的 TCP 或 UDP 隧道傳輸、對動態(tài) IP 地址和 DHCP 的支持、對成百上千用戶的可擴展性以及對大多數(shù)主要操作系統(tǒng)平臺的可移植性。
本教程解釋了為遠(yuǎn)程訪問設(shè)置和配置 OpenVPN 服務(wù)器和客戶端的過程。
一、配置OpenVPN——服務(wù)器端
1. 安裝 OpenVPN
在服務(wù)器和客戶端機器上安裝 openvpn 包。
$ sudo apt-get install openvpn
使用您正在使用的發(fā)行版的相應(yīng)包管理器。如果您使用的是 yum,請執(zhí)行以下操作
$ yum install openvpn
2.創(chuàng)建目錄并設(shè)置Env變量
在/etc/openvpn中創(chuàng)建一個目錄并將easy-rsa內(nèi)容復(fù)制到其中。這樣做是為了確保在升級包時對腳本所做的更改不會丟失。將所有者更改為當(dāng)前用戶,以便當(dāng)前用戶具有創(chuàng)建文件的權(quán)限。
$ sudo mkdir /etc/openvpn/easy-rsa $ sudo cp /usr/share/doc/openvpn/examples/easy-rsa/2.0/* /etc/openvpn/easy-rsa $ sudo chown -R $USER /etc/ openvpn/easy-rsa/
接下來,編輯/etc/openvpn/easy-rsa/vars以適應(yīng)您的環(huán)境。
export KEY_COUNTRY="IN" export KEY_PROVINCE="TN" export KEY_CITY="CHN" export KEY_ORG="tgs" export KEY_EMAIL="admin@hgst.com.cn"
3. 創(chuàng)建 CA – 證書頒發(fā)機構(gòu)(根證書)
構(gòu)建 openvpn 服務(wù)器的下一步是建立一個公鑰基礎(chǔ)設(shè)施,以便服務(wù)器和客戶端可以相互驗證。
$ cd /etc/openvpn/easy-rsa/ $ source vars $ ./clean-all $ ln -s openssl-1.0.0.cnf openssl.cnf $ ./build-ca Generating a 1024 bit RSA private key ........++++++ ......++++++ unable to write 'random state' writing new private key to 'ca.key' ----- 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. ----- Country Name (2 letter code) [IN]: State or Province Name (full name) [TN]: Locality Name (eg, city) [CHN]: Organization Name (eg, company) [tgs]: Organizational Unit Name (eg, section) [changeme]: Common Name (eg, your name or your server's hostname) [changeme]: Name [changeme]:lakshmanan Email Address [mail@host.domain]:admin@hgst.com.cn
./build-ca完成后,您將在/etc/openvpn/easy-rsa/keys/中看到一個名為“ca.key”和“ca.crt ”的文件
請記住,“.key”文件必須保密。
4. 為服務(wù)器創(chuàng)建證書
下一步是為我們的 Openvpn 服務(wù)器創(chuàng)建一個證書。
$ /etc/openvpn/easy-rsa/build-key-server vpnserver ... ... Sign the certificate? [y/n]:y 1 out of 1 certificate requests certified, commit? [y/n]y
請注意,vpnserver 是服務(wù)器的 HOSTNAME。該命令將接受用戶的輸入,類似于前一個命令。此命令將為服務(wù)器創(chuàng)建證書和密鑰文件。
5. 為客戶創(chuàng)建證書
VPN 客戶端還需要證書來與服務(wù)器進(jìn)行身份驗證。如果要配置多個客戶端,則需要為每個客戶端分別創(chuàng)建證書。
$ ./build-key vpnclient1 ... ... Sign the certificate? [y/n]:y 1 out of 1 certificate requests certified, commit? [y/n]y
vpnclient1 是客戶端的主機名。此命令將為客戶端創(chuàng)建證書和密鑰文件。
6. 創(chuàng)建 Diffie Hellman 參數(shù)
$ ./build-dh
成功完成上述所有步驟后,您將在/etc/openvpn/easy-rsa/keys中擁有許多密鑰和證書文件。
7. 將證書復(fù)制到相應(yīng)位置
我們已經(jīng)創(chuàng)建了根證書、服務(wù)器證書和客戶端證書。我們需要將它們復(fù)制到適當(dāng)?shù)奈恢谩?/p>
$ cd /etc/openvpn/easy-rsa/keys/ $ sudo cp ca.crt vpnserver.crt vpnserver.key dh1024.pem /etc/openvpn/ $ scp ca.crt vpnclient1.key vpnclient1.crt root@vpnclient1:/etc /openvpn
現(xiàn)在我們已將客戶端證書和密鑰復(fù)制到客戶端計算機。在復(fù)制密鑰文件時,請記住使用 scp 之類的安全介質(zhì)。
8. 配置服務(wù)器
OpenVPN 提供了一個默認(rèn)的 server.conf。您可以根據(jù)需要對其進(jìn)行修改。
$ sudo cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz /etc/openvpn/ $ sudo gzip -d /etc/openvpn/server.conf.gz
編輯“/etc/openvpn/server.conf”。
ca ca.crt cert vpnserver.crt key vpnserver.key dh dh1024.pem
現(xiàn)在啟動 OpenVPN 服務(wù)器:
$ sudo /etc/init.d/openvpn start * Starting virtual private network daemon(s)... * Autostarting VPN 'server' $ ifconfig tun0 tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 inet addr:10.8.0.1 P-t-P:10.8.0.2 Mask:255.255.255.255
默認(rèn)情況下,openVPN 會在 syslog 文件中記錄錯誤。
二、配置 OpenVPN – 客戶端
9. 設(shè)置客戶端配置文件
現(xiàn)在我們將配置 openVPN 作為客戶端工作。記住我們已經(jīng)在客戶端安裝了openvpn包,我們在/etc/openvpn/中有“ca.crt”、“vpnclient1.key”、vpnclient1.crt”
將示例 client.conf 復(fù)制到/etc/openvpn。
$ sudo cp /usr/share/doc/openvpn/examples/sample-config-files/client.conf /etc/openvpn/
編輯/etc/openvpn/client.conf。
... # Specify that this is openvpn client client remote vpnserver 1194 ca ca.crt cert vpnclient1.crt key vpnclient1.key
現(xiàn)在在客戶端啟動 OpenVPN
$ /etc/init.d/openvpn start * Starting virtual private network daemon(s)... * Autostarting VPN 'client' $ ifconfig tun0 tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 inet addr:10.8.0.6 P-t-P:10.8.0.5 Mask:255.255.255.255
10. 測試 VPN 設(shè)置
從客戶端機器 ping vpnserver 以查看 VPN 是否正常工作。
$ ping 10.8.0.1 PING 10.8.0.1 (10.8.0.1) 56(84) bytes of data. 64 bytes from 10.8.0.1: icmp_req=1 ttl=64 time=2.14 ms
如果您能夠 ping 通,那么您已經(jīng)進(jìn)行了正確的設(shè)置。
請記住以下幾點:
確保客戶端和服務(wù)器使用相同的協(xié)議和端口號。
客戶端和服務(wù)器必須對一些參數(shù)使用相同的配置,如密鑰大小、壓縮等……
如果出現(xiàn)任何問題,請在配置中增加日志詳細(xì)程度并檢查 syslog 文件以進(jìn)行故障排除。
鏈接:https://bbs.huaweicloud.com/blogs/369552
-
Linux
+關(guān)注
關(guān)注
87文章
11479瀏覽量
213024 -
服務(wù)器
+關(guān)注
關(guān)注
13文章
9728瀏覽量
87437 -
客戶端
+關(guān)注
關(guān)注
1文章
298瀏覽量
17019
原文標(biāo)題:如何在 Linux 上輕松設(shè)置 OpenVPN 服務(wù)器和客戶端:完整教程與實用技巧
文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運維】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
如果ESP上的TCP客戶端與服務(wù)器斷開連接,如何啟用自動重連?
IR915作為OpenVPN服務(wù)器實現(xiàn)客戶端子網(wǎng)互聯(lián)的過程
OpenVPN下載、安裝、配置及使用詳解
基于OpenVPN技術(shù)實現(xiàn)InRouter與SINEMA Remote Connect建立連接
VPN如何配置Win7 PPTP(L2TP)客戶端?
InRouter路由器與中心端OpenVPN服務(wù)器構(gòu)建OpenVPN的方法
一個服務(wù)器,多個客戶端,怎么向指定的客戶端發(fā)數(shù)據(jù)
如何同時開啟服務(wù)器模式和客戶端模式?
通訊貓MQTT服務(wù)器在線客戶端的問題
Linux下網(wǎng)絡(luò)編程TCP并發(fā)服務(wù)器和TCP客戶端程序免費下載

Linux下TCP網(wǎng)絡(luò)編程-創(chuàng)建服務(wù)器與客戶端

在遠(yuǎn)程服務(wù)器上搭建一個OpenVPN服務(wù)端

ORB305連接Linux搭建的OpenVPN服務(wù)器操作手冊

評論