panel.655665.xyz

GO版Geneva帮助

问:基本不会Linux命令行,能使用吗?

答:此程序面向比较熟悉Linux命令行的极客。如不熟悉Linux命令行,建议使用服务设置向导面板

问:GO版Geneva是什么?

答:是Geneva的GO语言实现版本。如果你不知道这是什么,请勿购买。如果想详细了解Geneva的作用及使用方法,可以访问这里(第三方作者编写的海外301跳转原理说明)。

问:下载后如何使用?

答:按照以下步骤进行操作

  • 首先请转到服务,更改服务的授权IP地址为服务器IP地址,并查看License密钥。
  • 然后解压geneva.tgz,执行:geneva -l [License密钥] -q [队列编号] -w [TCP窗口大小]。
    • 其中:
      • [队列编号]为0 - 65535。
      • [TCP窗口大小]为0 - 65535,通常设置为0或1或4,取决于使用场景。
  • 最后根据使用场景设置iptables规则,将需要修改的数据包通过“-j NFQUEUE --queue-num [队列编号]”参数重定向至上述队列编号。

问:有哪些使用场景?

答:常见的有:

问:如何过移动墙?

答:此方法已失效,建议使用新版过移动墙程序。已失效的旧方法为:设置SYN-ACK数据包窗口大小为25即可。假设需要同时作用于80和443端口,可运行如下命令达到效果

  • geneva -l [License密钥] -q [队列编号] -w 25
    • [队列编号]见上述第2条问答说明。
  • iptables -A OUTPUT -p tcp --sport 80 --tcp-flags SYN,RST,ACK,FIN,PSH SYN,ACK -j NFQUEUE --queue-num [队列编号]
  • iptables -A OUTPUT -p tcp --sport 443 --tcp-flags SYN,RST,ACK,FIN,PSH SYN,ACK -j NFQUEUE --queue-num [队列编号]

问:有没有JS假301跳转抢答?

答:可以参考GO版JS假301抢答程序帮助

问:如何设置真301跳转规则?

答:真301跳转需要使用真301跳转程序,无法使用简单的Geneva和iptables规则。可以参考真301跳转(单域名版)帮助真301跳转(多域名版)帮助

问:如何同时将Geneva应用到80和443端口?

答:有多种方式可以实现,如:

  • 开启2个Geneva进程,分别指定不同的[队列编号]。之后设置2条iptables规则用于80和443端口,分别使用1个Geneva进程指定的[队列编号]。
  • 开启1个Geneva进程。之后设置2条iptables规则用于80和443端口,使用同一个Geneva进程指定的[队列编号]。

问:假设我的[License密钥]为0123456789abcdefghijklmnopqrstuvwxyz,需要修改TCP中80端口的SYN-ACK数据包的窗口大小为3,希望设置的[队列编号]为666,Geneva和iptables应该分别如何设置?

答:

  • 运行geneva(注意执行路径并保持后台运行):
    • geneva -l 0123456789abcdefghijklmnopqrstuvwxyz -q 666 -w 3
  • 设置iptables规则:
    • iptables -A OUTPUT -p tcp --sport 80 --tcp-flags SYN,RST,ACK,FIN,PSH SYN,ACK -j NFQUEUE --queue-num 666

问:Python版Geneva中的命令,如何使用GO版Geneva实现相同的功能?比如:

  • python3 engine.py --server-port 80 --strategy "[TCP:flags:SA]-tamper{TCP:window:replace:0}-|" --log debug --server-side

答:运行如下命令

  • geneva -l [License密钥] -q 2 -w 0
    • 提示:Python版Geneva中tamper{TCP:window:replace:0}会将TCP窗口大小修改为0,所以此处同样设置TCP窗口大小修改为0。如需其它窗口大小,修改-w参数后的数值即可。
  • iptables -A OUTPUT -p tcp --sport 80 --tcp-flags SYN,RST,ACK,FIN,PSH SYN,ACK -j NFQUEUE --queue-num 2

问:这条Python版Geneva中的命令,如何使用GO版Geneva实现相同的功能?

  • python3 engine.py --server-port 80 --strategy "[TCP:flags:A]-tamper{TCP:window:replace:1}-|" --log debug --in-queue-num 3 --out-queue-num 4 --server-side

答:运行如下命令

  • geneva -l [License密钥] -q 4 -w 1
  • iptables -A OUTPUT -p tcp --sport 80 --tcp-flags SYN,RST,ACK,FIN,PSH ACK -j NFQUEUE --queue-num 4

问:GO版Geneva需要像Python版Geneva那样,运行后执行iptables -F吗?

答:不需要。Python版Geneva会自动添加iptables规则,但是添加的iptables规则有很多问题,所以才需要使用iptables -F清除Python版Geneva添加的iptables规则。GO版Geneva不会自动添加iptables规则,所以无需执行iptables -F,只需要根据需要自行添加iptables规则即可。