Socks5 Proxy Server Ubuntu

How to setup a Socks5 Proxy server on Ubuntu with Dante

Dante Socks5 Server
Dante is a socks5 server that you can use to setup a socks5 proxy on your ubuntu or debian machine. In this quick tutorial we shall learn how to setup dante and use authentication.
With authentication enabled, the dante proxy server would require all clients to provide login details in order to use the proxy server. This is a good idea.
1. Install Dante on Ubuntu
The default Ubuntu repositories have the dante-server package but it is outdated. The version present is 1. 1. 19 which is quite old and also has some bugs. The authentication feature does not work properly.
If you don’t need authentication then you can install it.
sudo apt-get install dante-server
The version in repository was
# danted -v
danted: dante v1. 19
Known authentication issues
Like mentioned earlier, the authentication feature does not properly work with it. The log file shows the following error messages –
Mar 11 14:05:05 (1489241105) danted[5020]: pass(1): tcp/accept]: username%[email protected] -> 104. 131. 115. 128. 1080: system username/password failed
Trying to test with curl shows the following error message –
$ curl -v -x socks5username:[email protected]:1080 * Trying 104. 128…
* User was rejected by the SOCKS5 server (1 1).
* Closing connection 0
curl: (7) User was rejected by the SOCKS5 server (1 1).
Some users have reported similar issues at this reddit post -Install newer version directly from file
So we need to install a newer version. There is a ppa for dante-server at –
but it is no longer being maintained. But we can use the deb file from the ppa to install dante on Ubuntu 16. 10
The download url is this:
using the wget command:
# wget Install using gdebi command:
$ sudo apt-get install gdebi-core
$ sudo gdebi
2. Configure
The next task is to configure the dante server before starting it. The configuration file can be found here –
nano /etc/
The contents should look similar to this –
# /etc/
logoutput: syslog
ivileged: root
user. unprivileged: nobody
# The listening network interface or address.
internal: 0. 0. 0 port=1080
# The proxying network interface or address.
external: eth0
# socks-rules determine what is proxied through the external interface.
# The default of “none” permits anonymous access.
socksmethod: username
# client-rules determine who can connect to the internal interface.
clientmethod: none
client pass {
from: 0. 0/0 to: 0. 0/0
log: connect disconnect error}
socks pass {
Now start the danted proxy server
# service danted start
Use the netstat command to check the port number
# netstat -nlpt | grep dant
tcp 0 0 0. 0:1080 0. 0:* LISTEN 6342/danted
3. Create a User
Dante can use the system unix user accounts to authenticate the connecting clients. For this you should create a separate user. Any client that will be connecting to this proxy server will be sending the password in plain text over the network, so beware of that.
$ adduser mike
4. Test with curl
Once you have setup everything, its time to test that the proxy server is working as expected. Use the curl command to do this. Specify the username, password, server ip and port number and try fetching some url.
curl -v -x socks5mike:[email protected]:1080 If everything goes fine, you should see the html of in the terminal. Now you can use the proxy inside of browsers.
Dante is a socks5 server that can be used as a proxy server. For instance you can setup an online linux server and use it as a proxy server to access other websites. Such proxy servers are useful when you need to change your ip address on the internet or access a website from a different geo location.
If you need an proxy server or caching solution try Squid Proxy which supports, etc.
Config documentation can be found here –
If you want to compile the latest version of dante from source then check out these links –
How to set up a SOCKS5 Proxy Server Using Dante - Ubuntu

How to set up a SOCKS5 Proxy Server Using Dante – Ubuntu

Set up a SOCKS5 Proxy Server
Proxy servers have been around for years. A proxy server is a way of connecting to a website or service via another server. In this guide, we are going to use a KVM NVMe VPS to set up a SOCKS5 Proxy server using Dante and Ubuntu.
If you need a proxy with different IPs in different country’s just order the IPs from your client area (Services > View Addons). You can attach a maximum of 64 IPs per Server.
There are many types of Proxy servers. HTTP proxy servers like Squid used to be very popular. This was before the internet changed to HTTPS. Mainly because of the introduction of free SSL certificates from institutions like Let’s Encrypt.
SOCKS Proxy servers forward TCP packets. They also allow UDP packets to be forwarded. You can optionally secure the server with authentication. This means anyone who wants to connect to the proxy will need to log in. The default port Dante listens on is port 1080. We are going to use a custom port on our Proxy server.
Proxy Server Resources
You do not need a large server to run a Proxy service. 5GB of space, 1GB Ram, and some v-swap would be suitable. It’s likely you will need unlimited Bandwidth. You can add an unlimited bandwidth add-on to any of our NVMe VPS servers for £10.
We are going to install our Proxy software to an Ubuntu 18VPS but this guide will work for other versions of Ubuntu like Ubuntu 16, Ubuntu 19 and Ubuntu 20.
Update Your Ubuntu Server
Before starting ensure your server is running the latest updates.
apt update
apt upgrade
Install Dante Proxy Server
apt install dante-server
Dante Proxy is now installed to your server. In the console, you will notice it’s not running and you might even see an error. Next, let’s configure Dante.
Configure Dante
The configuration file for Dante is located at /etc/ You can use the configuration file we have generated below so move the old file out of the way first
mv /etc/ /etc/
now, create a new file and paste the below configuration into the file.
nano /etc/
internal: port = 1439
clientmethod: none
socksmethod: none
ivileged: root
tprivileged: nobody
tation: same-same
logoutput: /var/log/
client pass {
from: to: 0. 0. 0/0
log: error connect disconnect}
client block {
from: 0. 0/0 to: 0. 0/0
log: connect error}
socks pass {
socks block {
Edit Dante Configuration
Now, edit the below sections in the Dante configuration file.
Replace the IP in this section with the main IP of your Proxy server. If you have additional IPs routed to your server, just add more sections for each IP like the below example;
Restrict Access To The Proxy Server
Access from specific IP
There are a number of ways you can restrict access to the proxy server. To restrict access to certain IPs edit the section below. Enter the IP you wish to allow access from. ;
If you wanted to allow access to a range of IPs like a /29 subnet you would edit the file like the below example;
That’s the basic configuration of your Proxy server sorted. If you wanted to restrict access to authorized log ins this is possible but we are not going to cover that in this article.
Restart Dante
Finally to start using your Proxy let’s restart and enable Dante on boot.
systemctl restart danted
systemctl enable danted
You now have a working SOCKS 5 proxy, restricted to certain IPs. If you are using one of our EU NVMe VPS Servers it’s possible to route different IPs in different countries to your VPS. This is great for proxies because each IP shows as being in a different country when in fact they are all working off the same server.
How was this article? – set up a SOCKS5 Proxy Server
Post Views:
16, 952
You might also like
More from Dedicated Servers
How To Set Up SSH Keys To Allow Access To Instances
We’re helping customers to increase the security of their F2H …
How To Add Bootsplash Image To Your OS Template
Instead of the default black screen. When creating an OS template you can choose to add a bootsplash image to …
How To Run Scripts At Startup
Sometimes it might be required to run scripts at startup. This is useful if you want to automate tasks like …
Editor Picks
How to Setup SOCKS5 Proxy Server for (not only) Telegram ...

How to Setup SOCKS5 Proxy Server for (not only) Telegram …

How to Setup SOCKS5 Proxy Server for (not only) Telegram using Dante on Ubuntu 16. 04 / 18. 04 / 20. 04
# install dante-server
sudo apt update
sudo apt install dante-server
# or download latest dante-server deb for Ubuntu, works for 16. 04:
# or older version:
# and install it:
sudo dpkg -i dante-server_*
# it may fail to start, it’s okay, packaged config is garbage
# open dante config for editing:
sudo nano /etc/
# remove everything (holding Ctrl+K will do it) and copy-paste basic config:
logoutput: syslog
ivileged: root
user. unprivileged: nobody
# desired proxy ports may differ, used here: POP3 110, IMAP 143, HTTPS 443
internal: 0. 0. 0 port = 110
internal: 0. 0 port = 143
internal: 0. 0 port = 443
# interface name may differ, use `ip a` command and copy non-lo interface:
external: eth0
# set socksmethod to ‘none’ instead of ‘username’ if you want to disable auth.
socksmethod: username
clientmethod: none
bwrap: nobody
client pass {
from: 0/0 to: 0/0
log: connect disconnect error}
socks pass {
# end of config
# add system user ‘proxyuser’ with password to use with sock5 auth:
sudo useradd –shell /usr/sbin/nologin proxyuser
# or:
# sudo adduser –system –no-create-home –disabled-login –group proxyuser
sudo passwd proxyuser
# and input desired password twice
# if you use ubuntu firewall, allow ports:
sudo ufw allow 110
sudo ufw allow 143
sudo ufw allow 443
# restart dante and enable starting on boot:
sudo systemctl restart danted
sudo systemctl enable danted
# you may see dante status:
sudo systemctl status danted
# you may see dante logs (connect disconnect error):
sudo journalctl -xe -u danted
# add -f argument to attach and watch
# test proxy on your local machine:
curl -v -x socks5proxyuser:password@yourserverip:443
# construct telegram links:
# tgsocks? server=yourserverip&port=443&user=proxyuser&pass=password
# used and useful links:

Frequently Asked Questions about socks5 proxy server ubuntu

What is the best proxy for SOCKS5?

The best VPNs for SOCKS5 – In-depth AnalysisNordVPN. NordVPN is a reliable VPN that provides security, privacy. … Private Internet Access. … IPVanish. … … Windscribe. Windscribe provide a SOCKS5 proxy on their premium plan.Sep 29, 2021

How do you install Dante SOCKS?

Step 1 – Install Dante. Step 1.1 – Install from APT. apt update // Debian 9 apt install dante-server // Ubuntu 18.04 apt install dante-server. … Step 2 – Configure Dante. Step 2.1 – Internet Interface. … Step 3 – Limit Access. Step 3.1 – Limit by Username.May 9, 2019

How use SOCKS5 proxy Ubuntu?

How to setup a Socks5 Proxy server on Ubuntu with DanteDante Socks5 Server. Dante is a socks5 server that you can use to setup a socks5 proxy on your ubuntu or debian machine. … Install Dante on Ubuntu. … Configure. … Create a User. … Test with curl. … Conclusion. … Resources.Jul 26, 2020

Leave a Reply

Your email address will not be published. Required fields are marked *