Person using signal

Signal is urging its global community to help people in Iran stay connected with each other and the rest of the world by volunteering proxies to bypass the aggressive restrictions imposed by the Iranian regime.

The end-to-end encrypted messaging tool is currently blocked in Iran, along with WhatsApp and Instagram, which many people in the country use to coordinate protests and share information with the rest of the world.

Iran is undergoing a massive, violent upheaval following the death of Mahsa Amini, a young woman who died on 16 September under suspicious circumstances while under "moral" police custody.

On Monday, the Iranian regime severely restricted internet connectivity in the country, imposing broad blocks on all ISPs, sometimes leaving internet users entirely offline for several hours.

Proxies to the rescue

Signal is responding to the situation by calling on its community to set up proxy servers to help Iranians bypass restrictions and continue communicating freely.

Proxies are intermediaries between the clients (Signal users) and the server that provides the resource. The server's blocked IP address is no longer present in the exchange so back-and-forth requests can be forwarded without obstruction.

The general function of proxy servers
The general function of proxy servers (Wikipedia)

People can set up a proxy for Signal by following these six steps:

  1. SSH into the server.
  2. Install Docker, Docker Compose, and git: "sudo apt update && sudo apt install docker docker-compose git"
  3. Clone the Signal TLS Proxy repository: "git clone https://github.com/signalapp/Signal-TLS-Proxy.git"
  4. Enter the repo directory: "cd Signal-TLS-Proxy"
  5. Run the helper script that configures and provisions a TLS certificate from Let's Encrypt: "sudo ./init-certificate.sh" (You will be prompted to enter the domain or subdomain that is pointing to this server's IP address.)
  6. Use Docker Compose to launch the proxy: "sudo docker-compose up –detach"

Having done the above, users can give their proxy to hundreds of users by sharing "https://signal.tube/#<your_domain_name>".

The Signal Android app is configured to handle these links automatically, so no further configuration from the users' side will be required.

Volunteers can also advertise their Signal proxies on Twitter using the #IRanASignalProxy hashtag. However, volunteers should only share the address privately to avoid getting the proxy added to Iran's IP block list.

Signal says it's investigating more automated and convenient solutions to bypass Iranian blocks, but proxies are the only option until something like that is implemented.

Meanwhile, WhatsApp has posted on Twitter to inform its Iranian users it's doing "anything within their technical capacity" to keep the service available, clarifying they're not responsible for the number blocks in the region.

Related Articles:

US govt sanctions Iranians linked to government cyberattacks

Free VPN apps on Google Play turned Android phones into proxies

TheMoon malware infects 6,000 ASUS routers in 72 hours for proxy service

Tor’s new WebTunnel bridges mimic HTTPS traffic to evade censorship

U.S. charges Iranian for hacks on defense orgs, offers $10M for info