ubuntu 22.04搭建OpenVPN服务器的详细图文教程

2024-03-01 0 998
目录
  • 一、openvpn原理
  • 二、安装openvpn
  • 三、制作相关证书
    • 3.1制作CA证书
    • 3.2制作Server端证书
    • 3.3制作Client端证书
    • 3.4将相关文件放到同目录下
    • 3.5 配置vpn Server
    • 3.6 运行VPN SERVER
    • 3.7 tftp下载秘钥文件
  • 四VPN CLIENT安装
    • 4.1 下载openvpn客户端
    • 4.2 创建配置文件
    • 4.3开启客户端软件
    • 4.4 配置文件
    • 4.5 连接状态查看
    • 4.6 测试

为了公司与分公司之前的内部服务器和办公电脑之间能够相互访问,打算使用VPN,对于VPN,以前用得多的是PPTP; 但是PPTP相对于openvpn来说,没有openvpn安全,而且PPTP在linux下命令行支持不是很好,稳定性也不如openvpn。所以最后就选择openvpn来搭建VPN.

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

如上图所示,红线为VPN访问效果,黑线为一般网络访问效果。

PS:本文在ubuntu 22.04上安装,openvpn服务器地址为172.26.14.242。

运行效果如下:

PC客户端

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

服务端:

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

一、openvpn原理

openvpn通过使用公开密钥(非对称密钥,加密解密使用不同的key,一个称为Publice key,另外一个是Private key)对数据进行加密的。这种方式称为TLS加密

openvpn使用TLS加密的工作过程是,首先VPN Sevrver端和VPN Client端要有相同的CA证书,双方通过交换证书验证双方的合法性,用于决定是否建立VPN连接。

然后使用对方的CA证书,把自己目前使用的数据加密方法加密后发送给对方,由于使用的是对方CA证书加密,所以只有对方CA证书对应的Private key才能解密该数据,这样就保证了此密钥的安全性,并且此密钥是定期改变的,对于窃听者来说,可能还没有破解出此密钥,VPN通信双方可能就已经更换密钥了。

二、安装openvpn

openvpn的安装我们分为apt-get方式和源码方式,下面我们只讲解apt-get方式的安装。有关源码方式安装openvpn,可自行百度。

apt-get方式安装,我们可以使用如下命令:

sudo apt-get -y install openvpn libssl-dev openssl

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

openvpn安装完毕后,我们来查看openvpn的版本,如下:

(下载openvpn client时需要参照这个版本号)

openvpn –version

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

通过上图,我们可以看到openvpn目前的版本为2.5.5。这个版本号,建议记住。

我们再来查看下openvpn安装时产生的文件,如下:

dpkg –list openvpn

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

dpkg -L openvpn | more

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

通过上图,我们可以很明显的看出openvpn已经有相关配置的模版了。

openvpn安装完毕后,我们再来安装easy-rsa。

easy-rsa是用来制作openvpn相关证书的。

安装easy-rsa,使用如下命令:

sudo apt-get -y install easy-rsa

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

查看easy-rsa安装的版本:

dpkg –list easy-rsa

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

查看easy-rsa安装的文件,如下:

dpkg -L easy-rsa |more

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

三、制作相关证书

根据第一章节openvpn的工作原理,我们可以知道openvpn的证书分为三部分:CA证书、Server端证书、Client端证书。

下面我们通过easy-rsa分别对其进行制作。

3.1制作CA证书

openvpn与easy-rsa安装完毕后,我们需要在/etc/openvpn/目录下创建easy-rsa文件夹,如下:

sudo mkdir /etc/openvpn/easy-rsa/ cd /etc/openvpn/easy-rsa/

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

然后把/usr/share/easy-rsa/目录下的所有文件全部复制到/etc/openvpn/easy-rsa/下,如下:

sudo cp -r /usr/share/easy-rsa/* /etc/openvpn/easy-rsa/

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

当然,我们也可以直接在/usr/share/easy-rsa/制作相关的证书,但是为了后续的管理证书的方便,我们还是把easy-rsa放在了openvpn的启动目录下。

注意:由于我们现在使用的是ubuntu系统,所以我们必须切换到root用户下才能制作相关证书,否则easy-rsa会报错。如果是centos系统,则不存在此问题。

切换到root用户下,使用如下命令:

sudo su cp vars.example vars

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

在开始制作CA证书之前,我们还需要编辑vars文件,修改如下相关选项内容即可。如下:

vim vars

修改

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

添加

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

vars文件主要用于设置证书的相关组织信息,红色部分的内容可以根据自己的实际情况自行修改。

其中export KEY_NAME=”vpnairgens”这个要记住下,我们下面在制作Server端证书时,会使用到。

注意:以上内容,我们也可以使用系统默认的,也就是说不进行修改也是可以使用的。

注意:不同的easy-isa版本,可能使用过程不一样,具体使用方法可以参考安装文档中描述

查看安装文档中的步骤描述:

cat /usr/share/doc/easy-rsa/README.Debian

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

制作命令如下:

./easyrsa init-pki ls

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

./easyrsa build-ca nopass ls

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

3.2制作Server端证书

./easyrsa build-server-full vpnairgens nopass

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

注意:上述命令中vpnairgens,就是我们前面vars文件中设置的KEY_NAME

查看生成的Server端证书,如下

ls pki/issued/ ls pki/private/

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

如此,Server端证书就制作完毕。

3.3制作Client端证书

Server端证书制作完成后,我们现在开始制作Client端证书,如下:

./easyrsa build-client-full airgens nopass

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

注意:上述命令中的airgens,是客户端的名称。这个是可以进行自定义的。

ls pki/issued/ ls pki/private/

查看生成的证书,如下:

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

通过上图,我们可以很明显的看出已经生成了很多加密相关的文件

其中 ca.crt private/airgens.key issued/airgens.crt三个文件是我们要使用的。

如此,Client端证书就制作完毕。

现在再为服务器生成加密交换时的Diffie-Hellman文件,如下:

./easyrsa gen-dh

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

ls pki/dh.pem -l

查看生成的文件,如下:

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

3.4将相关文件放到同目录下

cd /etc/openvpn/ cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf . ls

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

cp easy-rsa/pki/ca.crt ./ cp easy-rsa/pki/issued/vpnairgens.crt ./ ls

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

cp easy-rsa/pki/private/vpnairgens.key . cp easy-rsa/pki/dh.pem ./ cp easy-rsa/pki/dh.pem ./dh2048.pem

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

3.5 配置vpn Server

vim server.conf

隧道port

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

开tcp关udp

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

修改秘钥key文件名

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

修改VPN的IP地址段(也可不修改)

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

3.6 运行VPN SERVER

配置完运行openvpn server

nohup /usr/sbin/openvpn –config /etc/openvpn/server.conf &

打开日志显示

tail -f /var/log/openvpn/openvpn.log

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

3.7 tftp下载秘钥文件

cp /etc/openvpn/ca.crt /etc/openvpn/easy-rsa/pki/issued/airgens.crt tmp_dir/

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

四VPN CLIENT安装

4.1 下载openvpn客户端

下载地址:https://build.openvpn.net/downloads/releases/OpenVPN-2.5.5-I602-amd64.msi

(版本与上面服务端一致)安装软件

将文件复制到软件安装的目录

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

4.2 创建配置文件

创建airgens.ovpn文件,用记事本打开,添加如下内容

client
dev tun
proto tcp
remote 172.26.14.242 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert airgens.crt
key airgens.key
comp-lzo
verb 3

4.3开启客户端软件

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

4.4 配置文件

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

4.5 连接状态查看

服务端连接状态:

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

PC客户端连接状态:

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

4.6 测试

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

ubuntu 22.04搭建OpenVPN服务器的详细图文教程

参考文档:

烂泥:ubuntu 14.04搭建OpenVPN服务器

烂泥:openvpn配置文件详解

到此这篇关于ubuntu 22.04搭建OpenVPN服务器的文章就介绍到这了,更多相关OpenVPN服务器搭建内容请搜索悠久资源以前的文章或继续浏览下面的相关文章希望大家以后多多支持悠久资源!

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

悠久资源 服务器其它 ubuntu 22.04搭建OpenVPN服务器的详细图文教程 https://www.u-9.cn/server/qita-server/175954.html

常见问题

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务