Skip to content

Linux 客户端 ​

GeckoHop Linux 客户端只有一个程序 geckohop。没有桌面的服务器可以用命令行操作,有桌面的电脑或局域网内的其它设备可以用浏览器打开 Web 控制台。

系统要求 ​

  • 64 位 Linux(x86_64 / amd64 或 ARM64 / aarch64),使用 systemd
  • 已安装 curl、iproute2(ip 命令),大多数发行版自带
  • 安装需要 root 权限(sudo)

安装 ​

复制下面这行命令到终端运行:

bash
curl -fsSL https://geckohop.com/linux/install.sh | sudo sh

它会自动识别本机架构,下载最新版本,校验安装包后完成安装。看到“GeckoHop 服务已安装并启动”就说明安装成功,接着看快速上手。

安装过程会:

  • 把程序复制到 /usr/local/bin/geckohop;
  • 创建 geckohop 用户组,并把当前用户加入(重新登录一次后,命令行就不需要再加 sudo);
  • 注册并启动 systemd 服务 geckohop,开机自动运行。

离线安装 ​

服务器无法访问官网时,先在其它电脑上从下载页下载安装包(uname -m 显示 x86_64 选 x86_64,显示 aarch64 选 ARM64),上传到服务器后运行:

bash
tar xzf geckohop-*-linux-*.tar.gz
sudo sh install.sh

确认服务已运行 ​

bash
systemctl status geckohop

快速上手 ​

bash
geckohop login you@example.com   # 输入密码(不回显)
geckohop nodes                   # 列出可用节点
geckohop connect 2               # 按序号连接;也可以写节点名称
geckohop status                  # 查看连接状态
geckohop disconnect              # 断开

connect 不写节点时使用上次的节点。服务重启(包括开机)后会自动恢复上次的连接;执行过 disconnect 则不会自动连接。

还没有账户?

注册账户、找回密码需要完成滑块验证,请在 官网 或下文的 Web 控制台 中操作。

连接模式 ​

TUN 全局(默认) ​

接管本机所有流量,任何程序都无需单独设置代理。

bash
geckohop mode tun
  • 不修改系统 DNS 配置(/etc/resolv.conf)。
  • 局域网、云服务器内网与元数据地址仍然直连。
  • 通过 SSH 远程登录的服务器上也可以放心开启,现有的 SSH 连接不会断开。

本地代理 ​

不改动任何系统设置,只在本机开启代理端口,需要的程序自行设置代理:

bash
geckohop mode proxy
协议默认地址
SOCKS5127.0.0.1:1080
HTTP127.0.0.1:8080

测试:

bash
curl -x socks5h://127.0.0.1:1080 https://ipinfo.io

把代理共享给局域网内的其它设备:

bash
geckohop proxy --socks 0.0.0.0:1080 --http 0.0.0.0:8080

WARNING

监听 0.0.0.0 时,能访问到本机的任何人都可以使用这个代理。在有公网 IP 的服务器上,请用防火墙限制来源。

分流 ​

bash
geckohop routing global   # 全局模式:全部流量经节点
geckohop routing rule     # 智能模式:国内网站直连,其余经节点

在“智能模式”下,可以为个别域名指定走向:

bash
geckohop rule add example.com direct   # 直连
geckohop rule add example.org proxy    # 经节点
geckohop rule list
geckohop rule del example.com

规则库每天自动更新,也可以手动更新:

bash
geckohop rules update

Web 控制台 ​

Web 控制台可以完成命令行的全部操作,以及注册、找回密码。

默认只允许本机访问:在本机浏览器打开 http://127.0.0.1:9090。

在局域网内的其它设备上使用:

bash
geckohop web --listen 0.0.0.0:9090   # 首次会要求设置访问密码

然后在其它设备上打开 http://<本机IP>:9090,输入刚才设置的密码。

命令作用
geckohop web --password修改访问密码
geckohop web --listen 127.0.0.1:9090恢复为仅本机访问
geckohop web --off关闭 Web 控制台

常用命令 ​

命令作用
geckohop account查看账户与套餐
geckohop retry连接被阻止后重试
geckohop logout退出登录并断开
geckohop version查看版本
geckohop help查看全部命令

升级 ​

重新运行一次安装命令即可,账户和设置会保留:

bash
curl -fsSL https://geckohop.com/linux/install.sh | sudo sh

卸载 ​

bash
sudo geckohop uninstall-service
sudo rm /usr/local/bin/geckohop
sudo rm -rf /var/lib/geckohop   # 删除账户与设置(可选)

常见问题 ​

提示权限不足或连不上守护进程 ​

安装后需要重新登录一次系统,当前用户才会获得 geckohop 组权限。在此之前可以先在命令前加 sudo。

显示“已阻止” ​

网络中断超过一段时间后,客户端会阻止流量,以免数据绕过节点直连发出。网络恢复后执行:

bash
geckohop retry

远程服务器开启 TUN 后连不上了 ​

正常情况下 SSH 不会断开。如果确实失去连接,请在云服务商控制台的“远程命令 / 执行命令”中以 root 运行:

bash
geckohop disconnect || systemctl stop geckohop

只需要给其它机器提供代理时,建议使用本地代理模式,它不改动任何路由。

查看运行日志 ​

bash
journalctl -u geckohop -e