Cgproxy Versions Save

Transparent Proxy with cgroup v2。透明代理,配合v2ray/Qv2ray食用最佳

v0.20

1 year ago

Fix for libbpf 1.x

v0.19

3 years ago
  • fix execsnoop interrupt after sleep
  • support aarch64
  • fix in case xtables lock
  • no hardcoded path
  • service after network-online.target

v0.18

3 years ago
  • Now tested on archlinux, fedora 32, ubuntu 18.04, ubuntu 20.04, deepin 15.11, deepin v20 beta

v0.17

3 years ago
  • fix #5: segfault when program not exist
  • expose table, fwmark, mark_newin to config and default use more uncommon route table and mark
  • drop CO-RE feature, and use execsnoop-kernel with stable tracepoint, so btf is not required for ubuntu

v0.16

3 years ago

v0.15

3 years ago
  • fix processing /proc/<pid>/cgroup
  • leave alone if already in preserved cgroup for runing or new process
  • cgproxy and cgnoproxy command now have highest priority
  • other small optmize

v0.14

3 years ago
  • implement execsnoop part as thread in c++
  • build libexecsnoop.so module and load in runtime
  • replace python-bcc with bcc as optional make depency
  • some small bug fix

v0.13

3 years ago
  • program level proxy control in config, need python-bcc installed
  • add python-bcc as optional dependency
{
"port": 12345,
"program_noproxy": ["v2ray", "qv2ray"],
"program_proxy": [],
"cgroup_noproxy": ["/system.slice/v2ray.service"],
"cgroup_proxy": [],
"enable_gateway": false,
"enable_dns": true,
"enable_udp": true,
"enable_tcp": true,
"enable_ipv4": true,
"enable_ipv6": true
}
  • add --pid option for cgproxy/cgnproxy
cgproxy --pid <PID>
cgnoproxy --pid <PID>

v0.12

3 years ago
  • config file change to /etc/cgproxy/config.json, so not compatible with 0.0x, read readme
  • attach setuid removed
  • process communication now based on unix socket, the other program can control through unix socket

v0.08

3 years ago
  • now also support multi proxy/noproxy cgroup using array, for example
    cgroup_proxy=("/proxy.slice" "/system.slice/xxx" "/xxx/xxx/xxx")
    cgroup_noproxy=("/noproxy.slice" "/system.slice/v2ray.service")