Difference between revisions of "SSL Tunnel: Ubuntu Setup"
Onnowpurbo (talk | contribs) (Created page with "sumber: https://www.digitalocean.com/community/tutorials/how-to-set-up-an-ssl-tunnel-using-stunnel-on-ubuntu Setup SSL Tunnel Using Stunnel on Ubuntu The Stunnel program is...") |
Onnowpurbo (talk | contribs) |
||
Line 9: | Line 9: | ||
1.Update & Upgrade Ubuntu | 1.Update & Upgrade Ubuntu | ||
− | apt-get update && apt-get upgrade | + | apt-get update && apt-get upgrade |
2.Install Stunnel on VPS | 2.Install Stunnel on VPS | ||
− | apt-get install stunnel4 -y | + | apt-get install stunnel4 -y |
3.Create SSL Certificate | 3.Create SSL Certificate | ||
− | openssl genrsa -out key.pem 2048 | + | openssl genrsa -out key.pem 2048 |
− | openssl req -new -x509 -key key.pem -out cert.pem -days 1095 | + | openssl req -new -x509 -key key.pem -out cert.pem -days 1095 |
− | cat key.pem cert.pem >> /etc/stunnel/stunnel.pem | + | cat key.pem cert.pem >> /etc/stunnel/stunnel.pem |
4.configure Stunnel on VPS | 4.configure Stunnel on VPS | ||
− | vim /etc/stunnel/stunnel.conf | + | vim /etc/stunnel/stunnel.conf |
So overall the “stunnel.conf” file must contain the lines below: | So overall the “stunnel.conf” file must contain the lines below: | ||
− | client = no | + | client = no |
− | [squid] | + | [squid] |
− | accept = 8888 | + | accept = 8888 |
− | connect = 127.0.0.1:3128 | + | connect = 127.0.0.1:3128 |
− | cert = /etc/stunnel/stunnel.pem | + | cert = /etc/stunnel/stunnel.pem |
Note: The client = no part isn’t necessary, Stunnel by default is set to server mode. | Note: The client = no part isn’t necessary, Stunnel by default is set to server mode. | ||
Line 37: | Line 37: | ||
Also, enable Stunnel automatic startup by configuring the “/etc/default/stunnel4” file | Also, enable Stunnel automatic startup by configuring the “/etc/default/stunnel4” file | ||
− | ENABLED=1 | + | ENABLED=1 |
Finally, restart Stunnel for configuration to take effect, using this command: | Finally, restart Stunnel for configuration to take effect, using this command: | ||
− | /etc/init.d/stunnel4 restart | + | /etc/init.d/stunnel4 restart |
5.Install Squid Proxy | 5.Install Squid Proxy | ||
− | apt-get install squid3 -y | + | apt-get install squid3 -y |
− | Configure Stunnel in Client | + | ==Configure Stunnel in Client== |
Using a SFTP client such as Filezilla, connect to your server and download the “stunnel.pem” file located in “/etc/stunnel/” directory to the client. | Using a SFTP client such as Filezilla, connect to your server and download the “stunnel.pem” file located in “/etc/stunnel/” directory to the client. | ||
Line 55: | Line 55: | ||
So “stunnel.conf” file in the client should look like this: | So “stunnel.conf” file in the client should look like this: | ||
− | cert = stunnel.pem | + | cert = stunnel.pem |
− | client = yes | + | client = yes |
− | [squid] | + | [squid] |
− | accept = 127.0.0.1:8080 | + | accept = 127.0.0.1:8080 |
− | connect = [Server’s Public IP]:8888 | + | connect = [Server’s Public IP]:8888 |
Save and close the file and run “stunnel.exe”. | Save and close the file and run “stunnel.exe”. |
Revision as of 16:19, 29 November 2018
sumber: https://www.digitalocean.com/community/tutorials/how-to-set-up-an-ssl-tunnel-using-stunnel-on-ubuntu
Setup SSL Tunnel Using Stunnel on Ubuntu
The Stunnel program is designed to work as an SSL encryption wrapper between remote client and server. It can be used to add SSL functionality.
What Stunnel basically does is that it turns any insecure TCP port into a secure encrypted port using OpenSSL package for cryptography.
1.Update & Upgrade Ubuntu
apt-get update && apt-get upgrade
2.Install Stunnel on VPS
apt-get install stunnel4 -y
3.Create SSL Certificate
openssl genrsa -out key.pem 2048 openssl req -new -x509 -key key.pem -out cert.pem -days 1095 cat key.pem cert.pem >> /etc/stunnel/stunnel.pem
4.configure Stunnel on VPS
vim /etc/stunnel/stunnel.conf
So overall the “stunnel.conf” file must contain the lines below:
client = no [squid] accept = 8888 connect = 127.0.0.1:3128 cert = /etc/stunnel/stunnel.pem
Note: The client = no part isn’t necessary, Stunnel by default is set to server mode.
Also, enable Stunnel automatic startup by configuring the “/etc/default/stunnel4” file
ENABLED=1
Finally, restart Stunnel for configuration to take effect, using this command:
/etc/init.d/stunnel4 restart
5.Install Squid Proxy
apt-get install squid3 -y
Configure Stunnel in Client
Using a SFTP client such as Filezilla, connect to your server and download the “stunnel.pem” file located in “/etc/stunnel/” directory to the client.
Install Stunnel on your choice of OS. Then go to the Stunnel folder and move the downloaded certificate “stunnel.pem” to Stunnel folder.
So “stunnel.conf” file in the client should look like this:
cert = stunnel.pem client = yes [squid] accept = 127.0.0.1:8080 connect = [Server’s Public IP]:8888
Save and close the file and run “stunnel.exe”.
That’s it. Now when we want to connect to Squid proxy on our cloud server, we must configure our client to connect to 127.0.0.1:8080, and Stunnel automatically connects us through a secure tunnel to the service specified for that port.
Referensi
- https://www.digitalocean.com/community/tutorials/how-to-set-up-an-ssl-tunnel-using-stunnel-on-ubuntu
- https://raiyanlive.wordpress.com/2017/08/21/set-up-ssl-tunnel-using-stunnel-on-ubuntu/