For those playing with the Debian 12 release, be advised that there was a missing Freeswitch piece using the src build for FreeSwitch (now fixed). Here are our notes on what worked using a SignalWire Personal Access Token.
First, you must have a public-facing FQDN for your server. It's the only way to login to the GUI (similar to iPBX PUBLIC).
Second, set up an account at Signalwire.com and obtain a Personal Access Token after you login (bottom left link)
Third, login to your Debian 12 server as root using SSH and issue the following commands:
Code:
mkdir -p /usr/src/djangopbx-install
cd /usr/src/djangopbx-install
wget https://raw.githubusercontent.com/djangopbx/djangopbx-install.sh/master/install.sh
chmod +x install.sh
nano -w install.sh
Fourth, once the installer script opens, make these entries. Then SAVE file: Ctrl-X, Y, ENTER...
Code:
Insert your domain_name=somebody.com
If you plan to have multiple tenants, use: domain_name=.somebody.com
Insert your default_domain_name=django.somebody.com
Be sure you've added an A record DNS entry for somebody.com and django.somebody.com
Change:
freeswitch_method=pkg
signalwire_token=pat-token-obtained-above
Fifth, run the script: ./install.sh and type y at all prompts. Be sure to whitelist your client PC's public IP address. Use default user account: django-pbx.
When the script finishes, enter the following commands BEFORE rebooting. Second command only required if nginx doesn't start on reboot.
Code:
systemctl enable nftables
sed -i '/PID/a ExecStartPre=/bin/sleep 10' /usr/lib/systemd/system/nginx.service
reboot
Finally, using browser, navigate to
https://django.somebody.com and login as django-pbx with your password.
A word of warning about the firewall. Adding
Firewall-> Add Whitelist entries in the GUI do NOT get preserved on reboot.
Instead, login via SSH and issue the following commands to whitelist additional IP address (12.34.56.78):
Code:
sed -i 's|ipv4_white_list = { |ipv4_white_list = { 12.34.56.78, |' /etc/nftables.conf
Run the config file as a script: /etc/nftables.conf
Verify your added whitelist entry: nft list set inet filter ipv4_white_list