Linux 下如何设置openvpn服务器

2018-07-14  兮克小研


OpenVPN是一种SSL/TLS VPN解决方案,它在VPN服务器和客户端上创建虚拟网络接口;支持TUN(用于IPTeVirtual隧道)和TAP(用于以太网级隧道)接口。Openvpn是企业和个人之间安全数据传输的隧道,让出差在外的员工轻松访企业内网服务器的资源。(本教程仅做学习参考)
OpenVPN可以通过用户/通行证,预共享密钥,证书等对用户进行身份验证,本次主要讲解证书部分。


一、软件包安装
首先安装软件包openvpn及证书工具easy-rsa,sudo apt-get install openvpn easy-rsa,安装界面如图1所示。

图1 安装openvpn及easy-rsa


二、制作CA证书
为了之后的使用,我们先切换为root用户,并在/etc/openvpn中创建文件夹easy-rsa,并切换到该文件夹中。将easy-rsa的工具包复制到当前文件夹中,如图2所示。

图2 创建工作目录,复制工具包


使用vi打开配置文件vars,修改其中变量参数,这些变量都会显示到证书当中,建议按照个人情况填写,其中”export KEY_NAME="vpnilanni”会影响之后的客户端证书的制作,需要牢记,如图3所示。

图3 修改参数

为了使刚刚的输入的变量生效,我们先运行“. keys”初始化变量,并清空keys目录,输入”./build-ca”,耐心等待ca证书生成完毕。如图4所示。

图4 制作ca证书


这时,在keys目录下会有 ca.crt(根证书文件) 和 ca.key(根证书私钥文件),其中crt文件是我们需要的,将它复制到”/etc/openvpn“中。复制证书文件如图5所示。

图5 复制证书文件


三 制作服务端及客户端证书
输入命令”./build-key-server xkvpn”生成server端证书,其中xkvpn就是之前ca证书的KEY_NAME,之后会进行一系列的信息确认,之后会交互确认两次,确认无误输入y即可。如图6所示。

图6 生成客户端证书

这个时候文件夹中已经有了xkvpn.crt(证书文件)、xkvpn.key(私钥文件)和xkvpn.csr(证书请求文件)三个文件。其中xkvpn.crt和xkvpn.key两个文件我们是需要的。
创建Diffie Hellman参数,openvpn是必须要dh参数的。输入命令“./build-dh”稍等片刻即可生成一个加密交换文件。生成Diffie-Hellman文件如图7所示。

图7 生成Diffie-Hellman文件

将生成好的server端文件复制到/etc/openvpn中,输入命令“./build-key xk”生成客户端证书,其中两次交互,输入“y”即可,其中xk为客户端名称,可以任意填写。如图8所示。

图8 复制文件,生成客户端证书

四 配置服务端
此时keys里面已经有了客户端证书了,之后需要配置服务端,openvpn文档中有压缩过后的模板文件,复制到/etc/openvpn中,并将其解压到当前文件夹。修改配置文件,将proto修改为tcp,cert及key 修改为之前生成服务端的时候输入的名称,修改dh文件名称。配置服务器和原始文件如图9和图10所示,图11为修改后配置文件。

图9配置服务端

图10原始配置文件

图11 修改后配置文件


五 使用
重启服务,之后查看服务是否正常。
这里将需要用的几个客户端文件拷贝到用户文件夹中,方便之后使用。
(1)Linux连接
将上图四个客户端文件拷贝到linux文件夹中,并修改conf文件,修改前conf文件如图12所示。

图12 重启服务并准备客户端文件夹


修改后的文件如下,之后将clinet.conf重新命名为client.ovpn,使用openvpn client.ovpn即可,如图13所示。图14和15为连接过程和连接成功界面。

图13 linux客户端

图14 连接

图15 连接成功


(2)windows客户端

Windows客户端需要安装openvpn的客户端,安装完毕后,将四个配置文件放到config文件夹中的xkvpn中。如图16所示。

图16 Windows客户端需要安装openvpn
打开软件,右键connect连接,如图17所示。

图17 连接
连接成功后提示,如图18所示。

图18 连接成功

至此,Linux系统下openvpn服务器的基础设置配置完成。

Linux 下如何设置openvpn服务器

2018-07-14  兮克小研


OpenVPN是一种SSL/TLS VPN解决方案,它在VPN服务器和客户端上创建虚拟网络接口;支持TUN(用于IPTeVirtual隧道)和TAP(用于以太网级隧道)接口。Openvpn是企业和个人之间安全数据传输的隧道,让出差在外的员工轻松访企业内网服务器的资源。(本教程仅做学习参考)
OpenVPN可以通过用户/通行证,预共享密钥,证书等对用户进行身份验证,本次主要讲解证书部分。


一、软件包安装
首先安装软件包openvpn及证书工具easy-rsa,sudo apt-get install openvpn easy-rsa,安装界面如图1所示。

图1 安装openvpn及easy-rsa


二、制作CA证书
为了之后的使用,我们先切换为root用户,并在/etc/openvpn中创建文件夹easy-rsa,并切换到该文件夹中。将easy-rsa的工具包复制到当前文件夹中,如图2所示。

图2 创建工作目录,复制工具包


使用vi打开配置文件vars,修改其中变量参数,这些变量都会显示到证书当中,建议按照个人情况填写,其中”export KEY_NAME="vpnilanni”会影响之后的客户端证书的制作,需要牢记,如图3所示。

图3 修改参数

为了使刚刚的输入的变量生效,我们先运行“. keys”初始化变量,并清空keys目录,输入”./build-ca”,耐心等待ca证书生成完毕。如图4所示。

图4 制作ca证书


这时,在keys目录下会有 ca.crt(根证书文件) 和 ca.key(根证书私钥文件),其中crt文件是我们需要的,将它复制到”/etc/openvpn“中。复制证书文件如图5所示。

图5 复制证书文件


三 制作服务端及客户端证书
输入命令”./build-key-server xkvpn”生成server端证书,其中xkvpn就是之前ca证书的KEY_NAME,之后会进行一系列的信息确认,之后会交互确认两次,确认无误输入y即可。如图6所示。

图6 生成客户端证书

这个时候文件夹中已经有了xkvpn.crt(证书文件)、xkvpn.key(私钥文件)和xkvpn.csr(证书请求文件)三个文件。其中xkvpn.crt和xkvpn.key两个文件我们是需要的。
创建Diffie Hellman参数,openvpn是必须要dh参数的。输入命令“./build-dh”稍等片刻即可生成一个加密交换文件。生成Diffie-Hellman文件如图7所示。

图7 生成Diffie-Hellman文件

将生成好的server端文件复制到/etc/openvpn中,输入命令“./build-key xk”生成客户端证书,其中两次交互,输入“y”即可,其中xk为客户端名称,可以任意填写。如图8所示。

图8 复制文件,生成客户端证书

四 配置服务端
此时keys里面已经有了客户端证书了,之后需要配置服务端,openvpn文档中有压缩过后的模板文件,复制到/etc/openvpn中,并将其解压到当前文件夹。修改配置文件,将proto修改为tcp,cert及key 修改为之前生成服务端的时候输入的名称,修改dh文件名称。配置服务器和原始文件如图9和图10所示,图11为修改后配置文件。

图9配置服务端

图10原始配置文件

图11 修改后配置文件


五 使用
重启服务,之后查看服务是否正常。
这里将需要用的几个客户端文件拷贝到用户文件夹中,方便之后使用。
(1)Linux连接
将上图四个客户端文件拷贝到linux文件夹中,并修改conf文件,修改前conf文件如图12所示。

图12 重启服务并准备客户端文件夹


修改后的文件如下,之后将clinet.conf重新命名为client.ovpn,使用openvpn client.ovpn即可,如图13所示。图14和15为连接过程和连接成功界面。

图13 linux客户端

图14 连接

图15 连接成功


(2)windows客户端

Windows客户端需要安装openvpn的客户端,安装完毕后,将四个配置文件放到config文件夹中的xkvpn中。如图16所示。

图16 Windows客户端需要安装openvpn
打开软件,右键connect连接,如图17所示。

图17 连接
连接成功后提示,如图18所示。

图18 连接成功

至此,Linux系统下openvpn服务器的基础设置配置完成。