Skip to main content

HTTP Negotiate (SPNEGO) proxy authentication support for applications.

Project description

# Proxy-Negotiate

HTTP Negotiate (SPNEGO) proxy authentication support for applications. This
allows applications that do not support HTTP proxies or do not support HTTP
proxies with Negotiate authentication to allow them to safely traverse
corporate firewalls without whitelisting IP addresses or MAC addresses and
rather relying on secure user authentication. This tool is not intended to
bypass firewall or proxy restrictions, in fact this tool was designed for better
corporate security and centralized control.

## Installation

Install the easy way through PyPi:

pip install proxy-negotiate

Or alternatively download and build yourself:

```
git clone https://github.com/cour4g3/proxy-negotiate
cd proxy-negotiate
python setup.py install
```

## Usage

### nc-negotiate

A netcat-like implementation for use with programs such as SSH; now by simply
using ProxyCommand, SSH can safely traverse the proxy through an HTTP CONNECT
TCP tunnel.

nc-negotiate host port [proxy_host] [proxy_port]

Example of usage with openSSH:

```
Host myexternalhost.com:
ProxyCommand nc-negotiate %h %p
```

## Todo

- Better parsing of the `http_proxy` and other proxy environment variables.
- Implement a fake proxy to modify requests from applications that do not
support HTTP Negotiate proxy authentication and pass it to the real proxy with
the correct authentication header.

## License

Licensed under the MIT License.

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

Proxy-Negotiate-0.1.0.tar.gz (3.7 kB view details)

Uploaded Source

Built Distribution

Proxy-Negotiate-0.1.0.linux-x86_64.tar.gz (7.2 kB view details)

Uploaded Source

File details

Details for the file Proxy-Negotiate-0.1.0.tar.gz.

File metadata

File hashes

Hashes for Proxy-Negotiate-0.1.0.tar.gz
Algorithm Hash digest
SHA256 da91d445b80d1ca62b282072585ccea932cd5516280339699a522ad8495752e1
MD5 64dd1f9c888e0294d88f39a56d790699
BLAKE2b-256 22da787229310b96788a7054b91bf4f508728626667ec07c3f14d10bf8c4c93c

See more details on using hashes here.

File details

Details for the file Proxy-Negotiate-0.1.0.linux-x86_64.tar.gz.

File metadata

File hashes

Hashes for Proxy-Negotiate-0.1.0.linux-x86_64.tar.gz
Algorithm Hash digest
SHA256 8da237ecadc0522da302f8e025c324fe86e608af434f6156616c9616f11fbddd
MD5 ba92aaca78e232386f3dbf819b4273a4
BLAKE2b-256 8e2c70926ff2e4237ad80c65b9a2f077b8a514a61a86b3e45874ed31fcf18b7f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page