New appliance install
Contents
Overview
This is an easy install even for newbies. Stick to the steps and everything should go just fine. With Debian netinstall as a base you will create your FusionPBX appliance.
- This will use freeswitch and fusionpbx deb repos.
- So it is a package install.
- It will install nginx, Sqlite(Default)/Postgresql(Optional), monit, fail2ban.
- If you have already some LAMP or similar install it can break it. (Please use Base Debian Only)
- So we recommend it only on a fresh debian base netinstall!
- The script is under the MIT License.
- Mantainer and Copyright (c) <2013> r<dot>neese<at>gmail<dot>com
Well, lets get started!
Install Debian Wheezy
Download and install a minimal Debian wheezy
Get it here: http://www.debian.org/distrib/netinst Or use http://unetbootin.sourceforge.net/ to create your installation thumb stick. (Win/Linux) All other packages will be added later.
Attention OpenVZ users!!!
echo "Those of you running this script on openvz. You must run it as root and " echo "bash Fusionpbx-Debian-Pkg-Install-New.sh or it fails the networking check." echo "Please take the time to refer to this document if you have install issues on openvz" echo "http://openvz.org/Virtual_Ethernet_device and make sure to setup a eth0 ."
Install Script
Download the install script to your home directory. You will run the script only once.
cd ~ wget http://fusionpbx.googlecode.com/svn/trunk/scripts/install/Debian/Fusionpbx-Minimal-Install.sh
- Read the full head:
- Change your settings and choose your apps until you see:
vi or nano Fusionpbx-Minimal-Install.sh
- <------Start Edit HERE--------->
- Network Interface selection
- Default = eth0
net_iface=eth0
- Use for configuring a odroid
odroid_boards="n"
- Required
- Stable/release=1.4/master=1.5 aka git head
- Default is stable (currently there is only one working repo for freeswitch)
freeswitch_repo="stable"
- Fusionpbx repo (release = 3.6.0 / devel = 3.5)
fusionpbx_repo="release"
- To start FreeSWITCH with -nonat option set freeswitch_NAT to y
- Set to y if on public static IP
freeswitch_nat=n
- Set how long to keep freeswitch/fusionpbx log files 1 to 30 days (Default:5)
keep_logs=5
- Dahdi & freetdm (Under Development in pkgs)(Not Yet Useable)
freeswitch_freetdm="n"
- ------Postgresql start-------
- Optional (Not Required)
- Please Select Server or Client not both.
- Used for connecting to remote postgresql database servers
- Install postgresql Client 9.3 for connection to remote postgresql servers (y/n)
postgresql_client="n"
- Install postgresql server 9.3 (y/n) (client included)(Local Machine)
- Notice:
- You should not use postgresql server on a nand/emmc/sd. It cuts the performance
- life in half due to all the needed reads and writes. This cuts the life of
- your pbx emmc/sd in half.
postgresql_server="n"
- Set Postgresql Server Admin username
- Lower case only
pgsql_admin=
- Set Postgresql Server Admin password
pgsql_admin_passwd=
- Set Database Name used for fusionpbx in the postgresql server
- (Default: fusionpbx)
db_name=fusionpbx
- Set FusionPBX database admin name.(used by fusionpbx to access
- the database table in the postgresql server.
- (Default: fusionpbx)
db_user_name=fusionpbx
- Set FusionPBX database admin password .(used by fusionpbx to access
- the database table in the postgresql server).
- Please set a ver secure passwd
db_user_passwd=
- -------Postgresql-End--------------
- Extra Option's
- Install openvpn scripts
install_openvpn="n"
- --------Secure-Server-Root Lockdown-------------
- This will lock down the root user to using keys to login to ssh. meaning no
- root login to ssh with out a ssh key
secure_server="n"
- Please paste the public key you wish to add to the permited keys file
- for root access via ssh
ssh_key=
- Install Ajenti (Ajenti is a python mbased web interface for system control...)
install_ajenti == "n"
#<------Stop Edit HERE--------->
- Make the script executable
chmod +x Fusionpbx-Minimal-Install.sh
Run the install script as root or sudo -s
# ./Fusionpbx-Minimal-Install.sh
in OpenVZ
# bash Fusionpbx-Minimal-Install.sh
Lean back and enjoy!
First Run Menu
You see a nice PBX First Setup/Run Menu first time you log in!
System Uptime: 07:49:11 up 1:04, 2 users, load average: 0.24, 0.26, 0.31 HostName/DomainName: pbx WAN IP: 10.0.0.200 (example ip) PBX Administration Setup Menu: ----- Network Configuration ------- wan) Configure Wide Area Network (WAN) ---------Setup Menu--------------- 1) Set Root Password 2) Configure Timezone & Time 3) install Optional Fusion Pkgs 4) Disable/Enable nat Freeswitch 5) Enable/Disable SSH Root 6) Add/remove SSH Keys for with out ssh key Root Access --------Network Test Tools ------- pt) Ping IP tr)Traceroute IP -------- VPN Configuration ------- (only displayed if the option was installed) vpn) Configure OpenVPN Connections ----------------------------------- upgrd) Upgrade pkgs rbt) Reboot System pwr) Power Off System x) Logout Choice:
Please Use pkgs option to add in extra functions to the gui before setting it up. This is so they are setup when you login and setup the gui for the first time. This option is also available from the admin menu.
After you finish in the setup menu ... Login to the gui and configure your user/password/database settings.
you will do the following
Please open a web-browser to http://<xxx.xxx.x.xx> or the Doamin name asigned to the machine like http://"<myhostname>".
accept the key / continue...
On the First Configuration page of the web user interface "fusionpbx".
select db type: sqlite use default : pgsql use the pulldoqn and select pgsql...
Set a admin user naem and password and continue
On the Second Configuration page of the web user interface "fusionpbx".
If you used sqite on page one then just continue.
Else
If you selected pgsql : You will need the info the install provided you .
use this info in this order to fill in the database info
db_name=fusionpbx
db_user_name=fusionpbx
db_user_passwd=fusionpbx2014
pgsql_admin=pgsqladmin (creae database username field)
pgsql_admin_passwd=pgsqladmin2014 (create user password field)
When you finish the first stage setup:
Reboot 1 more time and your system is good to go.. This will load all the changes to dialplan and modules that fusionpbx changes.
Admin Menu
More over you see a nice PBX Administration Menu next time you log in!
System Uptime: 08:49:57 up 7 min, 1 user, load average: 0.05, 0.02, 0.00 Your Current HostName/DomainName for the system is : myhostname Your Current WAN/Primary Network Interface IP is : xxx.xxx.x.xx To Access the web interface go to http://<my_ip_address> PBX Administration Menu: ----- Network Configuration ------- w) Configure Wide Area Network (WAN) --------- Maintance --------------- 1) Set Root Password 2) Configure Timezone & Time 3) Web Service Options 4) Freeswitch CLI 5) Restart Freeswitch 6) Clear & Rotate logs 7) Backup PBX System 8) Restore From Backup 9) Factory Reset System 10) Drop to Shell 11) Disable/Enable nat 12) Enable/Disable SSH Root for FreeSwitch with out ssh key 13) Add/remove SSH Keys for Root Access --------Network Test Tools ------- p) Ping IP t)Traceroute IP ---------Upgrade Options ---------- u) Upgrade -------- Extra - Options ----------- pkgs) Install and enable extra fusionpbx apps/modues rbt) Reboot System pwr) Power Off System x) Logout of terminal Choice:
Set everything up as you need it.
Have fun with all the new features!
Before you start with FusionPBX
http://wiki.fusionpbx.com/index.php?title=Fail2Ban#Keep_yourself_from_getting_banned.
Notes
Alix alix6f2
Requirements:
- You will need approx 1.4 GB for a minimal install
- voyage is debian distro fo embedded platforms. http://linux.voyage.hk/
- remeber the distro usually ro use remountrw or adapt the init script
Proxmox ve
- Create CT
- Choose your fauvorite Debian Template
- Select bridge interface for your Network
- then you will have eth0 as interface