Integrations / Proxy setups / SOCKS5 proxies
SOCKS5 proxies, with a login and remote DNS.
SOCKS5 carries any traffic and can take a username and password. In Browz a SOCKS5 proxy resolves site names at the proxy by default, so your own network never sees which sites a profile visits.
export BROWZ_TOKEN="$(cat ~/.browz/api-token)"
curl -s -X POST http://127.0.0.1:50333/api/v1/proxy/check -H "Authorization: Bearer $BROWZ_TOKEN" -H "Content-Type: application/json" -d "{
\"scheme\": \"socks5\", \"host\": \"203.0.113.77\", \"port\": 9050,
\"user\": \"$PROXY_USER\", \"pass\": \"$PROXY_PASS\"}"Setup
Set it up.
Check it before you save it
The check route takes a proxy inline. Give both a username and a password, or neither: SOCKS5 with only one of them is refused.
Terminalexport BROWZ_TOKEN="$(cat ~/.browz/api-token)" curl -s -X POST http://127.0.0.1:50333/api/v1/proxy/check -H "Authorization: Bearer $BROWZ_TOKEN" -H "Content-Type: application/json" -d "{ \"scheme\": \"socks5\", \"host\": \"203.0.113.77\", \"port\": 9050, \"user\": \"$PROXY_USER\", \"pass\": \"$PROXY_PASS\"}"Save it
In Proxies, paste one or many in URL form. The password is sealed in an encrypted store when you save it and is not shown again.
Paste into Proxiessocks5://user:[email protected]:9050 socks5://203.0.113.78:9050Keep DNS at the proxy
Destination DNS is Remote (proxy resolver) by default. Switch a proxy to Local only if the proxy cannot resolve names: local DNS shows the sites you visit to this computer’s resolver.
Assign it
Pick it for a profile in the drawer, or with the CLI.
Shellbrowz update "Research – London" --proxy "London socks5"
Example
Add a SOCKS5 proxy from Python, DNS explicit.
pass is a Python keyword, so it goes in as a dictionary entry.
import os
from browz import Browz
from browz.agents import local_credentials
host, token = local_credentials()
browz = Browz(token=token, host=host)
proxy = browz.proxies.create(name="London socks5", scheme="socks5", host="203.0.113.77", port=9050,
user=os.environ["PROXY_USER"], dnsMode="remote-at-proxy",
**{"pass": os.environ["PROXY_PASS"]})
print(proxy["id"])Good to know
Notes and tips.
- SOCKS4 takes a user ID only, no password. Use SOCKS5 when your provider gives you both.
- A wrong username or password shows as “socks5 authentication rejected” in the check: re-enter both.
- Leave a profile’s timezone, language and WebRTC on automatic: Browz sets them from where the proxy really exits, measured at each check, so the profile does not contradict its own address.
- Bring proxies from any provider: Browz supports HTTP, HTTPS, SOCKS4, SOCKS5 and SSH.
- A profile whose proxy fails its exit check is refused at Start. It never falls back to your own connection.
- A proxy changes where a profile connects from, not what a site allows. Use each site only as its terms allow; our acceptable use policy applies whatever the exit.
FAQ
SOCKS5 proxies and Browz.
Does Browz support socks5h?
Browz resolves names at the proxy by default for every SOCKS5 proxy, which is what socks5h means elsewhere. Save it as socks5.
Can I use a SOCKS5 proxy without a password?
Yes, if the proxy allows it: leave both username and password empty.
Does WebRTC go through the SOCKS5 proxy?
With WebRTC on automatic, Browz derives it from the proxy so no local address is exposed. Only the “real” setting shows your own IP.
Get started
Download Browz. Every task, its own browser.
curl -fsSL https://gobrowz.com/agents/install.sh | sh