NTLM Authorization Proxy Server for Windows
Submitted by Yousif on Fri, 30/03/2007 - 2:19pm.
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.
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:
Known issues:
Help and Support :
Please use the sourceforge project page for support and feature requests.
Download:
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)
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.
Main features:
- 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.
Known issues:
- 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:
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)










Great post
Great post, very detailedly, I had tried many proxy software, but APS maybe is my need. I just worry about the software update, the latest version seem released on january 2006.
Useful post
Thank you for this post. Until now I was using CC Proxy Server but I am always ready to try something better and easy to use.