Extensions.md - edlentz/Nimbus GitHub Wiki

The Extension Page in FreePBX is where you configure and manage user endpoints (i.e., phones or softphones). This page is critical because it defines how each extension behaves in your PBX system, including SIP credentials, voicemail, call forwarding, and more.

Below is a step-by-step explanation of the Extensions Page in FreePBX:


📍 Accessing the Extensions Page

  1. Log in to FreePBX Admin GUI.

  2. Navigate to Applications → Extensions.


🧩 Key Sections of the Extension Page

When creating or editing an extension, you'll encounter several tabs and fields:


1. User Extension (Main Tab)

Field | Description -- | -- User Extension | The numeric ID for the extension (e.g., 1001). This is what the user dials. Display Name | The full name of the user (e.g., John Doe). This appears on the phone's caller ID and dashboard. CID Num Alias | Optional. If set, replaces the displayed Caller ID Number. Secret | The SIP password for registration. Strong passwords are recommended. Outbound CID | The number presented for outbound calls. Can be formatted like “John” <1234567890>. Device | Usually set to Generic SIP Device or Generic PJSIP Device. Important for selecting SIP channel driver.

5. Other Important Tabs

  • Fax: Enable fax detection or virtual fax.

  • Call Recording: Configure inbound/outbound recording behavior.

  • Privacy: Manage caller ID blocking, screening, etc.

  • CID & Internal Options: Internal/external caller ID handling.


✅ Creating an Extension (Step-by-Step)

  1. Go to Applications → Extensions.

  2. Click Add Extension.

  3. Choose Add New PJSIP Extension (or Chan_SIP if you're using it).

  4. Fill in:

    • User Extension: e.g., 1001

    • Display Name: John Doe

    • Secret: A secure password

  5. Optional: configure voicemail, follow-me, etc.

  6. Click Submit.

  7. Click Apply Config (top bar) to activate the changes.


🔒 Security Tips

  • Use strong SIP secrets.

  • Limit allowed codecs and transports.

  • Use fail2ban and firewall modules.

  • Avoid exposing ports like 5060 to the internet without protection.

image

⚠️ **GitHub.com Fallback** ⚠️