Skip to content
A simple TCP proxy written in Perl. Uses IO::Socket::INET and IO::Select for multiplexing.
Branch: master
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
readme.txt renamed -> May 6, 2010


This is a simple TCP proxy written in Perl that uses IO::Socket::INET and
IO::Select abstractions to create an evented (asynchronous, on select() call
based) server.

It was written by Peteris Krumins (
His blog is at  --  good coders code, great reuse.

Currently it's written only for demonstrative purposes for my article "Turn
any Linux computer into SOCKS5 proxy in one command," which can be read here:


The ports are currently hard coded in the source code. The proxy tunnels all
connections from to localhost:55555.

The idea is that if you start a ssh socks5 proxy via

    ssh -N -D 55555 localhost

Then no one can access this proxy, except people on localhost, which is of no

This Perl program opens up this ssh socks5 proxy for everyone.

Please see the article for more details:


Happy proxying!

Peteris Krumins

You can’t perform that action at this time.