锦方的个人网页 · 如果有一天你突然想起了我


mac在Debian安装wireguard和使用

目录

Debian服务器端

1、在服务器安装wireguard

echo "deb http://deb.debian.org/debian/ unstable main" > /etc/apt/sources.list.d/unstable.list
printf 'Package: *\nPin: release a=unstable\nPin-Priority: 150\n' > /etc/apt/preferences.d/limit-unstable
apt update
apt install wireguard

2、生成公钥、私钥、共享密钥

sudo mkdir -p /etc/wireguard && sudo chmod 0777 /etc/wireguard
cd /etc/wireguard
umask 077
wg genkey | tee private.key | wg pubkey > public.key | wg genpsk > preshared.key

输出私钥

cat  private.key

输出公钥

cat  public.key

输出共享密钥

cat  preshared.key

3、编辑配置文件

sudo vi wg0.conf
-----------------------------
[Interface]
Address = 192.168.1.1/24服务器上的接口
ListenPort = 端口
PrivateKey = 服务器私钥
PostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
SaveConfig = true

[Peer]
PublicKey = 连接节点公钥(由客户端生成)
AllowedIPs = 192.168.1.2/32     (VPN 隧道的内网 IP 段)

设置服务器的 NAT 流量转发

sudo vi /etc/sysctl.conf
------------------------------
net.ipv4.ip_forward = 1
------------------------------
sudo sysctl -p

在服务器端添加虚拟网卡 wg0,设置隧道 IP 和 iptables 规则

sudo ip link add dev wg0 type wireguard
sudo ip address add dev wg0 192.168.1.1/24
sudo ip link set wg0 up
sudo wg setconf wg0 /etc/wireguard/wg0.conf
sudo iptables -A FORWARD -i wg0 -j ACCEPT
sudo iptables -A FORWARD -o wg0 -j ACCEPT
sudo iptables -t nat -A POSTROUTING -o wg0 -j MASQUERADE
sudo iptables -t nat -A POSTROUTING -o ens4 -j MASQUERADE

如果遇到提示 RTNETLINK answers: Operation not supported很可能就是wireguard模块没有加载 查看模块是否启动

lsmod | grep wireguard

先检查是否升级到最新系统再启动模块,如果报错需要重启

modprobe wireguard

检查wg设置是否正常

sudo wg show

4、设置开启启动

systemctl enable wg-quick@wg0

mac os端

1、安装

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

brew install wireguard-tools

2、生成公钥、私钥

wg genkey | tee private.key | wg pubkey > public.key

输出私钥

cat  private.key

输出公钥

cat  public.key

3、编辑配置文件wg0.conf

[Interface]
Address = 192.168.1.3/32 本地接口地址
PrivateKey = 本地客户端私钥
ListenPort = 端口
DNS = 1.1.1.1

[Peer]
PublicKey = 服务器端公司(由服务器端生成)
AllowedIPs = 0.0.0.0/0,::0/0  (VPN隧道的内网IP段)
Endpoint = 远程服务器公网IP和端口

4、启动/关闭

wg-quick up wg0

wg-quick down wg0

参考:https://www.wireguard.com/quickstart/

系列:note

该系列自动来自分类: note

  1. macOS 外置硬盘为什么会出现 ._* 文件
  2. 小众工具软件应该免费、买断还是订阅
  3. 用iPhone和iPad维护Git静态网站可行吗
  4. 一个Mac截图工具,从能截图到能上架还差多远
  5. 重复文件清理工具最危险的不是漏扫,而是误删
  6. 备份dokuwiki数据
  7. grep 命令
  8. zola的Front Matter完整字段的意思
  9. 从dokuwiki切换到quartz
  10. 安装immich记录
  11. 修改dokuwiki时区
  12. macos安装dokuwiki
  13. Debian创建新用户和设置防火墙
  14. mac在Debian安装wireguard和使用 (当前)
  15. 再也不买不能解bl的手机了
  16. Firefox设置
  17. debian安装FFmpeg来合并youtube音频
  18. css 扩散列表
  19. 两个练习
  20. css RWD
  21. css 图片
  22. css 提示
  23. css 下拉
  24. css 表单
  25. css 导航栏
  26. css 单词
  27. HTML SVG
  28. HTML Canvas
  29. HTML input
  30. HTML 结构
  31. 电气施工图说明
  32. china uses dropbox
  33. Nginx installs SSL certificates
  34. debian install shadowsocks
  35. Visual studio code set the python environment
  36. install hexo

下一篇推荐

系列继续阅读

再也不买不能解bl的手机了