Ubuntu安装wireguard服务端,windows连接

2024-02-20 19:04

本文主要是介绍Ubuntu安装wireguard服务端,windows连接,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

需求:想要随时随地远程到ubuntu电脑的内网中,ping通所有的内网ip,方便通过内网ip进行远程

一、ubuntu上安装配置wireguard服务

1,更新软件包并安装wireguard服务端软件

sudo apt update

sudo apt install wireguard

2,重新服务端的公钥和私钥

wg genkey | sudo tee /etc/wireguard/privatekey | wg pubkey | sudo tee /etc/wireguard/publickey

 运行以上命令后会在/etc/wireguard目录下生成privatekey和publickey两个文件,里面存放的就是服务端的私钥和公钥,待会要使用

3,配置wireguard

新建一个wg0.conf文件

sudo vi /etc/wireguard/wg0.conf

 并写入以下配置

[Interface]
# 服务端接口的ip地址
Address = 10.0.0.1/24
SaveConfig = true
PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -t nat -A POSTROUTING -o enp2s0 -j MASQUERADE
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -t nat -D POSTROUTING -o enp2s0 -j MASQUERADE
ListenPort = 51820
PrivateKey = 填写服务端的私钥[Peer]
PublicKey = 填写客户端的公钥
AllowedIPs = 10.0.0.2/32, 192.168.0.0/16

其中PostUp 和PostDown中的enp2s0是ubuntu系统运行ifconfig下的网口接口的名称

 AllowedIPs 是允许通过的ip地址,将会在ubuntu上创建路由表,使用ip route查看路由表

4,启动服务和设置开机自启动和wg0接口

sudo systemctl start wg-quick@wg0

sudo systemctl enable wg-quick@wg0

sudo wg-quick up wg0

 在每次修改配置前需要先使用sudo wg-quick down wg0关闭接口wg0,修改完后再sudo wg-quick up wg0启动,否则修改不生效!

二、windows客户端安装配置wireguad

1,下载安装

下载wireguard-amd64-0.5.3.msi - tlanyan

2,打开wireguad客户端,点击新建隧道旁的箭头新建,会自动生成客户端的公钥和私钥

3, 进行配置

记得服务器要开放51820端口 

保存完点击连接,然后在windows的CMD窗口中就能ping能ubuntu服务端的内网ip地址了

 所有与ubuntu在同一个内网的ip都能够ping得通!

如果ubuntu(192.168.31.30)与其他同网段内的内网ip之前无法ping通可能是路由的问题,需要手动添加路由到路由表中

ip route add 192.168.31.0/24 dev enp2s0 proto kernel scope link src 192.168.31.30

 以上命令的含义是将发送到192.168.31.0/24网络的数据包通过enp2s0网络接口发送,源IP地址为192.168.31.30

这篇关于Ubuntu安装wireguard服务端,windows连接的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Ubuntu固定虚拟机ip地址的方法教程

《Ubuntu固定虚拟机ip地址的方法教程》本文详细介绍了如何在Ubuntu虚拟机中固定IP地址,包括检查和编辑`/etc/apt/sources.list`文件、更新网络配置文件以及使用Networ... 1、由于虚拟机网络是桥接,所以ip地址会不停地变化,接下来我们就讲述ip如何固定 2、如果apt安

SQL 中多表查询的常见连接方式详解

《SQL中多表查询的常见连接方式详解》本文介绍SQL中多表查询的常见连接方式,包括内连接(INNERJOIN)、左连接(LEFTJOIN)、右连接(RIGHTJOIN)、全外连接(FULLOUTER... 目录一、连接类型图表(ASCII 形式)二、前置代码(创建示例表)三、连接方式代码示例1. 内连接(I

Python安装时常见报错以及解决方案

《Python安装时常见报错以及解决方案》:本文主要介绍在安装Python、配置环境变量、使用pip以及运行Python脚本时常见的错误及其解决方案,文中介绍的非常详细,需要的朋友可以参考下... 目录一、安装 python 时常见报错及解决方案(一)安装包下载失败(二)权限不足二、配置环境变量时常见报错及

MySQL8.2.0安装教程分享

《MySQL8.2.0安装教程分享》这篇文章详细介绍了如何在Windows系统上安装MySQL数据库软件,包括下载、安装、配置和设置环境变量的步骤... 目录mysql的安装图文1.python访问网址2javascript.点击3.进入Downloads向下滑动4.选择Community Server5.

Windows设置nginx启动端口的方法

《Windows设置nginx启动端口的方法》在服务器配置与开发过程中,nginx作为一款高效的HTTP和反向代理服务器,被广泛应用,而在Windows系统中,合理设置nginx的启动端口,是确保其正... 目录一、为什么要设置 nginx 启动端口二、设置步骤三、常见问题及解决一、为什么要设置 nginx

java如何通过Kerberos认证方式连接hive

《java如何通过Kerberos认证方式连接hive》该文主要介绍了如何在数据源管理功能中适配不同数据源(如MySQL、PostgreSQL和Hive),特别是如何在SpringBoot3框架下通过... 目录Java实现Kerberos认证主要方法依赖示例续期连接hive遇到的问题分析解决方式扩展思考总

CentOS系统Maven安装教程分享

《CentOS系统Maven安装教程分享》本文介绍了如何在CentOS系统中安装Maven,并提供了一个简单的实际应用案例,安装Maven需要先安装Java和设置环境变量,Maven可以自动管理项目的... 目录准备工作下载并安装Maven常见问题及解决方法实际应用案例总结Maven是一个流行的项目管理工具

Python中连接不同数据库的方法总结

《Python中连接不同数据库的方法总结》在数据驱动的现代应用开发中,Python凭借其丰富的库和强大的生态系统,成为连接各种数据库的理想编程语言,下面我们就来看看如何使用Python实现连接常用的几... 目录一、连接mysql数据库二、连接PostgreSQL数据库三、连接SQLite数据库四、连接Mo

MySql9.1.0安装详细教程(最新推荐)

《MySql9.1.0安装详细教程(最新推荐)》MySQL是一个流行的关系型数据库管理系统,支持多线程和多种数据库连接途径,能够处理上千万条记录的大型数据库,本文介绍MySql9.1.0安装详细教程,... 目录mysql介绍:一、下载 Mysql 安装文件二、Mysql 安装教程三、环境配置1.右击此电脑

oracle如何连接登陆SYS账号

《oracle如何连接登陆SYS账号》在Navicat12中连接Oracle11g的SYS用户时,如果设置了新密码但连接失败,可能是因为需要以SYSDBA或SYSOPER角色连接,解决方法是确保在连接... 目录oracle连接登陆NmOtMSYS账号工具问题解决SYS用户总结oracle连接登陆SYS账号