|Astonish Results Blog|
NTLM Authorization Proxy Server for Windows
What is 'NTLM Authorization Proxy Server'?
'NTLM Authorization Proxy Server' (APS) is a proxy software that allows you to authenticate via an MS Proxy Server using the proprietary NTLM protocol. Since version 0.9.5 APS has an ability to behave as a standalone proxy server and authenticate http clients at web servers using NTLM method. It can change arbitrary values in your client's request header so that those requests will look like they were created by MS IE. It is written in Python v1.5.2 language and compiled to EXE with py2exe.
- supports NTLM authentication via parent proxy server (Error 407 Proxy Authentication Required);
- supports NTLM authentication at web servers (Error 401 Access Denied/Unauthorized);
- supports translation of NTLM scheme to standard "Basic" authentication scheme;
- supports the HTTPS 'CONNECT' method for transparent tunneling through parent proxy server;
- has ability to change arbitrary values in client's request headers;
- supports unlimited number of client connections;
- supports connections from external hosts;
- supports HTTP 1.1 persistent connections;
- stores user's credentials in config file or requests password from a console during the start time;
- supports intelligent failure detection and failover between multiple upstream proxies;
What is the difference between the python script version and your "for Windows" EXE version?
The EXE version is a standalone executable that does not require python to be installed in your system. There is no need to install anything --something important to Windows Workstations with restrictive access rules. The original program hosted on SourceForge can be found here. The "for Windows" version is merely a repackage of the python script using py2exe with some tweaks on the "main.py" file so that py2exe would not complain when compiling the EXE.
Why would I want to use that program in Windows?
This program is extremely useful if you have a windows program that only supports basic authentication proxy servers and not NTLM authentication proxy servers. This is common in open-source programs and legacy programs with basic or no support for proxy authentication. This program works as a tunnel between your NTLM proxy server and a program that can only support basic proxy servers.
Configuring and Running
Decompress the ZIP archive with your favorite unzipping program to single folder. There you will find a file called "server.cfg". This is where you can configure the program to your liking. The configuration file is well documented and self explanatory. Also note, if you don't want APS to edit the HTTP header files just comment *all* the uncommented lines in section "[CLIENT_HEADER]" ( which means write the # character before every line that does not start with # in that section).
When you are done with configuration just start NTLM-APS.exe!
Licensing and Pricing:
'NTLM Authorization Proxy Server' is distributed under the GNU General Public
License which is included in this archive (see file COPYING).
The above mean that 'NTLM Authorization Proxy Server' is pretty much free. You have to pay nothing for it.
- With NTLM to Basic translation you have only one try to enter right credentials. If you fail then restart your browser.
- There is an issue with APS working as a standalone proxy. It serves requests from an http-client one by one and allows persistent connections, then it may receive several requests in very short time to one thread, and one of them may be to an almost dead banner site, then all the requests made after that one will be waiting till that "bad" connection will be closed due to timeout. So I suggest switching off HTTP/1.1 persistent connections in your browser when you are using APS for web (not proxy) authentication and surfing banner rich environment.
Help and Support :
Please use the sourceforge project page for support and feature requests.
Download NTLM Authentication Server for Windows Zipped Archive (1.96 MB)
Current Version (0.9.9.5-unstable)
Download NTLM Authentication Server for Windows Source Code ( 75.6 KB) (to compile you need python 2.4+ and py2exe)
Current Version (0.9.9.5-unstable)