Skip to content

How to proxy-chain to a server on the open internet that uses basic authentication? #406

@webhype

Description

@webhype

I fully read through the user guide at https://github.com/bytedance/g3/blob/master/g3proxy/UserGuide.en_US.md and didn't see this mentioned:

When proxy-chaining to an external proxy in the wild, whose proxy connect URL would be:

http://myuser:mypass@12.34.56.78:8088

where and how do I define in the escaper (I assume that's where it has be defined), the username and password part of the external HTTP proxy?

What I have tried, guessing there has to be something like username and password settable in the escaper, I modified the basic example at https://github.com/bytedance/g3/blob/master/g3proxy/examples/chain_proxy_protocol/g3proxy.yaml:

escaper:
  - name: proxy_pp1
    type: proxy_http
    proxy_addr: "12.34.56.78:8088"
    use_proxy_protocol: 1
    username: myuser
    password: mypass

Not surprisingly, ./g3proxy fails with error:

Error: failed to load config, opts: ProcArgs { daemon_config: DaemonArgs { with_systemd
: false, daemon_mode: false, verbose_level: 0, process_name: "g3proxy", pid_file: None,
 test_config: false }, output_graphviz_graph: false, output_mermaid_graph: false, outpu
t_plantuml_graph: false }

Caused by:
    0: failed to parse value of key escaper
    1: value is an array, with 3 objects
    2: #0: failed to load map {String("name"): String("proxy_pp1"), String("type"): Str
ing("proxy_http"), String("proxy_addr"): String("12.34.56.78:8088"), String("use_prox
y_protocol"): Integer(1), String("username"): String("myuser"), String("password"):
 String("mypass")}
    3: failed to parse value of key username
    4: invalid key username

How do I authenticate with the external HTTP proxy?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions