This worked to bypass local/ISP torrent limitations and UDP trackers worked. DHT had to be disabled or else it did not work. WARNING: this method is insecure because login credentials and data between proxy and client are transfered un-encrypted. Need encryption? Google: SSH proxy tunnel UDP Windows
Or ProxyCAP seems to may accept SSH, UDP tunneling and this software was also adviced (but i failed to setup it), here is another idea..


Regarding this un-encrypted setup, one need a Linux CentOS server/VPS, example here: http://instantcpanelhosting.com/cart.php?gid=4

And this is the setup process, commands are made via Linux command line.

# yum install dante-server

In my case dante package was in rpmforge repository, so EPEL or rpmforge might be needed to be setup. On CentOS 6.x 64bit, maybe this way:
rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

Open config file:
#mv /etc/sockd.conf /etc/sockd_default.conf && vi /etc/sockd.conf

Paste in it:

logoutput: stderr
user.privileged: root
user.notprivileged: nobody

internal: venet0:0 port = 1080
external: venet0:0
socksmethod: username

client pass {
from: 0.0.0.0/0 to: 0.0.0.0/0
}

socks pass {
from: 0.0.0.0/0 to: 0.0.0.0/0
protocol: tcp udp
socksmethod: username
}
if you are not on a VPS, you may need to replace "venet0:0" by your interface, it can be eth0 on dedi. Check command "ifconfig"

Save changes (Ctrl + C and then :wq! and Enter to confirm)

Save and veriffy that the configuration is bug free, no output means OK:
#sockd -V

if ok, start daemon:
#service sockd restart

Service is running @boot ?
#chkconfig --list | grep sockd

If not:
#chkconfig sockd on

Then you can configure your applications / torrent client to use the proxy. As a server you will enter your proxy server IP and as a port, you will enter 1080 as authentication username you will set root and as password, your vps proxy server SSH password.

Example utorrent configuration:
Name:  utorrent_client_proxy_config_dante_UDP_ok.gif
Views: 504
Size:  17.1 KB
Name:  utorrent-disable-dht-dynamic-hash-table.gif
Views: 438
Size:  13.2 KB
(need to untick, keep disabled DHT as it did not worked when was enabled)

NOTE: this socks5 proxy setup do not supports data/login encryption. SOCKS does not mean you have encryption. It must be SSH socks tunnel which im unable to setup to support UDP so far. :-(



Please ignore rest of the text as it contains misleading information

To encrypt data you transfer, create SSH tunel to your proxy server by executing this Linux command from your client computer (not server/proxyserver computer), so you have to use Linux on your client comuter:
ssh root@YourServerIPHere -L:1080:127.0.0.1:1080

If you have Windows, then you will need to install PuTTY and setup tunnel using it. How to do that? Open putty, enter your server IP, custom name, port where is your SSH daemon listening on your remote server, default is 22. Then on the left, go to Connection / SSH / Tunnels and as a source port enter for example 1080, tick "Dynamic" and click "Add". THen in the left menu, on the top, click "Session" and then click "Save" button. Now click Open button to connect to your server. Authenticate and minimize window. Now you created tunnel and it is listening at port 1080 so configure your applications like torrent client to use proxy and as a server you will enter local computer (127.0.0.1 or localhost) and port 1080. Dante proxy on your remote server should forward all connections and deliver back results. On your remote proxy server in file /etc/sockd.conf if you have line "socksmethod: username" it means that if you want to connect your proxy, you need to provide your root login credentials. If your software do not support providing login credentials for the proxy, then you need to modiffy /etc/sockd.conf on your remote server and change line "socksmethod: username" to become "socksmethod: none"

then you can modiffy your torrent client settings to connect to the proxy server 127.0.0.1 at port 1080
Disable DHT in your torrent or it may not work. If you set "socksmethod: username" in your server /etc/sockd.conf then you will need to configure torrent client or other app to also authenticate proxy access using your server password and root username.