Standalone wrapper for Firefox Secure Proxy
Project description
firefox-secure-proxy
Standalone wrapper for Firefox Secure Proxy. Offers plain HTTP proxy interface for all compatible applications.
Walkthrough
- Install
firefox-secure-proxy
package. Use commandpip3 install firefox-secure-proxy
to install package from PyPI or run:pip3 install .
within source directory. Python 3.5+ is required. - Login into Firefox Accounts. Run
fxsp-login
and follow instructions on screen. It's OK if OAuth2 redirected URL is dead, wait for it to bail out and just copy its address into console. - Update proxy token with command
fxsp-getproxytoken
. - Run HTTP stub proxy server based on haproxy. There is docker-compose recipe in stub-server directory. Get into it, copy file
~/.config/fxsp/haproxy_maps
into it and rundocker-compose up
. Local proxy will be running on port 8080, wrapping and authenticating connections to Firefox Secure Proxy.
Updating proxy access token
Proxy access tokens requested by firefox-secure-proxy are valid for 24 hours. In order to update it run in following commands in your local stub-server
directory:
cp -v ~/.config/fxsp/haproxy_map .
docker-compose kill -s HUP haproxy
These actions can be scheduled to be performed automatically. Running haproxy server will be reloaded with no downtime.
Synopsis
$ fxsp-login --help
usage: fxsp-login [-h] [-d DATADIR]
Performs login into Firefox services and retrieves permanent authentication
token, which is used to refresh proxy service token
optional arguments:
-h, --help show this help message and exit
-d DATADIR, --datadir DATADIR
data directory location (default:
/home/user/.config/fxsp)
$ fxsp-getproxytoken --help
usage: fxsp-getproxytoken [-h] [-d DATADIR] [-a AGE]
Retrieves or updates proxy service token using persistent Firefox refresh
token (login token)
optional arguments:
-h, --help show this help message and exit
-d DATADIR, --datadir DATADIR
data directory location (default:
/home/user/.config/fxsp)
-a AGE, --age AGE update token if it's age greater than AGE seconds
(default: 0)
See also
- transocks - transparent proxy adapter which can be used to redirect network traffic into HTTP/SOCKS5 proxy on gateway or a single Linux host. Compatible with firefox-secure-proxy.
- python-proxy - HTTP/Socks4/Socks5/Shadowsocks/ShadowsocksR/SSH/Redirect/Pf TCP/UDP asynchronous tunnel proxy implemented in Python3 asyncio. Can be used to wrap firefox-secure-proxy to SOCKS5 and other protocols.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file firefox_secure_proxy-1.1.0.tar.gz
.
File metadata
- Download URL: firefox_secure_proxy-1.1.0.tar.gz
- Upload date:
- Size: 5.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.6.0 requests-toolbelt/0.9.1 tqdm/4.38.0 CPython/3.7.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4002aef6138a7e5e5222a6db8e1cdc8dc76d7ff526f0179bef9a63e5c6c889d0 |
|
MD5 | 75ae71598f043fb4902ac48a85162c30 |
|
BLAKE2b-256 | bc2923d03eabac92fc6bfcb5dbe13749db77bd06fac203a510e12c19a6f14e50 |
File details
Details for the file firefox_secure_proxy-1.1.0-py3-none-any.whl
.
File metadata
- Download URL: firefox_secure_proxy-1.1.0-py3-none-any.whl
- Upload date:
- Size: 8.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.6.0 requests-toolbelt/0.9.1 tqdm/4.38.0 CPython/3.7.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 06ece9183361b250afc9abcb4b6f9f94b203ac28412c9583302b665b5a4d76ed |
|
MD5 | 1d631b7d491c7efc51c79d5300662181 |
|
BLAKE2b-256 | 12788d855131ff97e1020c82956b0f111556c546cb65dc7f610363a6371e72a6 |