Configuring WhatsApp proxy using cloud-init on ubuntu
Deploy a Whatsapp proxy server on Linux (Tested on Ubuntu)
For this you need a VPS Service that gives you cloud-init
feature.
For example, Digital Ocean has cloud-init feature called Add Initialization scripts
Note: You can start with the most basic VPS.
Share it with your loved ones
#MahsaAmini
#womanlifefreedom
I'm going to walk you through installing this proxy.
for the sake of simplicity, I'm using digital ocean.
- Login to digital ocean
- In Droplets > Create Droplets
- After choosing the location, ubuntu version, resources, ... click on the
Advanced Options
and check theAdd Initialization scripts (free)
. - Now copy/paste the code below.
#cloud-config
package_update: true
package_upgrade: true
packages:
- ca-certificates
- curl
- gnupg
- lsb-release
- git
runcmd:
- sudo mkdir -p /etc/apt/keyrings
- curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
- echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
- sudo apt-get update
- sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
- git clone https://github.com/WhatsApp/proxy.git $HOME/whatsapp-proxy
- docker compose -f $HOME/whatsapp-proxy/proxy/ops/docker-compose.yml up -d
6. Click on `Create Droplet`
7. Just give it a minute so the script execute.
8. Now log into the server.
tail -f /var/log/cloud-init-output.log
By default, it will run the proxy on ports: 80, 443, and 5222.
If you don't want it to expose on ports 80, 443 before you run the script navigate to this directory and change the ports in docker-compose file.
cd ~/whatsapp-proxy/proxy/ops/docker-compose.yml
11. Now, go to whatsapp and put your IPv4 address + port into the proxy section.
And that's it. :)
Just in case you want to support me, I'd realy appriciate it.
TRC20 TT2AMeebAUGFcG9jLPA49xN1eMCyDekz6c
ERC20 0x9A6471A8d01A66e81433d97aF3e1288f7C2E6a7b