搭建OpenVPN

 

搭建OpenVPN服务器的简易指南

作为一名网络工程师,搭建自己的OpenVPN服务器可以为远程访问提供安全的加密连接。本文将介绍一种简易的方法来搭建OpenVPN服务器。

步骤1:准备服务器

首先,我们需要准备一台Linux服务器来托管OpenVPN。你可以选择自己的物理服务器或云服务器,确保服务器具备稳定的网络连接和足够的计算资源。

步骤2:安装OpenVPN软件

在服务器上,使用包管理器(如apt或yum)安装OpenVPN软件包。例如,在Ubuntu上执行以下命令:

sudo apt update
sudo apt install openvpn

步骤3:生成证书和密钥

OpenVPN需要使用证书和密钥来实现加密通信。使用Easy-RSA工具集生成证书和密钥。首先,安装Easy-RSA并设置相关环境变量:

sudo apt install easy-rsa
export EASYRSA_PKI="/etc/openvpn/pki"

然后,初始化证书颁发机构(CA)并生成服务器证书和密钥:

sudo easyrsa init-pki
sudo easyrsa build-ca
sudo easyrsa gen-req server nopass
sudo easyrsa sign-req server server

最后,生成Diffie-Hellman参数和TLS密钥:

sudo openssl dhparam -out /etc/openvpn/dh.pem 2048
sudo openvpn --genkey --secret /etc/openvpn/ta.key

步骤4:配置OpenVPN服务器

创建OpenVPN服务器配置文件 /etc/openvpn/server.conf,并进行以下基本配置:

port 1194
proto udp
dev tun
ca /etc/openvpn/pki/ca.crt
cert /etc/openvpn/pki/issued/server.crt
key /etc/openvpn/pki/private/server.key
dh /etc/openvpn/dh.pem
tls-auth /etc/openvpn/ta.key 0
server 10.8.0.0 255.255.255.0
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"

步骤5:启动OpenVPN服务器

启动OpenVPN服务器并设置开机自启:

sudo systemctl start openvpn@server
sudo systemctl enable openvpn@server

步骤6:创建客户端配置文件

为每个客户端生成独立的配置文件。首先,创建客户端证书和密钥:

sudo easyrsa gen-req client1 nopass
sudo easyrsa sign-req client client1

然后,创建客户端配置文件 /etc/openvpn/client1.ovpn,内容如下:

client
dev tun
proto udp
remote YOUR_SERVER_IP 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca

 ca.crt
cert client1.crt
key client1.key
remote-cert-tls server
tls-auth ta.key 1
cipher AES-256-CBC
comp-lzo
verb 3

YOUR_SERVER_IP 替换为你的服务器IP地址。

步骤7:下载客户端配置文件

从服务器上下载客户端配置文件 /etc/openvpn/client1.ovpn 到本地,并使用OpenVPN客户端导入该配置文件使用即可。