如何在Ubuntu 16.04上创建OpenVPN服务器

介绍

OpenVPN是使用SSL(安全套接字层)的安全VPN,并提供广泛的功能。在本指南中,我们将介绍使用easy-rsa托管证书颁发机构在Ubuntu 16上安装OpenVPN的过程。

安装

为了开始,我们需要安装一些软件包:

sudo su
apt-get update
apt-get install openvpn easy-rsa

证书颁发机构

OpenVPN是SSL VPN,这意味着它充当证书颁发机构,以便对双方之间的通信进行加密。

设定

我们可以通过运行以下命令开始设置OpenVPN服务器的证书颁发机构:

make-cadir ~/ovpn-ca

现在,我们可以切换到新创建的目录:

cd ~/ovpn-ca

配置

用名称打开文件,vars然后查看以下参数:

export KEY_COUNTRY="US"
export KEY_PROVINCE="NJ"
export KEY_CITY="Matawan"
export KEY_ORG="Your Awesome Organization"
export KEY_EMAIL="me@your_awesome_org.com"
export KEY_OU="YourOrganizationUnit"

并使用您自己的值进行编辑。我们还需要查找并编辑以下行:

export KEY_NAME="server"

建立

现在,我们可以通过运行以下命令开始构建证书颁发机构:

./clean-all
./build-ca

这些命令可能需要几分钟才能完成。

服务器密钥

现在,我们可以通过运行以下命令开始构建服务器的密钥:

./build-key-server server

虽然该server字段应替换为KEY_NAME我们vars先前在文件中设置的字段。就我们而言,我们可以保留server

服务器密钥的构建过程可能会问一些问题,例如其自身的到期时间。我们用回答所有这些问题y

强键

下一步,我们创建一个强Diffie-Hellman密钥,将在交换密钥时使用它。输入以下命令以创建一个:

./build-dh

HMAC

现在,我们可以创建一个HMAC签名来增强服务器的TLS完整性验证:

openvpn --genkey --secret keys/ta.key

生成客户端密钥

./build-key client

配置服务器

成功创建自己的证书颁发机构后,我们可以从复制所有需要的文件并配置OpenVPN本身开始。现在,我们将生成的密钥和证书复制到我们的OpenVPN目录中:

cd keys
cp ca.crt ca.key server.crt server.key ta.key dh2048.pem /etc/openvpn
cd ..

然后,我们可以通过运行以下命令将示例OpenVPN配置文件复制到我们的OpenVPN目录中:

gunzip -c /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz | tee /etc/openvpn/server.conf

编辑配置

现在,我们可以开始编辑配置以适合我们的需求。打开文件/etc/openvpn/server.conf并取消注释以下行:

push "redirect-gateway def1 bypass-dhcp"
user nobody
group nogroup
push "dhcp-option DNS 208.67.222.222"
push "dhcp-option DNS 208.67.220.220"
tls-auth ta.key 0

我们还需要在配置中添加新行。将以下行放在该tls-auth行下:

key-direction 0

允许转发

因为我们要允许客户通过我们的服务器访问Internet,所以我们打开以下文件/etc/sysctl.conf并取消注释此行:

net.ipv4.ip_forward=1

现在我们必须应用更改:

sysctl -p

NAT

为了向我们的VPN客户端提供Internet访问,我们还必须创建NAT规则。此规则是一条简短的规则,看起来像这样:

iptables -t nat -A POSTROUTING -s 10.8.0.0/16 -o eth0 -j MASQUERADE

开始

现在,我们可以启动OpenVPN服务器,并通过键入以下密钥来让客户端连接:

service openvpn start

结论

到此结束我们的教程。享受您的新OpenVPN服务器!



Leave a Comment

AI 能否應對越來越多的勒索軟件攻擊?

AI 能否應對越來越多的勒索軟件攻擊?

勒索軟件攻擊呈上升趨勢,但人工智能能否幫助應對最新的計算機病毒?AI 是答案嗎?在這裡閱讀知道是 AI 布恩還是禍根

ReactOS:這是 Windows 的未來嗎?

ReactOS:這是 Windows 的未來嗎?

ReactOS,一個開源和免費的操作系統,這裡有最新版本。它能否滿足現代 Windows 用戶的需求並打倒微軟?讓我們更多地了解這種老式但更新的操作系統體驗。

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

Whatsapp 終於為 Mac 和 Windows 用戶推出了桌面應用程序。現在您可以輕鬆地從 Windows 或 Mac 訪問 Whatsapp。適用於 Windows 8+ 和 Mac OS 10.9+

人工智能如何將流程自動化提升到新的水平?

人工智能如何將流程自動化提升到新的水平?

閱讀本文以了解人工智能如何在小型公司中變得流行,以及它如何增加使它們成長並為競爭對手提供優勢的可能性。

macOS Catalina 10.15.4 補充更新引發的問題多於解決

macOS Catalina 10.15.4 補充更新引發的問題多於解決

最近,Apple 發布了 macOS Catalina 10.15.4 補充更新以修復問題,但似乎該更新引起了更多問題,導致 mac 機器變磚。閱讀這篇文章以了解更多信息

大數據的13個商業數據提取工具

大數據的13個商業數據提取工具

大數據的13個商業數據提取工具

什麼是日誌文件系統,它是如何工作的?

什麼是日誌文件系統,它是如何工作的?

我們的計算機以稱為日誌文件系統的有組織的方式存儲所有數據。這是一種有效的方法,可以讓計算機在您點擊搜索時立即搜索和顯示文件。 https://wethegeek.com/?p=94116&preview=true

技術奇點:人類文明的遙遠未來?

技術奇點:人類文明的遙遠未來?

隨著科學的快速發展,接管了我們的大量工作,我們陷入無法解釋的奇點的風險也在增加。閱讀,奇點對我們意味著什麼。

洞察 26 種大數據分析技術:第 1 部分

洞察 26 種大數據分析技術:第 1 部分

洞察 26 種大數據分析技術:第 1 部分

2021 年人工智能對醫療保健的影響

2021 年人工智能對醫療保健的影響

過去幾十年,醫療保健領域的人工智能取得了巨大飛躍。因此,醫療保健中人工智能的未來仍在日益增長。