01 配置OpenVPN访问内网

应用场景

PC1 和 PC2 通过 190.X.X.X 建立 VPN 隧道,PC 想要访问位于内网的 server,可以在 server gateway 部署OpenVPN 服务端,在 PC 部署 OpenVPN 客户端,实现内网访问。

OpenVPN下载与安装

OpenVPN官网下载 OpenVPN GUI Community Downloads

OpenVPN安装,安装的时候选择自定义安装,勾选上 EasyRSA 工具,用于生成证书。OpenVPN使用PKI (Public Key Infrastructure) 让服务端与客户端相互验证。需要生成一系列文件置于服务端或客户端,我们需要用 Easy-RSA 生成这些文件。

配置

证书生成

Windows 10 下使用 Easy-RSA 生成证书,在 OpenVPN 安装目录下 easy-rsa 目录以管理员身份启动 EasyRSA-Start.bat 进入 shell.

执行如下步骤的命令生成证书

  1. 创建 PKI 和 CA 证书

  • 创建PKI easyrsa init-pki

  • 创建无密码的 CA easyrsa build-ca nopass

创建 CA 遇到如下提示直接按回车 Common Name (eg: your user, host, or server name) [Easy-RSA CA]: 回车

  1. 创建服务端证书

  • 创建服务端证书请求,名为 vpnserver.req easyrsa gen-req vpnserver nopass

  • 签发服务端证书,easyrsa sign server vpnserver

  • 生成 DH 文件,easyrsa gen-dh

  1. 创建客户端证书

  • 创建客户证书请求,名为 vpnclient.req,easyrsa gen-req vpnclient nopass

  • 签发客户端证书,easyrsa sign client vpnclient

服务端配置

将证书生成步骤中的vpnserver.crt、vpnserver.key,ca.crt,dh.pem 放到和配置文件server.ovpn 放到同一个目录,且 server.ovpn 的配置如下

模板文件位于 OpenVPN 安装目录下的 sample-config 文件夹,修改后的配置如下,已经把注释删除

客户端配置

将证书生成步骤中的vpnclient.crt、vpnclient.key,ca.crt 放到和配置文件 client.ovpn 放到同一个目录,且 client.ovpn 的配置如下

配置路由转发

Windows 修改注册表项,允许网卡直接 IP 路由转发,服务端和客户端都要修改

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters 的 IPEnableRouter 改为 1

配置完成之后重启,可以在 cmd 看到已经启用 IP 路由功能

alt text

参考

最后更新于