First off the Steam client doesn't use the proxy for anything other than updating the client. The rest of the steam communications is all UDP based. You will not be able to play games via a proxy server.
For the updates you can use a proxy, but in general to use Linux applications behind an Authenticating proxy server, you need to get the authentication details supplied to the proxy server. Most often this is Microsoft NTLM type authentication.
In the rare case that it is not, you can authenticate to the proxy by means of the following syntax:
http://username:password@proxyhost:port/
Example:
http_proxy=http://john:[email protected]:8123/
For most people though that will not be enough. To add the MS proxy authentication tags to the outgoing packets you need a program like cntlm. Cntlm is a small proxy server that runs as a service on your local machine. You point your applications to this proxy server.
The Cntlm proxy server needs to be set up with the following details:
- The Parent (upstream) proxy server address and port
- The User Name and Domain Name for Authentication
- Either the Password or (recommended) a hash of the password, and the authentication method.
This is done by editing the cntlm config file, usually /etc/cntlm.conf
to provide the required details.
If you want to use a hash cntlm provides a way of generating one.
- Configure cntlm with the parent proxy address, port and user name and domain name.
- Restart cntlm, e. g. via
/etc/init.d/cntlm restart
- Run
cntlm -IM http://test.com
You will be prompted for your password. It will test the password against the proxy server and display the rest of the information to be added to the cntlm.conf
file, for example:
johan@Komputer:~$ sudo cntlm -IM http://test.com
Password:
Config profile 1/4... OK (HTTP code: 200)
----------------------------[ Profile 0 ]------
Auth NTLMv2
PassNTLMv2 A12B34C56D78E90A12B34C56D78E90A1
Add those two lines as they appear to the /etc/cntlm.conf
file (removing any other that may conflict)
echo $http_proxy
.http://username:password@server:port