Ubuntu安装Wireguard操作说明

2024-01-26 12:40

本文主要是介绍Ubuntu安装Wireguard操作说明,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Ubuntu安装Wireguard

  • 说明
  • 环境说明
    • Wireguard介绍
    • 安装Wireguard
    • 配置Wireguard Server
    • 创建Wireguard Server配置文件
    • 启动Wireguard Server
    • 配置Wireguard Client
    • 启动Wireguard Client
    • Wireguard Client添加主机路由表
    • 启动之后使用wg指令查看,显示如下表示连接成功
  • 注意事项

说明

	该笔记仅用于学习交流使用

环境说明

Ubuntu版本:4.15.0-43-generic #46~16.04.1-Ubuntu SMP Fri Dec 7 13:31:08 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

Wireguard介绍

Wireguard官方链接地址:https://www.wireguard.com/
Wireguard源代码由开发者自我托管地址: https://git.zx2c4.com/WireGuard/
Wireguard GitHub 的镜像仓库:https://github.com/WireGuard
Wireguard支持系统:https://www.wireguard.com/install/

安装Wireguard

add-apt-repository ppa:wireguard/wireguard
apt-get update
apt-get install wireguard

配置Wireguard Server

**设置创建文件的默认权限**umask 077
**生成服务端Privatekey和Pubkey** 	 wg genkey | tee sprivatekey | wg pubkey > spublickey 
**生成客户端端Privatekey和Pubkey** 	 wg genkey | tee cprivatekey | wg pubkey > cpublickey 
**开启服务端ubuntu的转发功能** 找到这一行 #net.ipv4.ip_forward = 1 去掉注释符 “#” 修改为net.ipv4.ip_forward = 1立即生效指令如下sysctl -p

创建Wireguard Server配置文件

vi /etc/wireguard/wg0.conf ,添加以下内容
[Interface]Address = 10.0.0.1/24SaveConfig = truePostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o  ens3   -j MASQUERADE; ip6tables -A FORWARD -i wg0 -j ACCEPT; ip6tables -t nat -A POSTROUTING -o  ens3  -j MASQUERADEPostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o  ens3  -j MASQUERADE; ip6tables -D FORWARD -i wg0 -j ACCEPT; ip6tables -t nat -D POSTROUTING -o  ens3  -j MASQUERADEListenPort = 51820PrivateKey =   sprivatekey文件内容 
[Peer]PublicKey = cpublickey文件内容 AllowedIPs = 10.0.0.0/24

启动Wireguard Server

wg-quick up wg0

配置Wireguard Client

vi /etc/wireguard/wg0.conf ,添加以下内容
[Interface]ListenPort = 51821Address = 10.0.0.2PrivateKey =  cprivatekey文件内容 DNS = 8.8.8.8
[Peer]PublicKey =  spublickey文件内容                  AllowedIPs = 0.0.0.0/0Endpoint = 公网IP:端口号PersistentKeepalive = 25

启动Wireguard Client

wg-quick up wg0

Wireguard Client添加主机路由表

route add 公网IP dev ens3

启动之后使用wg指令查看,显示如下表示连接成功

在这里插入图片描述

注意事项

===》Wireguard支持的内核版本需要大于等于3.10
===》ens3为ubuntu的可上网网口
===》开启server端转发修改/etc/sysctl.conf文件,修改之后立即生效指令sysctl -pnet.ipv4.ip_forward=1net.ipv6.conf.all.forwarding=1

这篇关于Ubuntu安装Wireguard操作说明的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/646835

相关文章

Linux系统中卸载与安装JDK的详细教程

《Linux系统中卸载与安装JDK的详细教程》本文详细介绍了如何在Linux系统中通过Xshell和Xftp工具连接与传输文件,然后进行JDK的安装与卸载,安装步骤包括连接Linux、传输JDK安装包... 目录1、卸载1.1 linux删除自带的JDK1.2 Linux上卸载自己安装的JDK2、安装2.1

Mysql表的简单操作(基本技能)

《Mysql表的简单操作(基本技能)》在数据库中,表的操作主要包括表的创建、查看、修改、删除等,了解如何操作这些表是数据库管理和开发的基本技能,本文给大家介绍Mysql表的简单操作,感兴趣的朋友一起看... 目录3.1 创建表 3.2 查看表结构3.3 修改表3.4 实践案例:修改表在数据库中,表的操作主要

C# WinForms存储过程操作数据库的实例讲解

《C#WinForms存储过程操作数据库的实例讲解》:本文主要介绍C#WinForms存储过程操作数据库的实例,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、存储过程基础二、C# 调用流程1. 数据库连接配置2. 执行存储过程(增删改)3. 查询数据三、事务处

Linux卸载自带jdk并安装新jdk版本的图文教程

《Linux卸载自带jdk并安装新jdk版本的图文教程》在Linux系统中,有时需要卸载预装的OpenJDK并安装特定版本的JDK,例如JDK1.8,所以本文给大家详细介绍了Linux卸载自带jdk并... 目录Ⅰ、卸载自带jdkⅡ、安装新版jdkⅠ、卸载自带jdk1、输入命令查看旧jdkrpm -qa

Java使用Curator进行ZooKeeper操作的详细教程

《Java使用Curator进行ZooKeeper操作的详细教程》ApacheCurator是一个基于ZooKeeper的Java客户端库,它极大地简化了使用ZooKeeper的开发工作,在分布式系统... 目录1、简述2、核心功能2.1 CuratorFramework2.2 Recipes3、示例实践3

Java利用JSONPath操作JSON数据的技术指南

《Java利用JSONPath操作JSON数据的技术指南》JSONPath是一种强大的工具,用于查询和操作JSON数据,类似于SQL的语法,它为处理复杂的JSON数据结构提供了简单且高效... 目录1、简述2、什么是 jsONPath?3、Java 示例3.1 基本查询3.2 过滤查询3.3 递归搜索3.4

Tomcat版本与Java版本的关系及说明

《Tomcat版本与Java版本的关系及说明》:本文主要介绍Tomcat版本与Java版本的关系及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Tomcat版本与Java版本的关系Tomcat历史版本对应的Java版本Tomcat支持哪些版本的pythonJ

MySQL Workbench 安装教程(保姆级)

《MySQLWorkbench安装教程(保姆级)》MySQLWorkbench是一款强大的数据库设计和管理工具,本文主要介绍了MySQLWorkbench安装教程,文中通过图文介绍的非常详细,对大... 目录前言:详细步骤:一、检查安装的数据库版本二、在官网下载对应的mysql Workbench版本,要是

新特性抢先看! Ubuntu 25.04 Beta 发布:Linux 6.14 内核

《新特性抢先看!Ubuntu25.04Beta发布:Linux6.14内核》Canonical公司近日发布了Ubuntu25.04Beta版,这一版本被赋予了一个活泼的代号——“Plu... Canonical 昨日(3 月 27 日)放出了 Beta 版 Ubuntu 25.04 系统镜像,代号“Pluc

Linux安装MySQL的教程

《Linux安装MySQL的教程》:本文主要介绍Linux安装MySQL的教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux安装mysql1.Mysql官网2.我的存放路径3.解压mysql文件到当前目录4.重命名一下5.创建mysql用户组和用户并修