fake-corp-proxy v1.1.0
fake-corp-proxy 
A Node.js module and command-line utility to start a fake HTTP(S) Forward-Proxy server with Basic or NTLM fake authentication.
Installation
To use as a command-line utility:
npm install -g fake-corp-proxyTo use as a node.js module:
npm install fake-corp-proxyCLI HTTP usage
Simple usage:
fake-corp-proxy --port 8080 --ntlmAvailable options:
Options:
--version Show version number [boolean]
--port, -p Use this port when starting proxy [number] [default: 8080]
--basic, -b Enable Basic Authentication [boolean] [default: false]
--ntlm, -n Enable NTLM Authentication [boolean] [default: false]
--https, -s Enable HTTPS server [boolean] [default: false]
-h, --help Show help [boolean]CLI HTTPS usage
To make fake-corp-proxy to handle HTTPS protocol, you need to generate a CA certificate:
fake-corp-proxy-ca root my-ca-nameThen, you have to trust the generated certificate on your OS (More infos).
Once your CA certificate is trusted you can tunnel HTTPS requests to your proxy. You can also run the proxy in HTTPS mode.
fake-corp-proxy --httpsIf you forget where is stored you CA certificate, you can run:
fake-corp-proxy-ca root-pathModule usage
Simple usage:
const fakeProxy = require("fake-corp-proxy");
// Start server
const server = fakeProxy.start({
port: 8080,
ntlm: true
});
// When finished
server.close();*Note: The same options as CLI are available"
Proxy Auto-Configuration (PAC Script)
This Proxy supports PAC Script generation:
curl http://localhost:8080/pacSimulate Authentication errors
This module does not really authenticate users.
To simulate an unauthorized user, just use a username starting with unknwown.
(eg: unkwnown, unkwnown-user, unkwnown-test)
curl --proxy-insecure -x \"https://unknown:password@localhost:8081\" https://www.google.com/Exemples
Forward-Proxy in HTTP only:
fake-corp-proxyForward-Proxy with HTTP and HTTPS modes enabled:
fake-corp-proxy --httpsForward-Proxy with HTTP and HTTPS and Basic authentication:
fake-corp-proxy --https --basicForward-Proxy with HTTP and HTTPS and NTLM authentication:
fake-corp-proxy --https --ntlmForward-Proxy with HTTP and HTTPS and NTLM authentication and verbose logging (details of authentication):
fake-corp-proxy --https --ntlm --verboseTrust CA certificate
On Windows:
1. Double-click on the certificate file
2. Click on the Install Certificate button
3. On opened window, select Place all certificates in the following store
4. Click Browse then select Trusted Root Certification Authorities and click OK
On OSX:
1. Double-click on the certificate file
2. Select login or system in the select box and click Add
3. Open Keychain and find the newly imported certificate
4. Double-click on the certificate
5. Select Always Trust in the When using this certificate select box
License
View license information for the software contained in this image.
Contributing
You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can.
Before you start to code, we recommend discussing your plans through a GitHub issue, especially for more ambitious contributions. This gives other contributors a chance to point you in the right direction, give you feedback on your design, and help you find out if someone else is working on the same thing.