VPS 使用中

PO0 DD 转发 哪吒Nezha

超强的国内转发

标签:

PO0用了一个月了确实挺好的,使用中的技巧分享如下

半官方的指导(可以略过)
https://wiki.kele.my/guide/getting-started

#DD PO0

下载脚本po0.sh
脚本来自于:
https://www.nodeseek.com/post-539840-1

上传po0.sh到po0机器的/root

赋予执行权限
chmod +x po0dd.sh

执行
./po0dd.sh

#升级debian13(不需要升级的也可以跳过这一步)

修改软件源为 Debian 13 (Trixie)
sed -i ‘s/bookworm/trixie/g’ /etc/apt/sources.list

这一步不需要
# 如果有 sources.list.d 下的配置文件,也需要修改
sed -i ‘s/bookworm/trixie/g’ /etc/apt/sources.list.d/*.list

执行系统升级
apt update
apt upgrade -y
apt dist-upgrade -y # 或使用 apt full-upgrade -y

#设置nftables转发

安装nftales
apt update
apt install -y nftables

开启 IPv4 转发:
cat >/etc/sysctl.d/99-po0-forward.conf <<‘EOF’
net.ipv4.ip_forward=1
EOF
sysctl –system

修改配置文件(sample见另一个文件)
/etc/nftables.conf

这里配置了三个PO0端口匹配不同的RFCHost的机器,如果你有小于等于3个端口要配置,可以仅配置小于等于3个端口;如果有大于3个端口要配置,不光要添加上面的线路,还要添加下面规则。30001和8007都是示例

#!/usr/sbin/nft -f

# 出口机公网 IP
define RELAY_LAN_IP = xxx.xxx.xxx.xxx

# 线路 1:CTC
# Po0的端口
define PORT_IN_1 = 30001
# CTC的公网IP
define DEST_IP_1 = xxx.xxx.xxx.aaa
# CTC的端口
define DEST_PORT_1 = 8007

# 线路 2:JINX
define PORT_IN_2 = 30002
define DEST_IP_2 = xxx.xxx.xxx.bbb
define DEST_PORT_2 = 8007

# 线路 3:JP
define PORT_IN_3 = 30003
define DEST_IP_3 = xxx.xxx.xxx.ccc
define DEST_PORT_3 = 8007

flush ruleset

table ip nat {
    chain prerouting {
        type nat hook prerouting priority dstnat; policy accept;

        meta l4proto { tcp, udp } th dport $PORT_IN_1 dnat to $DEST_IP_1:$DEST_PORT_1
        meta l4proto { tcp, udp } th dport $PORT_IN_2 dnat to $DEST_IP_2:$DEST_PORT_2
        meta l4proto { tcp, udp } th dport $PORT_IN_3 dnat to $DEST_IP_3:$DEST_PORT_3
    }

    chain postrouting {
        type nat hook postrouting priority srcnat; policy accept;

        # 发往出口机的流量,把源地址改为 Po0 内网 IP
        ip daddr $DEST_IP_1 meta l4proto { tcp, udp } th dport $DEST_PORT_1 snat to $RELAY_LAN_IP
        ip daddr $DEST_IP_2 meta l4proto { tcp, udp } th dport $DEST_PORT_2 snat to $RELAY_LAN_IP
        ip daddr $DEST_IP_3 meta l4proto { tcp, udp } th dport $DEST_PORT_3 snat to $RELAY_LAN_IP
    }
}

table ip filter {
    chain forward {
        type filter hook forward priority 0; policy accept;

        # MSS 调整,减少 MTU 不匹配导致的速度慢或断流
        ip daddr { $DEST_IP_1, $DEST_IP_2, $DEST_IP_3 } tcp flags syn tcp option maxseg size set 1452
    }
}

 

检查配置:
nft -c -f /etc/nftables.conf
应该是没有输出,配置文件才是没有错误

配置开机启动:
nft -f /etc/nftables.conf
systemctl enable nftables
systemctl restart nftables

#哪吒Nezha探针安装

下载最新agent
浏览器下载
https://github.com/nezhahq/agent/releases

或者从VPS上面下载
wget https://github.com/nezhahq/agent/releases/latest/download/nezha-agent_linux_amd64.zip

上传上面下载的agent到po0机器的tmp目录

创建文件夹
mkdir -p /opt/nezha/agent

安装unzip
apt install unzip -y

解压缩
unzip /tmp/nezha-agent_linux_amd64.zip -d /opt/nezha/agent

生成配置文件(注意这里的2096端口也是CF支持的一个TLS回源端口,PO0封禁了常用TLS端口;client_secret自己去nezha面板通过创建一个新的服务器获取)

tee /opt/nezha/agent/config.yml >/dev/null <<EOF
debug: false
log:
console:
level: info
enable: true

server: "nezha.jollyroger.top:2096"
tls: true
client_secret: "填自己的"
disable_auto_update: true
disable_force_update: true
disable_command_execute: true
EOF

安装 systemd 服务
cd /opt/nezha/agent
./nezha-agent service -c /opt/nezha/agent/config.yml install

启动agent
systemctl start nezha-agent
systemctl enable nezha-agent

如果要debug(配置文件里面的debug要改成true)
/opt/nezha/agent/nezha-agent -c /opt/nezha/agent/config.yml

相关导航

暂无评论

暂无评论...