编辑
2025-02-25
PVE
00
请注意,本文编写于 35 天前,最后修改于 31 天前,其中某些信息可能已经过时。

目录

部署流程
CT虚拟机方式
OpenWRT虚拟机方式
软理由代理设置(这里使用的OPNSense防火墙)

本文主要内容

在PVE里,使用两种方法实现透明代理。通过创建CT虚拟机或者创建OpenWRT虚拟机(笔者目前使用的方法)。涉及到的文件都是免费的,请联系笔者获取。

2025-3-1:添加OPNSense UDP说明。

部署流程

CT虚拟机方式

  1. 下载debian/ubuntu CT template。 CleanShot 2024-09-23 at 21.55.09@2x.png
  2. 创建完成后,开始直通设备。请确认自己PVE安装的版本,PVE8.2版本开始,tun设备直通和之前版本不一样了。

    PVE < 8.2

    确认新创建的CT机器的ID,打开PVE自身的Shell,输入nano /etc/pve/lxc/容器id.conf

    conf
    # 添加最后 lxc.apparmor.profile: unconfined lxc.cgroup.devices.allow: a lxc.cap.drop: lxc.cgroup2.devices.allow: c 10:200 rwm lxc.mount.entry: /dev/net/tun dev/net/tun none bind,create=file

    PVE ≥ 8.2

    添加一个Device Passthrough CleanShot 2024-09-30 at 17.38.22@2x.png

  3. 完成后,启动CT虚拟机,从PVE进入虚拟机的Console,手动开启root登录权限
    bash
    sed -i 's/^#\?PermitRootLogin.*/PermitRootLogin yes/' /etc/ssh/sshd_config
  4. 下载Clash文件,并执行下列指令
    bash
    tar -zxf TPCLbuild.tar.gz && cd TPCLbuild mv tpclash-meta-linux-amd64 /usr/local/bin/tpclash && chmod +x /usr/local/bin/tpclash # 自行根据机器架构选择文件 mv tpclash.service /etc/systemd/system mv clash.yaml /etc/clash.yaml sudo systemctl enable tpclash.service --now && systemctl start tpclash.service
    自行替换clash.yaml的内容

OpenWRT虚拟机方式

  1. 下载镜像包并解压后上传至PVE->local(PVE)->ISO Image(或者可以自行去OpenWRT.ai创建自己的镜像)。
  2. 创建虚拟机(看图) CleanShot 2024-10-26 at 01.13.12@2x.png
  3. 创建完成后(不要开机虚拟机),进去PVE自身的Shell,import上传的镜像到虚拟机
  4. 此时回到创建好的虚拟机,点击Hardware ,会出现一个未分配磁盘。
    1. 双击磁盘 image.png
    2. 点击添加 image2.png
    3. 扩大空间(不做也可以,不重要)。此时也可以删除CD/DVD Drive (不做也可以,不重要) image3.png
  5. 修改引导顺序,把刚刚设置的硬盘调整到第一位,取消其他的引导盘。记得打开开机自启。最后启动虚拟机。 image4.png
  6. 进入OpenWRT(我的镜像默认为192.168.100.4)添加DNS转发指向Clash fakeip端口。 CleanShot 2024-10-26 at 01.24.12@2x.png
  7. 下载OpenClash配置备份,在图片位置上传备份。 cleanshot
  8. 最后回到运行状态,往下滑点击启动OpenClash

软理由代理设置(这里使用的OPNSense防火墙)

  1. 创建网关 OPNSense创建网关

  2. 防火墙 → 规则 → LAN按如图创建规则。(如果需要UDP转发,记得创建第二条的时候把UDP也选上) CleanShot 2024-10-02 at 12.15.30@2x.png

    Docker MACVlan创建

    返回OPNSense → Firewall → Aliases创建一个别名。可以放上家里其他设备的内网IP在Content里。这里只是拿Docker的MacVlan举例。 CleanShot 2024-10-02 at 12.12.49@2x.png 还没写,见到请催更😋

  3. 服务 → ISC DHCPv4。设置分发网关为主路由IP和DNS服务器为OpenWRT IP CleanShot 2024-10-02 at 12.09.51@2x.png

本文作者:Lim

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!