SOCKS proxies route application traffic through an intermediary server for privacy, restricted content access, and secure communication. Unlike a VPN, they operate at the application layer, providing selective control over which traffic uses the proxy. This approach is efficient when network-level encryption is not required for all activities.
On Windows, PuTTY can establish an SSH tunnel to a remote server that functions as a SOCKS proxy. SSH encrypts data, ensuring a secure channel for traffic passing through the tunnel. This strategy is useful when routing specific application connections through a trusted remote server.
Configuring a SOCKS proxy with PuTTY involves defining a local port and enabling dynamic port forwarding. The SSH server listens on the remote side, forwarding traffic to its destination. This method centralizes and encrypts selected application traffic without affecting the entire system.
Related: How to create an SSH SOCKS proxy
Steps to create SOCKS proxy using PuTTY:
- Download PuTTY from the official website.
https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
- Launch PuTTY.
- Go to Connection → SSH → Tunnels from the category menu.
- Enter the port number that you want the SOCKS proxy to listen to in the Source port field.
Use unprivileged port which is from 1024 to 65535
- Make sure Auto and Dynamic radio buttons are selected.
- Click on Add button.
- Go to Session from the category menu.
- Enter the Host Name / IP address and Port of the server that you want to create a tunnel to and click on the Open button.
- Log in to the server with a valid credential.
- Configure your applications to connect to the newly created SOCKS proxy running on the selected port using SOCKS5 option.

Mohd Shakir Zakaria is a cloud architect with deep roots in software development and open-source advocacy. Certified in AWS, Red Hat, VMware, ITIL, and Linux, he specializes in designing and managing robust cloud and on-premises infrastructures.
Comment anonymously. Login not required.