SOCKS Support in Opera - at Last!
The Opera web browser has led the competition in terms of technological innovation, even though lagging in market share. Features like Speed-Dial, User Java Script, User CSS, and built-in content blocking have had other browser producers playing catch-up, and provided a rich market for extensions to these other products. Add in the fact that Opera is a fully functional mail client (real POP and IMAP support, not just web mail), and there seemed to be little reason to use anything else. The one glaring omission from the list of supported features in Opera was support for SOCKS proxy servers. Opera supported HTTP and HTTPS proxies, as well as WAIS and FTP, but sadly, no SOCKS support.
SOCKS Support Available in Opera Version 11.10
With virtually no fanfare, Opera has introduced support for version 5 of the SOCKS proxy protocol. The only way I found it was by reading the change log for the new version. It isn't even available through the normal menu where you would configure other proxy types (Settings->Preferences->Network->Proxy Servers).
How To Configure Opera to Use a SOCKS Proxy
To configure Opera to use a SOCKS proxy, in the address bar enter opera:config and hit <Enter>. You will see a more advanced preference editor than is available through the menus. Scroll down until you see Proxy.
Click on the Proxy heading to expand that section. All fields should be blank except Opera Turbo Config File. A couple lines below that is a field for the Opera's SOCKS Server. Enter the IP address and port of the SOCKS server you intend to use. IMPORTANT: You must enter it as a numeric address, a machine name, DNS name, or alias will not work in this version. Separate the IP address and port with a colon. If you are like me and use a Secure Shell connection as your SOCKS proxy, the value will be 127.0.0.1:8080 (substitute your own port number).
A few lines farther down is a checkbox labeled Use SOCKS. Naturally, you'll want to check that box. Optionally, if you want to add a list of host names that you do not want to access via the proxy (you'll connect to them directly), such as sites available on your local Intranet, enter them in the No Proxy Servers field, and check the No Proxy Servers Check box just below that. Then click the [Save] button toward the bottom of the section, and you're done. Opera will now use your configured SOCKS proxy for connecting to any site not listed in your No Proxy Servers list.
Why Use a SOCKS Proxy With Opera?
SOCKS proxy servers, like HTTP proxy servers, offer a secure way to get through firewalls for web browsing or accessing services on the Internet, without opening additional holes in the firewall. SOCKS Proxies are more functional than HTTP proxies because technologies like AJAX (used by Yahoo!'s new web mail service) won't work through an HTTP proxy, but work fine through SOCKS.
Users can create their own SOCKS Proxies by creating SSH Tunnels through their firewalls, enabling them to access services outside their Intranets. Tools like OpenSSH and PuTTY can be used to create secure, encrypted tunnels to outside resources.
Claudio on May 02, 2012:
Thanks! In my case I used localhost:8080 and was wondering why it didn't work. Thanks to your article I now know that I must use the loop back address!
Joe Poniatowskis (author) from Mid-Michigan on April 18, 2012:
Well Crankcase, all I can say is that it has been working nicely for me for over 8 months. You sure you're doing it right?
Crankcase on April 18, 2012:
It's not working. I put Socks5 IP in, restart, and 'whatsmyip says my ip address is my normal one. What a con trick. Those fat, useless Opera developers would rather stuff their fat faces with Mars Bars than do the job properly.
Joe Poniatowskis (author) from Mid-Michigan on January 06, 2012:
Thanks for the link, ghostmaker. I'm going to give this a try.
ghostmaker on January 06, 2012:
I'm running Opera 11.60 using Tor as SOCKS server. It works fine, however, this way Opear still uses the operating system to resolve the host names (DNS). To fix this I've written a small application you can see here:
When you configure Windows to use this application as DNS server on 127.0.0.1, it routes the DNS requests through Tor via SOCKS.
Joe Poniatowskis (author) from Mid-Michigan on August 16, 2011:
Actually, it does work. I run my own ssh server and can easily see the proxied traffic there. What I've heard though is that sometimes dns requests are not proxied - that is, a sniffer might be able to see what dns names you're connecting to. But the content itself is proxied.
Anon on August 16, 2011:
The reason why they didn't give any fanfare, is because it doesn't work. If you check your traffic isn't actually going through the socks proxy.