I used to debug my style sheet with Opera, it is really a fast browser, however, I am surprised to see opera doesn't support socks proxy (powered by ssh -D) even in latest version 9.5. I googled for a while and found this great workaround. I am shocked to see that two years have passed since the post was written and opera still doesn't support socks proxy yet! What's the difficult for the opera developers' to implement the feature?

I like the tinyproxy solution since ssh tunneling is exactly how I access internet from company inside network.

The steps:

  1. Install tinyproxy on my debian vps server, quite easy beacuse tinyproxy is in the debian package repository, just type apt-get install tinyproxy.
  2. Edit /etc/tinyproxy/tinyproxy.conf, change listen address to 127.0.0.1, set allow IP address to 127.0.0.1 since I will use ssh tunnel to access tinyproxy only, tune MaxClients, MinSpareServers, MaxSpareServers and StartServers, then run /usr/sbin/tinyproxy to start the daemon.
  3. Use ssh client to connect the my vps box with a local forwarding rule, ssh -fN -D 7070 -L 8888:localhost:8888 user@vps.example.org
  4. Set opera to use localhost:8888 as http proxy, enjoy surfing internet!

Following graph should let you understand the solution easier.

.----------------------.        .----------------------.
|       http           |  ssh   |                      |
|Opera ===> ssh client +========> sshd:22 -> tinyproxy ==> internet sites
|                :8888 | tunnel |               :8888  |
`----------------------'        `----------------------'
     local box                      vps.example.org

tags: , ,