How can I share my Speedify connection on Linux (Ubuntu and Raspberry Pi OS) via Wi-Fi?

Speedify can be configured to share the VPN connection as a Wi-Fi hotspot that other devices can join. 

Configuring Speedify as a Hotspot

Configure the sharing options in  /etc/speedify/speedify.conf . You can edit the config with nano, in that case, the command would be as follows:

sudo nano /etc/speedify/speedify.conf

Make sure to uncomment the following lines (remove #) To share over a Wi-Fi interface wlan0, set:

ENABLE_SHARE=1 

SHARE_INTERFACE="wlan0" 

WIFI_INTERFACE="wlan0" 
WIFI_SSID="SpeedifyAP" 
WIFI_PASSWORD="password"

Configure the desired SSID and password.

By default, Speedify will create a 2.4 GHz hotspot. If your Wi-Fi adapter supports 5GHz, you can change:

WIFI_MODE="5"

To adjust the Wi-Fi channel:

WIFI_CHANNEL="1"

Speedify will default to channel 1 for 2.4GHz or you can set the channel to 36 for 5 GHz

To specify the country code Wi-Fi, set:

WIFI_COUNTRY="US"

You should set this to the correct country to comply with your local regulations for wireless networks.

Make sure you're not connected to a Wi-Fi network as a client, as this may stop the sharing from starting.

Once you have configured the sharing settings, save the file (if you are using nano, hit ctrl+O and press enter to save). Exit the text editor (nano) by hitting ctrl+X and then run::

sudo service speedify-sharing restart

The first time running this after enabling sharing might take a little while so that Speedify can install and configure the necessary packages. Subsequent starts should be much quicker.


Note: Sometimes saved Wi-Fi networks interfere with the hotspot appearing. If you are sure your configuration is correct but the hotspot isn't visible, try removing the previous network information and rebooting. On the Raspberry Pi, saved Wi-Fi networks will be stored in /etc/wpa_supplicant.conf. You may want to make a backup of the file before doing so.

Stop Speedify Wi-Fi Sharing

To stop using the Wi-Fi for a hotspot, configure the sharing options in  /etc/speedify/speedify.conf .

ENABLE_SHARE=0

You will need to restart the Speedify service for the change to take effect.

When you start sharing, Speedify will automatically set the SHARE_INTERFACE to the NEVER priority, so that Speedify will ignore it and not use it as an Internet connection. If you disable sharing and want to use the SHARE_INTERFACE as an Internet connection again, change it back to another priority. For, example, you can set wlan0 to Always:

/usr/share/speedify/speedify_cli adapter priority wlan0 always

Troubleshooting


On Ubuntu, Speedify uses Network Manager for sharing. If you are using Ubuntu Server, it doesn't come with Network Manager installed, so you will need to install Network Manager for the sharing feature to work. To do this, run:

sudo apt update sudo apt install network-manager


Check if the Wi-Fi is blocked with the following command:


rfkill list all


If blocked you can try running:


sudo rfkill unblock wifi


Check that the country codes are matching. If in the hostapd.conf file you have the country set as GB, make sure that the same country code is set in:

grep country /etc/wpa_supplicant/wpa_supplicant.conf

This is referring to raspi-config when setting up the Raspberry Pi. This link has details with the part about Change wireless country: https://www.raspberrypi.org/documentation/configuration/wireless/wireless-cli.md