ubuntu 22.04搭建OpenVPN服务器

这篇具有很好参考价值的文章主要介绍了ubuntu 22.04搭建OpenVPN服务器。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

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

ubuntu vpn,openvpn,服务器,ubuntu,运维

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

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

运行效果如下:

PC客户端

ubuntu vpn,openvpn,服务器,ubuntu,运维

ubuntu vpn,openvpn,服务器,ubuntu,运维

服务端:

ubuntu vpn,openvpn,服务器,ubuntu,运维

ubuntu vpn,openvpn,服务器,ubuntu,运维

一、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 vpn,openvpn,服务器,ubuntu,运维

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

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

openvpn --version

ubuntu vpn,openvpn,服务器,ubuntu,运维

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

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

dpkg --list openvpn

ubuntu vpn,openvpn,服务器,ubuntu,运维

dpkg -L openvpn | more

ubuntu vpn,openvpn,服务器,ubuntu,运维

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

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

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

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

sudo apt-get -y install easy-rsa

ubuntu vpn,openvpn,服务器,ubuntu,运维

查看easy-rsa安装的版本:

dpkg --list easy-rsa

ubuntu vpn,openvpn,服务器,ubuntu,运维

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

dpkg -L easy-rsa |more

ubuntu vpn,openvpn,服务器,ubuntu,运维

三、制作相关证书

根据第一章节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 vpn,openvpn,服务器,ubuntu,运维

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

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

ubuntu vpn,openvpn,服务器,ubuntu,运维

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

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

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

sudo su cp vars.example vars

ubuntu vpn,openvpn,服务器,ubuntu,运维

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

vim vars

修改

ubuntu vpn,openvpn,服务器,ubuntu,运维

添加

ubuntu vpn,openvpn,服务器,ubuntu,运维

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

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

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

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

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

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

ubuntu vpn,openvpn,服务器,ubuntu,运维

制作命令如下:

./easyrsa init-pki ls

ubuntu vpn,openvpn,服务器,ubuntu,运维

./easyrsa build-ca nopass 
ls

ubuntu vpn,openvpn,服务器,ubuntu,运维

ubuntu vpn,openvpn,服务器,ubuntu,运维

3.2 制作Server端证书

./easyrsa build-server-full vpnairgens nopass

ubuntu vpn,openvpn,服务器,ubuntu,运维

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

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

ls pki/issued/ 
ls pki/private/

ubuntu vpn,openvpn,服务器,ubuntu,运维

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

3.3 制作Client端证书

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

./easyrsa build-client-full airgens nopass

ubuntu vpn,openvpn,服务器,ubuntu,运维

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

ls pki/issued/ 
ls pki/private/

查看生成的证书,如下:

ubuntu vpn,openvpn,服务器,ubuntu,运维

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

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

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

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

./easyrsa gen-dh

ubuntu vpn,openvpn,服务器,ubuntu,运维

ls pki/dh.pem -l

查看生成的文件,如下:

ubuntu vpn,openvpn,服务器,ubuntu,运维

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

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

ubuntu vpn,openvpn,服务器,ubuntu,运维

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

ubuntu vpn,openvpn,服务器,ubuntu,运维

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

ubuntu vpn,openvpn,服务器,ubuntu,运维

3.5 配置vpn Server

vim server.conf

隧道port

ubuntu vpn,openvpn,服务器,ubuntu,运维

开tcp关udp

ubuntu vpn,openvpn,服务器,ubuntu,运维

修改秘钥key文件名

ubuntu vpn,openvpn,服务器,ubuntu,运维

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

ubuntu vpn,openvpn,服务器,ubuntu,运维

 ubuntu vpn,openvpn,服务器,ubuntu,运维

 ubuntu vpn,openvpn,服务器,ubuntu,运维

ubuntu vpn,openvpn,服务器,ubuntu,运维

 ubuntu vpn,openvpn,服务器,ubuntu,运维

3.6 运行VPN SERVER

配置完运行openvpn server

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

打开日志显示

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

ubuntu vpn,openvpn,服务器,ubuntu,运维

3.7 tftp下载秘钥文件

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

ubuntu vpn,openvpn,服务器,ubuntu,运维

 四 VPN CLIENT安装

4.1 下载openvpn客户端

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

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

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

ubuntu vpn,openvpn,服务器,ubuntu,运维

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 vpn,openvpn,服务器,ubuntu,运维

4.4 配置文件

ubuntu vpn,openvpn,服务器,ubuntu,运维

4.5 连接状态查看

服务端连接状态:

ubuntu vpn,openvpn,服务器,ubuntu,运维

PC客户端连接状态:

ubuntu vpn,openvpn,服务器,ubuntu,运维

4.6 测试

ubuntu vpn,openvpn,服务器,ubuntu,运维

ubuntu vpn,openvpn,服务器,ubuntu,运维

参考文档:

烂泥:ubuntu 14.04搭建OpenVPN服务器-烂泥行天下

烂泥:openvpn配置文件详解-烂泥行天下文章来源地址https://www.toymoban.com/news/detail-622542.html

到了这里,关于ubuntu 22.04搭建OpenVPN服务器的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • Ubuntu 22.04 安装配置时间同步服务器

    Ubuntu 22.04 安装配置时间同步服务器

    参数解释: 1.server 127.127.1.0 #local clock 这个参数指定了一个本地时钟源。127.127.1.0 ,通常用于表示本地计算机的时钟。这个参数告诉NTP守护进程,如果无法从其他NTP服务器获取时间,或者作为备份时钟源,应该使用本地计算机的时钟作为时间源。 2.fudge 127.127.1.0 stratum 10 这个参

    2024年04月28日
    浏览(9)
  • Ubuntu22.04 安装深度学习服务器全纪录

    Ubuntu22.04 安装深度学习服务器全纪录

    制作启动盘 参考链接:https://blog.csdn.net/lyx_ok/article/details/129308753 安装 Ubuntu 22.04 将U盘插到服务器上,开机按F11键(具体什么键跟主板型号有关)选择启动项进入临时的 Ubuntu 系统,在图形界面中选择 Install Ubuntu ,所有配置都可以使用默认的,改一下用户名和密码即可。 进入

    2024年02月16日
    浏览(10)
  • ubuntu 22.04 服务器网卡无IP地址

    ubuntu 22.04 服务器网卡无IP地址

    ssh连接服务器连接不上,提示如下; 连接显示器 ,ip addr ls 命令查看IP地址,有网卡但没有IP地址 用于通过 DHCP 协议获取网络配置信息并为名为 enp10s0 的网络接口分配 IP 地址,enp10s0替换为本机网络接口名称 但是一旦重启 ,又没了IP地址 。目前为止暂未找到解决办法 偶然的机

    2024年02月22日
    浏览(7)
  • ubuntu22.04 服务器 SSH 密钥登录失败

    SSH密钥登录,是将SSH公钥写入服务端的 ~/.ssh/authorized_keys 文件中。 今天装了ubuntu22.04的系统,按照以往操作,在服务端配置了SSH公钥之后,发现竟然无法登录。 首先查看OpenSSH版本: 查看 /var/log/auth.log 文件,发现有如下错误信息: 通过错误信息来看,填入 authorized_keys 文件的

    2024年01月18日
    浏览(10)
  • Ubuntu服务器安装配置slurm (Ubuntu 22.04 LTS)

    Slurm 全称 S imple L inux U tility for R esource M anagement。通常被用于大型Linux服务器 (超算) 上,作为任务管理系统。本文详细讲述如何在 Ubuntu 22.04 LTS 上安装slurm,并进行简单的配置。 其实网上相关的教程已经非常多,但在旧版本的Ubuntu上安装slurm时,通常需要安装一个名为slurm-ll

    2024年02月07日
    浏览(45)
  • 【Ubuntu】ubuntu22.04使用VNC链接服务器远程桌面

    【Ubuntu】ubuntu22.04使用VNC链接服务器远程桌面

    本地主要需要一个VNC客户端,用来远程连接服务器端的VNC(在不安装Web版本VNC情况下)。VNC客户端下载地址: VNC客户端下载 在远程服务器控制台中安装Xfce桌面(这个桌面环境比较轻量化,博主用的88块钱的腾讯云服务器) 注意更新软件源 在远程服务器控制台中安装 tightvn

    2024年02月03日
    浏览(10)
  • Ubuntu22.04服务器版本配置静态IP地址

    Ubuntu22.04服务器版本配置静态IP地址

    1、进入文件/etc/netplan/00-installer-config.yam 2、配置文件内容  注意:编写文件内容时一定要格式正确,不然会出差 3、重启网络  4、查看IP  这样就配置成功啦 5、如果是18.04一下版本参照这个配置,22.04版本也可以用这个,重启网络的时候会有报错,但不会有影响  重启网络后

    2024年02月11日
    浏览(8)
  • 在 ubuntu 22.04 上配置界面服务器 vnc

    xrdp服务器的安装 1.安装服务器 查看配置 2.设置密码 3.更改 ~/.vnc/xstartup 4.重新启动 5.连接

    2024年02月08日
    浏览(9)
  • 在 ubuntu 22.04 上配置界面服务器 xrdp

    安装 vnc 服务器 和 xrdp 服务器 配置 ~/.xsession

    2024年02月07日
    浏览(12)
  • Ubuntu最新版本(Ubuntu22.04LTS)安装nfs服务器

    NFS(Network File System)是一种允许不同计算机之间共享文件的网络文件系统。 在Ubuntu 22.04 LTS中,您可以使用以下步骤安装并配置NFS服务器。 一、安装NFS服务器 在Ubuntu 22.04 LTS中,您可以使用以下命令安装NFS服务器: 二、创建共享目录 接下来,您需要创建要共享的目录。在本

    2024年02月05日
    浏览(12)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包