Call Us Today! 877.742.2583

Page tree
Skip to end of metadata
Go to start of metadata


A quick guide to help you with the installation of Debian and FreeSWITCH.

Table of Contents

 Click here to expand Table of Contents


Slack is where you can interact with the community. Ask questions and get answers.


macOS Installation

If you want to install FreeSWITCH on macOS, you should start here.

Windows Installation

 If you desire to bypass Linux and install FreeSWITCH on Windows, see this page here to get the MSI installation package.

Linux Installation

FreeSWITCH is a versatile platform and can be installed with a minimum of 512 megabytes of RAM for a testing instance, however, a full gig of ram, on a bare metal box (dedicated computer or server) is recommended.

If you do not have a spare box you may install FreeSWITCH on your Windows machine using Virtualbox with a Debian ISO. However, your performance may vary depending on your machine.

But hopefully you have a spare box on which to install Debian, and continue with the tutorial.

Debian 10 (Stretch)

Download Debian minimal iso.

Follow these slides:

 Click here to expand...

If you see this, your CD has successfully bootstrapped. Proceed to "Install".

Select your language.

Choose your Location.

Choose Keyboard Layout.

Choose a hostname for Debian. I'm calling mine "freeswitch"

You can leave your domain name blank for now, and change it later if needed.

Choose a strong root password... at least 16 digits with number, letters, upper case, lower case, and special characters.

Confirm your root password.

Type in your full or fake name.

Choose a memorable username. You will use this username to establish an initial remote connection after the installation is complete.
By default, Debian doesn't allow root users to remotely connect to Debian. You have to enable that feature later.

Choose the username password.

Confirm username password.

Choose your time zone.

Choose "Guided - use entire disk"... of course, if you're an advanced user, you can setup your partitions manually.

Choose your disk to install Debian onto. If your spare box has more than one listed (sda) should work.

However, if you're trying to dual boot, because your spare computer already has an old Windows on it, with and extra hard drive, you may want to choose (sdb) if that's your extra drive.

But this guided is not responsible for errors on your part. This should be installed on a computer you care little for.

All files on partition will do fine. After all its "recommended for new users".

Finish partitioning and write changes to disk.

Choose "Yes" to confirm.

Wait for the base system to install.

Choose an archive country like "United States".

Choose an archive mirror like "".

You can leave the proxy blank, unless you have one. (beginners probably don't)

Generally choose "No" for package survey, unless you want to assist the Debian Project with usage stats.

All that is needed for FreeSWITCH is "web server", "SSH server", and "standard system utilities".

If you would like to add graphical user interface(GUI), select "Debian desktop environment" and one of the "..." choices.

But a GUI is more for your own comfort. It will not be used all for purpose of this tutorial.

Wait while your Debian packages install.

Choose "Yes" to install GRUB boot loader... without it, Debian will not boot.

install GRUB to your "/dev/sda" drive.... if earlier you chose another drive, be sure to choose "/dev/sdb" or whatever.

You're Debian install is complete. Eject the CD and reboot machine.

At first boot, this is what you should see if your installation was sucessful. Hit "Enter" to boot, or wait 15 seconds for auto boot.

Because you are on the local physical machine, you can login with your root account, or username account.
If you login using your username, you will need to do a "su" command at the "$" prompt, then do root password.

Excellent. You now have root (#) access on your local Debian machine.

Type in "ifconfig" <enter> and write down your IP address is... in this case it's "".  You may want to do "exit". We're done here.

Remote Connection

Establish a remote connection to your Debian machine so you can copy and paste commands from webpage to terminal.

From Linux and macOS

Open a terminal

ssh yourusername@

Type in your username password, then:


Type in your root password. You should now be at root denoted by the "#" symbol.

From Windows

Use PuTTY to remotely access the Debian SSH server.

 Click here to expand...

Click this Download link and Install the PuTTY msi.

Set the window Columns and Rows to FreeSWITCH recommended size.

Load in your IP, give it a name and save config.

Load the saved settings and Open.

Accept the SSH key.

Login to your Debian machine remotely with your username and password

Enter "su" on the command line, then put in root password.

You should be at root on your debian, denoted by “root@[hostname]:~#”. That “#” symbol means you have root access.

use right mouse click to paste info into PuTTY.

Prepare your Debian Environment

Install Emacs, the FreeSWITCH editor of choice

apt-get update && apt-get dist-upgrade
apt-get install emacs-nox

Getting FreeSWITCH

Prepare for Install

wget -O - | apt-key add -
echo "deb buster main" > /etc/apt/sources.list.d/freeswitch.list

Install FreeSWITCH

apt-get update && apt-get install -y freeswitch-meta-all

FreeSWITCH Command Line Interface

Lets start up the fs_cli and see if it works.


You should now have a running FreeSWITCH at your finger tips. But we have more work to do.

fs_cli versus root:

The ">" will denote you are in the fs_cli

The "#" will denote you are in the bash root "#".

Type help:


Type /help:


Exit fs_cli:    (using three periods)


Change Default Password

Edit the vars.xml file

emacs /etc/freeswitch/vars.xml

Edit file accordingly:

<X-PRE-PROCESS cmd="set" data="default_password=MAKE_GOOD_PASSWORD"/>

Restart FreeSWITCH

service freeswitch restart


Ideally you would have two phones/clients minimum to test with, or three clients to test conferencing with.
Install a free softphone like X-lite and/or Linphone on your desktop.
To Install Voip by Antisip or Linphone on your phone and tablet.



Install Linphone from the Google Play Store. You may need to dig further into the app config/settins to enable video calling.

 Click here to expand...

Voip By Antisip

Install Voip By Antisip from Google Play Store. You may need to dig further into the app config/settins to enable video calling.

 Click here to expand...


Install Zoiper from Google Play Store. You may need to dig further into the app config/settins to enable video calling.

 Click here to expand...



Download and Install for Windows Desktop. You may need to dig further into the app config/settins to enable video calling.

 Click here to expand...


Download and Install X-lite for Windows Desktop. You may need to dig further into the app config/settins to enable video calling.

 Click here to expand...

Making a Test Call

At this point you should have every thing set up to make and receive internal calls from extension to extension.

Audio calls should all work between the various apps without further configuration. For the Windows and Android apps, you may need to tinker with the settings to enable video calls.

Other Test Calls

 Click here to expand...

Test call the conference bridge.

From a few of your devices, call into one of the FreeSWITCH pre-configured conference bridges at 3500.

Test call the IVR 

Call the example IVR menu when you dial 5000.

Test call the Milliwatt

Useful for directing spam callers to an ear drum shattering tone at 9197

Test call the Tone Stream

Will bring you back to the Gameboy days of Tetris at 9198

Test call video recording

 extension 9193

Test call video playback

at extension 9193

Going Further...

Hopefully you have enough to get started.

  • For more examples check here: Examples
  • For more configurations check here: Configuration
  • For a list of available modules check here: Modules

Mailing List

There are several mailinglist available, find a complete list here:

ClueCon Weekly Conference call

There is a weekly conference calls to help the FreeSWITCH project: ClueCon Weekly Conference call

ClueCon Annual Convention

ClueCon is an annual telephony and voice over IP developers conference started in 2005 by the FreeSWITCH core developer team

Join us at ClueCon:

  • No labels