{"id":116822,"date":"2024-09-29T08:52:27","date_gmt":"2024-09-29T08:52:27","guid":{"rendered":"\/tutorials\/?p=116822"},"modified":"2025-12-18T22:46:57","modified_gmt":"2025-12-18T22:46:57","slug":"freepbx-tutorial","status":"publish","type":"post","link":"\/my\/tutorials\/coolify-vs-dokploy-7","title":{"rendered":"FreePBX tutorial: Fundamentals of setting up a FreePBX server"},"content":{"rendered":"<p>FreePBX is an open-source platform that enables phone systems over a network, typically used for internal communication within a company.<\/p><p>This FreePBX tutorial will explain everything about this platform, from installing it on your server to setting up the phone system in your network. You will also learn how to install modules to expand FreePBX&rsquo;s functionality.<\/p><p>\n\n\n\n\n\n\n<\/p><h2 class=\"wp-block-heading\" id=\"h-getting-hosting-for-freepbx\">Getting hosting for FreePBX<\/h2><p>To host FreePBX, you need a <a href=\"\/my\/tutorials\/what-is-vps-hosting\">virtual private server<\/a> (VPS). While you can use a computer as a physical server, it can be more expensive and inconvenient since you must keep it running 24\/7.<\/p><p>A virtual server is generally more affordable and provides features that help simplify the process of setting up FreePBX.<\/p><p>To choose the <a href=\"\/my\/tutorials\/best-vps-hosting\">best VPS provider<\/a> for your FreePBX project, we recommend purchasing a plan with at least a <strong>single-core <\/strong>CPU, <strong>2 GB<\/strong> of RAM, and<strong> 20 GB<\/strong> of storage. Also, ensure your web host has a minimum of <strong>100 Mb\/s<\/strong> connection for smooth and responsive communication.<\/p><p>Running on a<strong> 300 Mb\/s<\/strong> network, <a href=\"\/my\/vps\/freepbx-hosting\">Hostinger&rsquo;s FreePBX VPS hosting<\/a> is a great fit. It starts at <strong>RM29.99\/month<\/strong>, and you can easily upgrade your plan anytime to accommodate your growing phone system needs.<\/p><p>With our <a href=\"\/my\/blog\/kodee\">Kodee AI Assistant<\/a>, you can easily write code, commands, and instructions for managing your FreePBX server. Moreover, our global data centers let you host the tool in the location closest to you for minimal latency.<\/p><?xml encoding=\"utf-8\" ?><figure class=\"wp-block-image size-large\"><a href=\"\/my\/vps-hosting\" target=\"_blank\" rel=\"noreferrer noopener\"><img decoding=\"async\" width=\"1024\" height=\"300\" src=\"https:\/\/www.hostinger.com\/tutorials\/wp-content\/uploads\/sites\/2\/2023\/02\/VPS-hosting-banner-1024x300.png\" alt=\"\" class=\"wp-image-77934\" srcset=\"https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2023\/02\/VPS-hosting-banner.png 1024w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2023\/02\/VPS-hosting-banner-300x88.png 300w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2023\/02\/VPS-hosting-banner-150x44.png 150w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2023\/02\/VPS-hosting-banner-768x225.png 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure><p>After purchasing a VPS plan from Hostinger, complete the onboarding process, which involves setting up a new password and choosing an operating system.<\/p><h2 class=\"wp-block-heading\" id=\"h-installing-freepbx\">Installing FreePBX<\/h2><p>The steps to install <a href=\"\/my\/tutorials\/what-is-freepbx\">FreePBX<\/a> vary depending on its version, your server&rsquo;s operating system, and your preferred configuration setup.<\/p><p>In this section, we will go over the two easiest methods.<\/p><h3 class=\"wp-block-heading\" id=\"h-installing-freepbx-automatically-at-hostinger\">Installing FreePBX automatically at Hostinger<\/h3><p>Hostinger users can easily install FreePBX in a few clicks using <a href=\"https:\/\/support.hostinger.com\/en\/articles\/1583571-what-are-the-available-operating-systems-for-vps\" target=\"_blank\" rel=\"noopener\">VPS operating system templates<\/a>. If you selected the<strong> Debian 12 with FreePBX<\/strong> template during the onboarding process, you can skip the following steps:<\/p><ol class=\"wp-block-list\">\n<li>Log in to <a href=\"\/my\/tutorials\/hpanel-tutorial\"><strong>hPanel<\/strong><\/a> &rarr; <strong>sidebar<\/strong> &rarr; <strong>VPS<\/strong> &rarr; <strong>Manage<\/strong>.<\/li>\n\n\n\n<li>From the sidebar, go to the side menu &rarr; <strong>OS &amp; Panel<\/strong> &rarr; <strong>Operating System<\/strong>.<\/li>\n\n\n\n<li>Select the <strong>Application<\/strong> tab and search for <strong>Debian 12 with FreePBX<\/strong>.<\/li>\n<\/ol><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"69d0e04ed505d\"}' data-wp-interactive=\"core\/image\" class=\"aligncenter size-large wp-lightbox-container\"><img decoding=\"async\" width=\"1024\" height=\"390\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-on-async--load=\"callbacks.setButtonStyles\" data-wp-on-async-window--resize=\"callbacks.setButtonStyles\" src=\"\/tutorials\/wp-content\/uploads\/sites\/2\/2024\/09\/debian-freepbx-template-on-hpanel-os-configuration-menu-1024x390.png\" alt=\"Debian with FreePBX template on hPanel's OS configuration menu\" class=\"wp-image-116825\" srcset=\"https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/debian-freepbx-template-on-hpanel-os-configuration-menu-1024x390.png 1024w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/debian-freepbx-template-on-hpanel-os-configuration-menu-300x114.png 300w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/debian-freepbx-template-on-hpanel-os-configuration-menu-150x57.png 150w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/debian-freepbx-template-on-hpanel-os-configuration-menu-768x292.png 768w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/debian-freepbx-template-on-hpanel-os-configuration-menu.png 1460w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" aria-label=\"Enlarge\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-style--right=\"state.imageButtonRight\" data-wp-style--top=\"state.imageButtonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure><\/div><ol class=\"wp-block-list\" start=\"4\">\n<li>Click <strong>Change OS<\/strong>.<\/li>\n\n\n\n<li>Check the box to accept deleting the data.<\/li>\n\n\n\n<li>Enter a new root password and click <strong>Confirm<\/strong>.<\/li>\n<\/ol><p>Wait until the process is complete.<\/p><h3 class=\"wp-block-heading\" id=\"h-installing-freepbx-manually-with-commands\">Installing FreePBX manually with commands<\/h3><p>If you&rsquo;d rather install FreePBX manually, it has installation scripts that simplify the process, but they only work with Debian.<\/p><p>First, access your VPS as <strong>root<\/strong> <a href=\"\/my\/tutorials\/how-to-use-putty-ssh\">using an SSH client like PuTTY<\/a> or Terminal. Once connected, follow these instructions to install FreePBX on Debian 12:<\/p><ol class=\"wp-block-list\">\n<li>Enter the following command to access the installation directory:<\/li>\n<\/ol><pre class=\"wp-block-preformatted\">cd \/tmp<\/pre><ol class=\"wp-block-list\" start=\"2\">\n<li>Run the following to download the FreePBX 17 installation script:<\/li>\n<\/ol><pre class=\"wp-block-preformatted\">wget https:\/\/github.com\/FreePBX\/sng_freepbx_debian_install\/raw\/master\/sng_freepbx_debian_install.sh -O \/tmp\/sng_freepbx_debian_install.sh<\/pre><ol class=\"wp-block-list\" start=\"3\">\n<li>Enter the following to start the installation process:<\/li>\n<\/ol><pre class=\"wp-block-preformatted\">bash \/tmp\/sng_freepbx_debian_install.sh<\/pre><p>Wait until the installation process is finished. Depending on your internet connection, it might take 30 minutes or longer.<\/p><p>Once the installation is complete, you should see the following confirmation screen.<\/p><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"69d0e04eda007\"}' data-wp-interactive=\"core\/image\" class=\"aligncenter size-large wp-lightbox-container\"><img decoding=\"async\" width=\"1024\" height=\"392\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-on-async--load=\"callbacks.setButtonStyles\" data-wp-on-async-window--resize=\"callbacks.setButtonStyles\" src=\"\/tutorials\/wp-content\/uploads\/sites\/2\/2024\/09\/freepbx-confirmation-message-on-terminal-1024x392.png\" alt=\"FreePBX confirmation message on terminal\" class=\"wp-image-116827\" srcset=\"https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/freepbx-confirmation-message-on-terminal-1024x392.png 1024w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/freepbx-confirmation-message-on-terminal-300x115.png 300w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/freepbx-confirmation-message-on-terminal-150x57.png 150w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/freepbx-confirmation-message-on-terminal-768x294.png 768w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/freepbx-confirmation-message-on-terminal.png 1460w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" aria-label=\"Enlarge\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-style--right=\"state.imageButtonRight\" data-wp-style--top=\"state.imageButtonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure><\/div><p>The script automatically configures other software required for the FreePBX setup, including the <strong>Asterisk<\/strong> server, <strong>Apache<\/strong>, and the <strong>MariaDB<\/strong> database.<\/p><p>If you run another operating system or don&rsquo;t want the optional dependencies, install these components individually.<\/p><p>\n\n\n<div class=\"protip\">\n                    <h4 class=\"title\">Learn more about setting up FreePBX without scripts<\/h4>\n                    <p>Check out this FreePBX wiki guide to learn more about<a href=\"https:\/\/sangomakb.atlassian.net\/wiki\/spaces\/FP\/pages\/10682545\/How+to+Install+FreePBX+17+on+Debian+12+with+Asterisk+21\" target=\"_blank\" rel=\"noopener\">how to manually install FreePBX 17 with Asterisk 21<\/a>.<\/p>\n                <\/div>\n\n\n\n<\/p><h3 class=\"wp-block-heading\" id=\"h-finish-installing-freepbx\">Finish installing FreePBX<\/h3><p>Whichever method you choose, follow these steps to complete your FreePBX installation:<\/p><ol class=\"wp-block-list\">\n<li>Access the FreePBX login page by entering <a href=\"https:\/\/support.hostinger.com\/en\/articles\/5139756-how-to-find-your-vps-ip-address\" target=\"_blank\" rel=\"noopener\">your VPS IP address<\/a> into a web browser.<\/li>\n\n\n\n<li>Fill out the following information:<\/li>\n<\/ol><ul class=\"wp-block-list\">\n<li><strong>Username<\/strong> &ndash; the FreePBX admin username.<\/li>\n\n\n\n<li><strong>Password<\/strong> &ndash; the default password for your admin account.<\/li>\n\n\n\n<li><strong>Notification email address<\/strong> &ndash; the email account that will receive all notifications about your FreePBX service.<\/li>\n\n\n\n<li><strong>System identifier <\/strong>&ndash; the name of your FreePBX server, preferably the same as your VPS hostname.<\/li>\n<\/ul><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"69d0e04edc97d\"}' data-wp-interactive=\"core\/image\" class=\"aligncenter size-large wp-lightbox-container\"><img decoding=\"async\" width=\"1024\" height=\"445\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-on-async--load=\"callbacks.setButtonStyles\" data-wp-on-async-window--resize=\"callbacks.setButtonStyles\" src=\"\/tutorials\/wp-content\/uploads\/sites\/2\/2024\/09\/admin-account-creation-menu-on-freepbx-dashboard-1024x445.png\" alt=\"Admin account creation menu on FreePBX dashboard\" class=\"wp-image-116828\" srcset=\"https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/admin-account-creation-menu-on-freepbx-dashboard-1024x445.png 1024w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/admin-account-creation-menu-on-freepbx-dashboard-300x130.png 300w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/admin-account-creation-menu-on-freepbx-dashboard-150x65.png 150w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/admin-account-creation-menu-on-freepbx-dashboard-768x334.png 768w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/admin-account-creation-menu-on-freepbx-dashboard.png 1460w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" aria-label=\"Enlarge\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-style--right=\"state.imageButtonRight\" data-wp-style--top=\"state.imageButtonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure><\/div><ol class=\"wp-block-list\" start=\"3\">\n<li>Adjust the settings for your modules and updates. If you&rsquo;re not sure what to change at this point, you can leave it as is.<\/li>\n\n\n\n<li>Click <strong>Setup System<\/strong>.<\/li>\n<\/ol><p>When you first access the main FreePBX web interface, you might see multiple activation screens. Feel free to skip them and circle back later.<\/p><h2 class=\"wp-block-heading\" id=\"h-basic-configuration\">Basic configuration<\/h2><p>To start using FreePBX, you must configure the following settings to allow telephone communication over your server.<\/p><h3 class=\"wp-block-heading\" id=\"h-setting-up-extensions\">Setting up extensions<\/h3><p>In FreePBX, <strong>extensions<\/strong> are endpoints for connecting calls within the same network and to external services. Here&rsquo;s how to set it up:<\/p><ol class=\"wp-block-list\">\n<li>Open the <strong>FreePBX admin dashboard<\/strong> and log in as an admin.<\/li>\n\n\n\n<li>Go to the <strong>top bar<\/strong> &rarr; <strong>Connectivity<\/strong> &rarr; <strong>Extensions<\/strong>.<\/li>\n\n\n\n<li>Click <strong>Add Extension<\/strong> to add detailed information about your extensions. Since we will create a basic one, choose<strong> Quick Create Extensions<\/strong>.<\/li>\n\n\n\n<li>On the<strong> Step 1 <\/strong>page, adjust the following settings:\n<ul class=\"wp-block-list\">\n<li><strong>Extension Type<\/strong> &ndash; the type of communication protocol your extension uses. We&rsquo;ll pick <strong>SIP [chan_pjsip]<\/strong> since it is the most common.<\/li>\n\n\n\n<li><strong>Extension Number<\/strong> &ndash; the number other users use to dial the current extensions. Use a three to five-digit number that<strong> doesn&rsquo;t start with 1<\/strong> to avoid overlaps with existing services.<\/li>\n\n\n\n<li><strong>Display Name<\/strong> &ndash; the extension&rsquo;s owner.<\/li>\n\n\n\n<li><strong>Outbound Caller ID<\/strong> &ndash; the identifier of the current extension when dialing outbound. We can leave it empty.<\/li>\n\n\n\n<li><strong>Email Address<\/strong> &ndash; the extension owner&rsquo;s email address.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Click <strong>Next<\/strong>.<\/li>\n<\/ol><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"69d0e04edf144\"}' data-wp-interactive=\"core\/image\" class=\"aligncenter size-large wp-lightbox-container\"><img decoding=\"async\" width=\"1024\" height=\"819\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-on-async--load=\"callbacks.setButtonStyles\" data-wp-on-async-window--resize=\"callbacks.setButtonStyles\" src=\"\/tutorials\/wp-content\/uploads\/sites\/2\/2024\/09\/first-page-of-extension-creation-menu-on-freepbx-1024x819.png\" alt=\"first-page-of-extension-creation-menu-on-freepbx\" class=\"wp-image-116830\" srcset=\"https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/first-page-of-extension-creation-menu-on-freepbx-1024x819.png 1024w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/first-page-of-extension-creation-menu-on-freepbx-300x240.png 300w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/first-page-of-extension-creation-menu-on-freepbx-150x120.png 150w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/first-page-of-extension-creation-menu-on-freepbx-768x614.png 768w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/first-page-of-extension-creation-menu-on-freepbx.png 1444w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" aria-label=\"Enlarge\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-style--right=\"state.imageButtonRight\" data-wp-style--top=\"state.imageButtonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure><\/div><ol class=\"wp-block-list\" start=\"6\">\n<li>On the <strong>Step 2<\/strong> page, change other settings:\n<ul class=\"wp-block-list\">\n<li><strong>Enable Find Me\/Follow Me<\/strong> &ndash; the feature that redirects calls to another phone when the extension doesn&rsquo;t respond.<\/li>\n\n\n\n<li><strong>ParkingLot<\/strong> &ndash; the module to queue and forward unanswered calls to different extensions. By default, you only have the <strong>Default Lot <\/strong>option.<\/li>\n\n\n\n<li><strong>Create User Manager User<\/strong> &ndash; the toggle to add the user to the <strong>User Manager <\/strong>list.<\/li>\n\n\n\n<li><strong>User Manager Groups<\/strong> &ndash; the group that your new extension user belongs to.<\/li>\n\n\n\n<li><strong>Enable Voicemail <\/strong>&ndash; the toggle defining voicemail is available for the current extension.<\/li>\n\n\n\n<li><strong>Voicemail PIN <\/strong>&ndash; the password for your extension&rsquo;s voicemail service.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Click<strong> Finish <\/strong>to save the settings.<\/li>\n<\/ol><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"69d0e04ee1a07\"}' data-wp-interactive=\"core\/image\" class=\"aligncenter size-large wp-lightbox-container\"><img decoding=\"async\" width=\"1024\" height=\"809\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-on-async--load=\"callbacks.setButtonStyles\" data-wp-on-async-window--resize=\"callbacks.setButtonStyles\" src=\"\/tutorials\/wp-content\/uploads\/sites\/2\/2024\/09\/second-page-of-extension-creation-menu-on-freepbx-1-1024x809.png\" alt=\"Second page of extension creation menu on FreePBX\" class=\"wp-image-116831\" srcset=\"https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/second-page-of-extension-creation-menu-on-freepbx-1-1024x809.png 1024w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/second-page-of-extension-creation-menu-on-freepbx-1-300x237.png 300w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/second-page-of-extension-creation-menu-on-freepbx-1-150x119.png 150w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/second-page-of-extension-creation-menu-on-freepbx-1-768x607.png 768w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/second-page-of-extension-creation-menu-on-freepbx-1.png 1302w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" aria-label=\"Enlarge\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-style--right=\"state.imageButtonRight\" data-wp-style--top=\"state.imageButtonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure><\/div><p>If you want to add more extensions, simply repeat the steps above. To change their settings, go to the <strong>All Extensions<\/strong> tab and click the <strong>Edit <\/strong>icon under the <strong>Action<\/strong> column.<\/p><p>After changing any FreePBX settings, remember to hit the <strong>Apply Config<\/strong> button on the top right of the screen.<\/p><h3 class=\"wp-block-heading\" id=\"h-configuring-sip-trunks\">Configuring SIP trunks<\/h3><p><strong>Session Initiation Protocol<\/strong> (SIP) enables your internal phone system to dial external numbers via the internet. A trunk is a connection endpoint that includes multiple communication channels, including phones.<\/p><p>Before proceeding, you need an external VoIP service from SIP trunk providers like <a href=\"https:\/\/voxtelesys.com\/\" target=\"_blank\" rel=\"noopener\">Voxtelesys<\/a> to route digital data from the internet to the analog phone service.<\/p><p>After purchasing a VoIP service, follow these steps to configure trunks in FreePBX:<\/p><ol class=\"wp-block-list\">\n<li>Log in to your <strong>FreePBX dashboard<\/strong> &rarr; <strong>Connectivity<\/strong> &rarr; <strong>Trunks<\/strong>.<\/li>\n\n\n\n<li>Click <strong>Add Trunk <\/strong>and select <strong>Add SIP (chan_pjsip) Trunk<\/strong>.<\/li>\n\n\n\n<li>Under the <strong>General<\/strong> tab, enter your trunk&rsquo;s <strong>name<\/strong>, <strong>outbound caller ID<\/strong>, and <strong>maximum channels<\/strong>.<\/li>\n<\/ol><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"69d0e04ee4125\"}' data-wp-interactive=\"core\/image\" class=\"aligncenter size-large wp-lightbox-container\"><img decoding=\"async\" width=\"1024\" height=\"363\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-on-async--load=\"callbacks.setButtonStyles\" data-wp-on-async-window--resize=\"callbacks.setButtonStyles\" src=\"\/tutorials\/wp-content\/uploads\/sites\/2\/2024\/09\/sip-trunk-creation-menu-on-freepbx-dashboard-1024x363.png\" alt=\"SIP trunk creation menu on FreePBX dashboard\" class=\"wp-image-116832\" srcset=\"https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/sip-trunk-creation-menu-on-freepbx-dashboard-1024x363.png 1024w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/sip-trunk-creation-menu-on-freepbx-dashboard-300x106.png 300w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/sip-trunk-creation-menu-on-freepbx-dashboard-150x53.png 150w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/sip-trunk-creation-menu-on-freepbx-dashboard-768x272.png 768w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/sip-trunk-creation-menu-on-freepbx-dashboard.png 1460w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" aria-label=\"Enlarge\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-style--right=\"state.imageButtonRight\" data-wp-style--top=\"state.imageButtonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure><\/div><ol class=\"wp-block-list\" start=\"4\">\n<li>Go to the <strong>pjsip Settings <\/strong>tab. Enter information like <strong>SIP username<\/strong>, <strong>server IP address<\/strong>, and <strong>port<\/strong> based on your SIP trunking service provider.<\/li>\n\n\n\n<li>Click <strong>Submit<\/strong> to save the changes.<\/li>\n<\/ol><h3 class=\"wp-block-heading\" id=\"h-outbound-and-inbound-routes\">Outbound and inbound routes<\/h3><p>Routes define which components in your FreePBX phone system will handle calls, whether it is an extension, group, or voicemail. Inbound routing sets the rules for incoming public dials, while outbound configures the outgoing ones.<\/p><p>A route can direct calls to different destinations depending on your rules. For example, you can set extension <strong>B<\/strong> to take over a dial if <strong>A <\/strong>doesn&rsquo;t respond. It helps distribute calls more evenly and minimize missed dials.<\/p><p>Here are the steps for <strong>inbound route<\/strong> configuration in FreePBX:<\/p><ol class=\"wp-block-list\">\n<li>From your <strong>FreePBX admin menu <\/strong>&rarr; <strong>Connectivity <\/strong>&rarr; <strong>Inbound Routes<\/strong>.<\/li>\n\n\n\n<li>Click <strong>Add Inbound Route<\/strong>.<\/li>\n\n\n\n<li>Enter the following information:\n<ul class=\"wp-block-list\">\n<li><strong>Description<\/strong> &ndash; the name of your incoming route.<\/li>\n\n\n\n<li><strong>DID Numbe<\/strong>r &ndash; the number outside callers will use to dial this route. You must get it from the VoIP or DID provider.<\/li>\n\n\n\n<li><strong>Set Destination<\/strong> &ndash; the component to which this route will direct incoming calls.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Click <strong>Submit<\/strong> to confirm.<\/li>\n<\/ol><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"69d0e04ee68c3\"}' data-wp-interactive=\"core\/image\" class=\"aligncenter size-large wp-lightbox-container\"><img decoding=\"async\" width=\"1024\" height=\"368\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-on-async--load=\"callbacks.setButtonStyles\" data-wp-on-async-window--resize=\"callbacks.setButtonStyles\" src=\"\/tutorials\/wp-content\/uploads\/sites\/2\/2024\/09\/inbound-route-configuration-page-on-freepbx-dashboard-1024x368.png\" alt=\"Inbound route configuration page on FreePBX dashboard\" class=\"wp-image-116833\" srcset=\"https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/inbound-route-configuration-page-on-freepbx-dashboard-1024x368.png 1024w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/inbound-route-configuration-page-on-freepbx-dashboard-300x108.png 300w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/inbound-route-configuration-page-on-freepbx-dashboard-150x54.png 150w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/inbound-route-configuration-page-on-freepbx-dashboard-768x276.png 768w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/inbound-route-configuration-page-on-freepbx-dashboard.png 1460w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" aria-label=\"Enlarge\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-style--right=\"state.imageButtonRight\" data-wp-style--top=\"state.imageButtonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure><\/div><p>To set up an <strong>outbound route<\/strong>, you need a trunk since your FreePBX system uses it to reach the public phone service. Follow these steps:<\/p><ol class=\"wp-block-list\">\n<li>Go to your <strong>FreePBX dashboard<\/strong> &rarr;<strong> Connectivity<\/strong> &rarr; <strong>Outbound Routes<\/strong>.<\/li>\n\n\n\n<li>Click <strong>Add Outbound Route<\/strong>.<\/li>\n\n\n\n<li>Enter the following information:\n<ul class=\"wp-block-list\">\n<li><strong>Route Name<\/strong> &ndash; the name of your outgoing route.<\/li>\n\n\n\n<li><strong>Route CID<\/strong> &ndash; the call ID that will show up on the dialed number.<\/li>\n\n\n\n<li><strong>Runk Sequence for Matched Routes <\/strong>&ndash; the SIP trunk directing outgoing calls to the public phone system.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Navigate to the <strong>Dial Patterns<\/strong> tab and specify phone numbers that you can call through this route. Click the <strong>+<\/strong> icon to show the guide.<\/li>\n\n\n\n<li>Click <strong>Submit <\/strong>to confirm.<\/li>\n<\/ol><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"69d0e04ee9235\"}' data-wp-interactive=\"core\/image\" class=\"aligncenter size-large wp-lightbox-container\"><img decoding=\"async\" width=\"1024\" height=\"391\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-on-async--load=\"callbacks.setButtonStyles\" data-wp-on-async-window--resize=\"callbacks.setButtonStyles\" src=\"\/tutorials\/wp-content\/uploads\/sites\/2\/2024\/09\/outbound-route-configuration-page-on-freepbx-dashboard-1024x391.png\" alt=\"Outbound route configuration page on FreePBX dashboard\" class=\"wp-image-116834\" srcset=\"https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/outbound-route-configuration-page-on-freepbx-dashboard-1024x391.png 1024w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/outbound-route-configuration-page-on-freepbx-dashboard-300x115.png 300w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/outbound-route-configuration-page-on-freepbx-dashboard-150x57.png 150w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/outbound-route-configuration-page-on-freepbx-dashboard-768x294.png 768w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/outbound-route-configuration-page-on-freepbx-dashboard.png 1460w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" aria-label=\"Enlarge\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-style--right=\"state.imageButtonRight\" data-wp-style--top=\"state.imageButtonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure><\/div><p>That&rsquo;s it! Now, phones in your local network should be able to make and receive calls from the public line.<\/p><h2 class=\"wp-block-heading\" id=\"h-essential-modules-and-features\">Essential modules and features<\/h2><p>Let&rsquo;s explore several essential modules and features to enhance your FreePBX phone system.<\/p><h3 class=\"wp-block-heading\" id=\"h-ivr-interactive-voice-response-setup\">IVR (Interactive voice response) setup<\/h3><p>IVR automatically responds to callers using an automated message and redirects them to a specific route based on their choice.<\/p><p>For example, it can ask users to press a number on their phone to access a specific customer service menu.<\/p><p>Before getting into the IVR setup, record a message with software like <a href=\"https:\/\/www.audacityteam.org\/\" target=\"_blank\" rel=\"noopener\">Audacity<\/a>. You can save the file as any extension and convert it later, but we recommend using <strong>WAV.<\/strong><\/p><p>Follow these steps to upload the audio message to FreePBX:<\/p><ol class=\"wp-block-list\">\n<li>From your <strong>FreePBX dashboard<\/strong> &rarr; <strong>Admin<\/strong> &rarr; <strong>System Recordings<\/strong>.<\/li>\n\n\n\n<li>Enter the <strong>name <\/strong>and <strong>description <\/strong>of your recording.<\/li>\n\n\n\n<li>Click <strong>Browse <\/strong>and select the audio files you want to upload.<\/li>\n\n\n\n<li>You should see new items under the<strong> File List<\/strong> setting. If you want to remove one, click the red <strong>X<\/strong> icon.<\/li>\n\n\n\n<li>Select the audio codec. If you choose a different format from the uploaded files, FreePBX might take some time to convert them.<\/li>\n\n\n\n<li>Once finished, click<strong> Submit<\/strong>.<\/li>\n<\/ol><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"69d0e04eebba6\"}' data-wp-interactive=\"core\/image\" class=\"aligncenter size-large wp-lightbox-container\"><img decoding=\"async\" width=\"1024\" height=\"440\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-on-async--load=\"callbacks.setButtonStyles\" data-wp-on-async-window--resize=\"callbacks.setButtonStyles\" src=\"\/tutorials\/wp-content\/uploads\/sites\/2\/2024\/09\/system-recording-setting-menu-on-freepbx-dashboard-1024x440.png\" alt=\"System recording setting menu on FreePBX dashboard\" class=\"wp-image-116835\" srcset=\"https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/system-recording-setting-menu-on-freepbx-dashboard-1024x440.png 1024w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/system-recording-setting-menu-on-freepbx-dashboard-300x129.png 300w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/system-recording-setting-menu-on-freepbx-dashboard-150x64.png 150w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/system-recording-setting-menu-on-freepbx-dashboard-768x330.png 768w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/system-recording-setting-menu-on-freepbx-dashboard.png 1460w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" aria-label=\"Enlarge\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-style--right=\"state.imageButtonRight\" data-wp-style--top=\"state.imageButtonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure><\/div><p>Next, proceed with the IVR configuration:<\/p><ol class=\"wp-block-list\">\n<li>Go to <strong>Applications <\/strong>&rarr; <strong>IVR<\/strong> &rarr; <strong>Add IVR<\/strong>.<\/li>\n\n\n\n<li>Enter the <strong>IVR name<\/strong> and <strong>description<\/strong>.<\/li>\n\n\n\n<li>Go to <strong>IVR DTMF Options <\/strong>&rarr; <strong>Announcement<\/strong>. From the drop-down menu, select which IVR recording to play when a caller dials you.<\/li>\n\n\n\n<li>Scroll down to the <strong>IVR Entries<\/strong> section. Enter the following information:\n<ul class=\"wp-block-list\">\n<li><strong>Digits<\/strong> &ndash; the number callers must press on their phone to access a specific IVR menu.<\/li>\n\n\n\n<li><strong>Destination<\/strong> &ndash; the action to take when callers enter a specific digit, like playing a recording or redirecting them to another IVR.<\/li>\n\n\n\n<li><strong>Return<\/strong> &ndash; the action after the caller reaches specific IVR destinations.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Click <strong>Submit<\/strong> and<strong> Apply Config<\/strong> to finish.<\/li>\n<\/ol><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"69d0e04eee8a0\"}' data-wp-interactive=\"core\/image\" class=\"aligncenter size-large wp-lightbox-container\"><img decoding=\"async\" width=\"1024\" height=\"132\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-on-async--load=\"callbacks.setButtonStyles\" data-wp-on-async-window--resize=\"callbacks.setButtonStyles\" src=\"\/tutorials\/wp-content\/uploads\/sites\/2\/2024\/09\/ivr-entries-configuration-menu-on-freepbx-dashboard-1024x132.png\" alt=\"IVR entries configuration menu on FreePBX dashboard\" class=\"wp-image-116836\" srcset=\"https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/ivr-entries-configuration-menu-on-freepbx-dashboard-1024x132.png 1024w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/ivr-entries-configuration-menu-on-freepbx-dashboard-300x39.png 300w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/ivr-entries-configuration-menu-on-freepbx-dashboard-150x19.png 150w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/ivr-entries-configuration-menu-on-freepbx-dashboard-768x99.png 768w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/ivr-entries-configuration-menu-on-freepbx-dashboard.png 1460w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" aria-label=\"Enlarge\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-style--right=\"state.imageButtonRight\" data-wp-style--top=\"state.imageButtonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure><\/div><h3 class=\"wp-block-heading\" id=\"h-ring-groups\">Ring groups<\/h3><p>Ring groups are collections of extensions that get notified at the same time when receiving a call. Only the first operator who picks up the call will connect to the line.<\/p><p>This setup helps minimize the number of missed calls when you have many operators with the same function. It&rsquo;s very handy for a company with multiple secretaries or receptionists.<\/p><p>Here&rsquo;s how to set up ring groups in FreePBX:<\/p><ol class=\"wp-block-list\">\n<li>From your<strong> FreePBX dashboard<\/strong>, go to <strong>Applications<\/strong> &rarr; <strong>Ring Groups<\/strong>.<\/li>\n\n\n\n<li>Click <strong>Add Ring Groups<\/strong>.<\/li>\n\n\n\n<li>Enter the <strong>Ring-Group Number<\/strong>. It is similar to extension numbers, allowing users to dial the ring group.<\/li>\n\n\n\n<li>Add a <strong>description <\/strong>for your ring group.<\/li>\n\n\n\n<li>Add extensions to the ring group by listing their number separated by line breaks. Alternatively, select them from the <strong>User Quick Select<\/strong> drop-down menu.<\/li>\n<\/ol><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"69d0e04ef151d\"}' data-wp-interactive=\"core\/image\" class=\"aligncenter size-large wp-lightbox-container\"><img decoding=\"async\" width=\"1024\" height=\"156\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-on-async--load=\"callbacks.setButtonStyles\" data-wp-on-async-window--resize=\"callbacks.setButtonStyles\" src=\"\/tutorials\/wp-content\/uploads\/sites\/2\/2024\/09\/extension-list-on-freepbx-ring-group-creation-menu-1024x156.png\" alt=\"Extension list on FreePBX ring group creation menu\" class=\"wp-image-116837\" srcset=\"https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/extension-list-on-freepbx-ring-group-creation-menu-1024x156.png 1024w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/extension-list-on-freepbx-ring-group-creation-menu-300x46.png 300w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/extension-list-on-freepbx-ring-group-creation-menu-150x23.png 150w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/extension-list-on-freepbx-ring-group-creation-menu-768x117.png 768w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/extension-list-on-freepbx-ring-group-creation-menu.png 1460w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" aria-label=\"Enlarge\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-style--right=\"state.imageButtonRight\" data-wp-style--top=\"state.imageButtonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure><\/div><ol class=\"wp-block-list\" start=\"6\">\n<li>Scroll down to the <strong>Destination if no answer<\/strong> section. Select a redirection that will answer the call if no extensions pick up.<\/li>\n\n\n\n<li>Click <strong>Apply Config<\/strong> to save the changes.<\/li>\n<\/ol><h3 class=\"wp-block-heading\" id=\"h-voicemail-configuration\">Voicemail configuration<\/h3><p>Voicemail lets callers leave an audio note to an extension when no one answers. Here&rsquo;s how to set it up in FreePBX:<\/p><ol class=\"wp-block-list\">\n<li>Go to your <strong>FreePBX dashboard<\/strong> &rarr; <strong>Connectivity<\/strong> &rarr; <strong>Extensions<\/strong>.<\/li>\n\n\n\n<li>From the <strong>All Extensions<\/strong> tab, click the <strong>Edit <\/strong>icon under the<strong> Actions <\/strong>column.<\/li>\n<\/ol><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"69d0e04ef3b14\"}' data-wp-interactive=\"core\/image\" class=\"aligncenter size-large is-resized wp-lightbox-container\"><img decoding=\"async\" width=\"1024\" height=\"84\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-on-async--load=\"callbacks.setButtonStyles\" data-wp-on-async-window--resize=\"callbacks.setButtonStyles\" src=\"\/tutorials\/wp-content\/uploads\/sites\/2\/2024\/09\/the-edit-button-on-freepbx-dashboard-extension-list-1024x84.png\" alt=\"The Edit button on FreePBX dashboard extension list\" class=\"wp-image-116838\" style=\"width:840px;height:auto\" srcset=\"https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/the-edit-button-on-freepbx-dashboard-extension-list-1024x84.png 1024w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/the-edit-button-on-freepbx-dashboard-extension-list-300x25.png 300w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/the-edit-button-on-freepbx-dashboard-extension-list-150x12.png 150w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/the-edit-button-on-freepbx-dashboard-extension-list-768x63.png 768w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/the-edit-button-on-freepbx-dashboard-extension-list.png 1460w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" aria-label=\"Enlarge\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-style--right=\"state.imageButtonRight\" data-wp-style--top=\"state.imageButtonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure><\/div><ol class=\"wp-block-list\" start=\"3\">\n<li>Select the<strong> Voicemail <\/strong>tab and hit the <strong>Voicemail<\/strong> toggle.<\/li>\n\n\n\n<li>Enter the <strong>email address<\/strong> that will receive the voicemail. By default, it is set to the extension&rsquo;s user.<\/li>\n\n\n\n<li>Click the <strong>Email Attachment<\/strong> toggle to have FreePBX send the voicemail message to the specified address.<\/li>\n<\/ol><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"69d0e04f01e2f\"}' data-wp-interactive=\"core\/image\" class=\"aligncenter size-large wp-lightbox-container\"><img decoding=\"async\" width=\"1024\" height=\"116\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-on-async--load=\"callbacks.setButtonStyles\" data-wp-on-async-window--resize=\"callbacks.setButtonStyles\" src=\"\/tutorials\/wp-content\/uploads\/sites\/2\/2024\/09\/voicemail-email-settings-on-freepbx-extension-setting-menu-1024x116.png\" alt=\" Voicemail email settings on FreePBX extension setting menu\" class=\"wp-image-116839\" srcset=\"https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/voicemail-email-settings-on-freepbx-extension-setting-menu-1024x116.png 1024w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/voicemail-email-settings-on-freepbx-extension-setting-menu-300x34.png 300w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/voicemail-email-settings-on-freepbx-extension-setting-menu-150x17.png 150w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/voicemail-email-settings-on-freepbx-extension-setting-menu-768x87.png 768w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/voicemail-email-settings-on-freepbx-extension-setting-menu.png 1460w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" aria-label=\"Enlarge\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-style--right=\"state.imageButtonRight\" data-wp-style--top=\"state.imageButtonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure><\/div><ol class=\"wp-block-list\" start=\"6\">\n<li>Click <strong>Submit<\/strong> and <strong>Apply Config <\/strong>to save the changes.<\/li>\n<\/ol><h2 class=\"wp-block-heading\" id=\"h-advanced-freepbx-configurations\">Advanced FreePBX configurations<\/h2><p>Here are several advanced FreePBX configurations to improve its security and functionality.<\/p><h3 class=\"wp-block-heading\" id=\"h-security-measures\">Security measures<\/h3><p>Securing your FreePBX server is important to prevent cyber criminals from infiltrating your communication network and exposing sensitive information.<\/p><p>To maintain optimal security, consider the following measures:<\/p><ul class=\"wp-block-list\">\n<li><strong>Set up a firewall<\/strong> &ndash; FreePBX ships with a built-in firewall that blocks traffic from unauthorized IP addresses. Enable it by going to your <strong>FreePBX dashboard<\/strong> &rarr; <strong>Connectivity<\/strong> &rarr; <strong>Firewall<\/strong>.<\/li>\n\n\n\n<li><strong>Secure trunks <\/strong>&ndash; trunks can expose your internal network to the public phone line, potentially creating a security risk. To secure them, add a PJSIP password and change the default SIP port.<\/li>\n\n\n\n<li><strong>Back up your server<\/strong> &ndash; regularly back up your VPS to make sure your data is safe. Hostinger users can easily enable <a href=\"https:\/\/support.hostinger.com\/en\/articles\/1583232-how-to-back-up-or-restore-a-vps\" target=\"_blank\" rel=\"noopener\">automatic weekly VPS backups<\/a>.<\/li>\n\n\n\n<li><strong>Keep all software up to date <\/strong>&ndash; using outdated software might expose your server to vulnerabilities. Enable automatic updates for FreePBX and its modules by going to your <strong>FreePBX dashboard<\/strong> &rarr; <strong>Admin<\/strong> &rarr; <strong>Updates<\/strong>.<\/li>\n<\/ul><p>In addition to safeguarding your FreePBX phone system, apply <a href=\"\/my\/tutorials\/vps-security\">VPS security best practices<\/a>. For example, regularly scan your system for malware. Hostinger users can do this automatically using the built-in <strong>Monarx scanner<\/strong>.<\/p><h3 class=\"wp-block-heading\" id=\"h-using-add-on-modules\">Using add-on modules<\/h3><p>FreePBX modules are add-ons that expand this tool&rsquo;s functionality. Official modules are downloadable from the <a href=\"https:\/\/www.freepbx.org\/add-ons\/\" target=\"_blank\" rel=\"noopener\">FreePBX module page<\/a>, while many third-party options are available on <strong>GitHub<\/strong>.<\/p><p>Note that most official modules are paid. Purchasing them in a bundle is usually more cost-efficient. Meanwhile, third-party modules are usually free.<\/p><p>To install <strong>official FreePBX modules<\/strong>, follow these steps:<\/p><ol class=\"wp-block-list\">\n<li>From your <strong>FreePBX dashboard<\/strong> &rarr; <strong>Admin<\/strong> &rarr; <strong>System Admin<\/strong>.<\/li>\n\n\n\n<li>Click <strong>Activation<\/strong> from the sidebar.<\/li>\n\n\n\n<li>If you have purchased a license, you should see an activated screen with a list of modules you can install. Otherwise, click<strong> Activate<\/strong>.<\/li>\n\n\n\n<li>Go to the top menu &rarr; <strong>Admin<\/strong> &rarr; <strong>Module Admin<\/strong>.<\/li>\n\n\n\n<li>Select the<strong> Commercial <\/strong>tab and click <strong>Check Online<\/strong>.<\/li>\n\n\n\n<li>Find the module you want to install and click the <strong>Arrow<\/strong> icon to expand the menu. Click the<strong> Download and install <\/strong>button. Repeat this step for other extensions.<\/li>\n<\/ol><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"69d0e04f04dc5\"}' data-wp-interactive=\"core\/image\" class=\"aligncenter size-large wp-lightbox-container\"><img decoding=\"async\" width=\"1024\" height=\"262\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-on-async--load=\"callbacks.setButtonStyles\" data-wp-on-async-window--resize=\"callbacks.setButtonStyles\" src=\"\/tutorials\/wp-content\/uploads\/sites\/2\/2024\/09\/official-freepbx-module-installation-menu-1024x262.png\" alt=\"Official FreePBX module installation menu\" class=\"wp-image-116840\" srcset=\"https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/official-freepbx-module-installation-menu-1024x262.png 1024w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/official-freepbx-module-installation-menu-300x77.png 300w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/official-freepbx-module-installation-menu-150x38.png 150w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/official-freepbx-module-installation-menu-768x197.png 768w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/official-freepbx-module-installation-menu.png 1460w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" aria-label=\"Enlarge\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-style--right=\"state.imageButtonRight\" data-wp-style--top=\"state.imageButtonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure><\/div><ol class=\"wp-block-list\" start=\"7\">\n<li>Scroll back to the top and hit <strong>Process<\/strong>.<\/li>\n\n\n\n<li>Click <strong>Confirm <\/strong>to start the installation.<\/li>\n<\/ol><p>To install<strong> third-party modules<\/strong>, you must upload their archive files or enter the download URLs into FreePBX:<\/p><ol class=\"wp-block-list\">\n<li>From your <strong>FreePBX dashboard<\/strong>, go to <strong>Admin<\/strong> &rarr; <strong>Module Admin<\/strong>.<\/li>\n\n\n\n<li>Click <strong>Upload Modules<\/strong>.<\/li>\n\n\n\n<li>You can upload modules from the download page or your local computer. Enter the <strong>download URL<\/strong> if you choose to upload the module using its URL. Otherwise, click <strong>Choose File<\/strong> to upload it from your computer.<\/li>\n<\/ol><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"69d0e04f07676\"}' data-wp-interactive=\"core\/image\" class=\"aligncenter size-large wp-lightbox-container\"><img decoding=\"async\" width=\"1024\" height=\"433\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-on-async--load=\"callbacks.setButtonStyles\" data-wp-on-async-window--resize=\"callbacks.setButtonStyles\" src=\"\/tutorials\/wp-content\/uploads\/sites\/2\/2024\/09\/module-upload-menu-on-freepbx-dashboard-1024x433.png\" alt=\"Module upload menu on FreePBX dashboard\" class=\"wp-image-116841\" srcset=\"https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/module-upload-menu-on-freepbx-dashboard-1024x433.png 1024w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/module-upload-menu-on-freepbx-dashboard-300x127.png 300w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/module-upload-menu-on-freepbx-dashboard-150x63.png 150w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/module-upload-menu-on-freepbx-dashboard-768x325.png 768w, https:\/\/www.hostinger.com\/my\/tutorials\/wp-content\/uploads\/sites\/45\/2024\/09\/module-upload-menu-on-freepbx-dashboard.png 1460w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" aria-label=\"Enlarge\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-style--right=\"state.imageButtonRight\" data-wp-style--top=\"state.imageButtonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure><\/div><ol class=\"wp-block-list\" start=\"4\">\n<li>Once the upload process is complete, click <strong>Manage local modules<\/strong>.<\/li>\n\n\n\n<li>Find your new module, click the <strong>arrow<\/strong> icon to expand the menu, and select <strong>Install<\/strong>.<\/li>\n\n\n\n<li>Scroll up and hit <strong>Process<\/strong>.<\/li>\n\n\n\n<li>Click <strong>Confirm <\/strong>to start the installation.<\/li>\n<\/ol><p>Always remember to click <strong>Apply config <\/strong>after installing or updating modules to ensure the changes are in place.<\/p><h2 class=\"wp-block-heading\" id=\"h-conclusion\">Conclusion<\/h2><p>FreePBX is a platform for setting up an internal phone system for your organization.<\/p><p>To configure FreePBX, purchase a Debian VPS plan and install the software on the server. Hostinger users can easily configure FreePBX by running the available template.<\/p><p>Once installed, open the FreePBX admin dashboard by entering your VPS IP address into a web browser. Then, configure the following components:<\/p><ul class=\"wp-block-list\">\n<li><strong>Extensions<\/strong> &ndash; the endpoint for phones in your system.<\/li>\n\n\n\n<li><strong>SIP trunks<\/strong> &ndash; a collection of endpoints that enable your phone system to connect to the public line.<\/li>\n\n\n\n<li><strong>Inbound and outbound routes<\/strong> &ndash; rules in your phone system that define which extensions will handle incoming and outgoing calls.<\/li>\n<\/ul><p>Additionally, set up an IVR system, ring groups, and voicemails to manage calls more efficiently. Finally, don&rsquo;t forget to apply security best practices like enabling a firewall and using strong SIP passwords.<\/p><h2 class=\"wp-block-heading\" id=\"h-freepbx-tutorial-faq\">FreePBX tutorial FAQ<\/h2><div id=\"rank-math-faq\" class=\"rank-math-block\">\n<div class=\"rank-math-list \">\n<div id=\"faq-question-69448461cb24f\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">What is FreePBX and how does it work?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>FreePBX is a tool that provides a graphical user interface for setting up an internal phone system, typically in a company, organization, or school environment. It works on top of the Asterisk server, which facilitates communication via telephone over a network.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-69448461cb251\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">What are the system requirements for installing FreePBX?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>We recommend a server with at least a <strong>single-core <\/strong>processor,<strong> 2 GB<\/strong> of RAM,<strong> 20 GB<\/strong> of storage, and <strong>100 Mb\/s <\/strong>connection. Although FreePBX runs on any Linux distribution, it is easiest to set up on Debian.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-69448461cb252\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \">Can I integrate third-party applications with FreePBX?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>Yes! You can add more features to FreePBX by installing modules. For example, install the<strong> CRM Link add-on<\/strong> to integrate platforms like <strong>Salesforce<\/strong>.<\/p>\n\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>FreePBX is an open-source platform that enables phone systems over a network, typically used for internal communication within a company. This FreePBX tutorial will explain everything about this platform, from installing it on your server to setting up the phone system in your network. You will also learn how to install modules to expand FreePBX&rsquo;s [&#8230;]<\/p>\n<p><a class=\"btn btn-secondary understrap-read-more-link\" href=\"\/my\/tutorials\/coolify-vs-dokploy-7\">Read More&#8230;<\/a><\/p>\n","protected":false},"author":337,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"rank_math_title":"FreePBX tutorial: Installation and basic usage","rank_math_description":"Check our FreePBX guide to learn the basics of using this GUI, as we\u2019ll cover everything from getting hosting to more advanced configurations.","rank_math_focus_keyword":"freepbx tutorial","footnotes":""},"categories":[22640,22639],"tags":[],"class_list":["post-116822","post","type-post","status-publish","format-standard","hentry","category-vps-use-cases","category-vps"],"hreflangs":[{"locale":"en-US","link":"https:\/\/www.hostinger.com\/tutorials\/freepbx-tutorial","default":0},{"locale":"fr-FR","link":"https:\/\/www.hostinger.com\/fr\/tutoriels\/tutoriel-freepbx","default":0},{"locale":"en-UK","link":"https:\/\/www.hostinger.com\/uk\/tutorials\/freepbx-tutorial","default":0},{"locale":"en-MY","link":"https:\/\/www.hostinger.com\/my\/tutorials\/freepbx-tutorial","default":0},{"locale":"en-PH","link":"https:\/\/www.hostinger.com\/ph\/tutorials\/freepbx-tutorial","default":0},{"locale":"en-IN","link":"https:\/\/www.hostinger.com\/in\/tutorials\/freepbx-tutorial","default":0},{"locale":"en-CA","link":"https:\/\/www.hostinger.com\/ca\/tutorials\/freepbx-tutorial","default":0},{"locale":"en-AU","link":"https:\/\/www.hostinger.com\/au\/tutorials\/freepbx-tutorial","default":0},{"locale":"en-NG","link":"https:\/\/www.hostinger.com\/ng\/tutorials\/freepbx-tutorial","default":0}],"_links":{"self":[{"href":"https:\/\/www.hostinger.com\/my\/tutorials\/wp-json\/wp\/v2\/posts\/116822","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.hostinger.com\/my\/tutorials\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.hostinger.com\/my\/tutorials\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/my\/tutorials\/wp-json\/wp\/v2\/users\/337"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/my\/tutorials\/wp-json\/wp\/v2\/comments?post=116822"}],"version-history":[{"count":8,"href":"https:\/\/www.hostinger.com\/my\/tutorials\/wp-json\/wp\/v2\/posts\/116822\/revisions"}],"predecessor-version":[{"id":126071,"href":"https:\/\/www.hostinger.com\/my\/tutorials\/wp-json\/wp\/v2\/posts\/116822\/revisions\/126071"}],"wp:attachment":[{"href":"https:\/\/www.hostinger.com\/my\/tutorials\/wp-json\/wp\/v2\/media?parent=116822"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hostinger.com\/my\/tutorials\/wp-json\/wp\/v2\/categories?post=116822"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hostinger.com\/my\/tutorials\/wp-json\/wp\/v2\/tags?post=116822"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}