首页 > 其他分享 >Debain 11 安装并配置 wireguard

Debain 11 安装并配置 wireguard

时间:2022-08-29 20:46:04浏览次数:70  
标签:11 wg iptables Debain client wireguard wg0 24

1、安装

apt install wireguard

2、开启ipv4流量转发并使其生效

echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf
sysctl -p

3、配置wireguard服务端

3.1、生成服务器和客户端密钥对

wg genkey | tee server_privatekey | wg pubkey > server_publickey
wg genkey | tee client_privatekey | wg pubkey > client_publickey

3.2、服务器配置文件

根据上一步产生的服务器私钥server_privatekey,客户端公钥client_publickey填入配置文件。

如果网卡名称不是eth0,根据实际情况修改PostUp/PostDown字段的iptables命令。

ListenPort为服务端口号,可以自定义设定。

[Interface]
# 填写本机的privatekey 内容
PrivateKey = $(cat server_privatekey)
Address = 10.0.8.1/24
PostUp   = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -A FORWARD -o wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -D FORWARD -o wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
# 注意该端口是UDP端口
ListenPort = 50814
DNS = 8.8.8.8
MTU = 1420
[Peer]
# 填写对端的publickey 内容
PublicKey =  $(cat client_publickey) 
AllowedIPs = 10.0.8.10/24

3.3、客户端配置文件

根据上一步生产的客户端私钥client_privatekey,服务器公钥cserver_publickey填入配置文件。

修改Endpoint为服务器实际的IP和端口。

[Interface]
  # 填写本机的privatekey 内容
  PrivateKey = $(cat client_privatekey) 
  Address = 10.0.8.10/24
  DNS = 8.8.8.8
  MTU = 1420
[Peer]
  # 填写对端的publickey 内容
  PublicKey = $(cat server_publickey) 
  # 服务器公网的IP:PORT
  Endpoint = 服务器公网的IP:50814
  AllowedIPs = 0.0.0.0/0, ::0/0
  PersistentKeepalive = 25

3.4、启动服务

设置开机自启动

systemctl enable wg-quick@wg0

首次启动wg0

wg-quick up wg0
[#] ip link add wg0 type wireguard
[#] wg setconf wg0 /dev/fd/63
Warning: AllowedIP has nonzero host part: 10.0.8.10/24
[#] ip -4 address add 10.0.8.1/24 dev wg0
[#] ip link set mtu 1420 up dev wg0
[#] resolvconf -a wg0 -m 0 -x
/usr/bin/wg-quick: line 32: resolvconf: command not found
[#] ip link delete dev wg0

Error: /usr/bin/wg-quick: line 32: resolvconf: command not found

解决:

apt install resolvconf -y

重新启动服务,成功信息如下。

wg-quick up wg0
[#] ip link add wg0 type wireguard
[#] wg setconf wg0 /dev/fd/63
Warning: AllowedIP has nonzero host part: 10.0.8.10/24
[#] ip -4 address add 10.0.8.1/24 dev wg0
[#] ip link set mtu 1420 up dev wg0
[#] resolvconf -a tun.wg0 -m 0 -x
[#] iptables -A FORWARD -i wg0 -j ACCEPT; iptables -A FORWARD -o wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

3.5、查看服务状态

 wg
interface: wg0
  public key: xxx
  private key: (hidden)
  listening port: 50814

peer: xxx
  allowed ips: 10.0.8.0/24

4、配置wireguard客户端

android平台:Google Paly商店wireguard app

4.1、获取客户端配置

为了方便客户端获取配置可以把client.conf转为二维码扫描使用。

目标配置文件:client.conf

服务器安装qrencode工具

apt install qrencode

将client.conf文件转为二维码

qrencode -t ansiutf8 < client.conf

4.2、wireguard app选择扫描二维码导入

识别二维码成功,为配置命名并保存。

4.3、客户端开启连接

点击连接名称可以查看到连接详情。

5、服务器端连接状态

wg
interface: wg0
  public key: xxx
  private key: (hidden)
  listening port: 50814

peer: xxx
  endpoint: x.x.x.x:xxxx
  allowed ips: 10.0.8.0/24
  latest handshake: 19 seconds ago
  transfer: 55.94 KiB received, 28.78 KiB sent

 

参考:

https://cloud.tencent.com/developer/article/1832768

https://www.wireguard.com/quickstart/#quick-start

 

标签:11,wg,iptables,Debain,client,wireguard,wg0,24
From: https://www.cnblogs.com/Primzahl/p/16637296.html

相关文章

  • MAC brew 安装wireguard-tools
     ➜Desktopbrewinstall-swireguard-tools==>Downloadinghttps://ghcr.io/v2/homebrew/core/bash/manifests/5.1.16########################################......
  • 前端Day11
    Flex布局:当为父元素设置flex布局后,子元素的float、clear、vertical-align属性将失效! flex常见父项属性:flex-direction设置主轴方向:justify-content设置子元素排......
  • Discuz论坛网站favicon图标更改方法 (2014-03-08 11:05:59)
    先制作一个网站的favicon.ico,百度搜索favicon在线制作可以找到很多的网站提供在线制作[推荐:http://www.ico.la/],favicon是ico格式的,你可以把你的图标在线制作什么ico,官方的......
  • Discuz!X3.2/3.3/3.4程序搬家/数据库修改教程 (2019-06-11 17:07:29)
    路径:/wwwroot/config/config_global.php这个根据你网站安装的路径而定。 打开config_global.php文件修改:$_config['db']['1']['dbpw']='原来密码'; 原来密码......
  • Java11-Object类,常用API
    day11【Object类、常用API】主要内容Object类Date类DateFormat类Calendar类System类StringBuilder类包装类第一章Object类1.1概述java.lang.Object类是Java......
  • 【Virt.Contest】CF1155(div.2)
    CF传送门T1:ReverseaSubstring只有本身单调不减的字符串不能转换为字典序更小的字符串。否则肯定会出现\(s_i>s_{i+1}\)的情况。所以只要从头到尾扫一遍,找到\(s_i>......
  • HC32L110(三) HC32L110的GCC工具链和VSCode开发环境
    目录HC32L110(一)HC32L110芯片介绍和Win10下的烧录HC32L110(二)HC32L110在Ubuntu下的烧录HC32L110(三)HC32L110的GCC工具链和VSCode开发环境以下介绍Ubuntu下搭建......
  • 如何启动?win11下的Linux子系统【4种方法】
    实验室的开发环境在Linux操作系统下,时不时就需要打开Linux环境去操作,而且需要本地编译或者远程SSH。这时候window和Linux切换很不方便。本科的做法就是window+虚拟机的Linu......
  • win11常用快捷键
    我们接着上篇分享一些快捷操作:一,单个窗口操作:1,win+方向键上篇已有详细说明,不再赘述(请参考:Win11有关win的快捷键-X_ChenD_Hai-博客园(cnblogs.com)第13......
  • 11.好烦哦
    寒风吹进我的家听着闹钟滴滴答看了手表七点半起床去把牙刷刷昨天工作没做完不想接领导电话肚子饿的咕咕叫我喊了声妈妈......