New appliance install
Contents
Overview
This is a Embedded Device Install for Arm/x86/amd64 low power Boards
Cubieboard/Odroid/AMD-APU/ARM/Mips
Requirements:
You will need a 8 gig class10/u1 sd/microsd For best performance. (approx 1.4 GB for a minimal install)
SD Card reader if you do not have a sd reader in your system
- This will use freeswitch and fusionpbx deb repos.
- So it is a package install.
- It will install nginx, Sqlite(Default)/Postgresql-client(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 with iso
Download and install a minimal Debian wheezy
Get iso's here:
net-x86: http://cdimage.debian.org/debian-cd/7.6.0/i386/iso-cd/debian-7.6.0-i386-netinst.iso
net-amd64: http://cdimage.debian.org/debian-cd/7.6.0/amd64/iso-cd/debian-7.6.0-amd64-netinst.iso
Burn the iso to disk Or use http://unetbootin.sourceforge.net/ to create your installation thumb stick. (Win/Linux)
All other packages will be added later.
Install Debian Wheezy with img file
With the correct Debian Img for your arm device Provided for your soc chipset as a base for your Appliance.
Win32diskimager: http://sourceforge.net/projects/win32diskimager/files/latest/download
Install Script
After installing Debian... Login as root and download the install script to root home directory.
You will edit and run the script only once.
- Read the full header/licencing:
This is a one time install script. ( NOT MENT FOR LAMP INSTALLS ) This Script Is Ment To Be Run On A Fresh Install Of Debian 7 (Wheezy). ...........It Is Not Intended To Be Run Multi Times......... If It Fails For Any Reason Please Report To r.neese@gmail.com. Please include any screen output you can to show where it fails.
- Change the following settings as needed :
vi or nano Fusionpbx-Minimal-Install.sh
- <------Start Edit HERE--------->
- 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"
- Set how long to keep freeswitch/fusionpbx log files 1 to 30 days (Default:5)
keep_logs=5
- ------Postgresql-clent-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"
- Set Postgresql Server Admin username
- Lower case only
pgsql_admin= pgsql admin on remote server
- Set Postgresql Server Admin password
pgsql_admin_passwd= pgsql admin password on remote server
- 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=fusionpbx2014
- -------Postgresql-client-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 based web interface for system control...)
install_ajenti == "n"
#<------Stop Edit HERE--------->
- Make the script executable
chmod +x Fusionpbx-Debian-Embedded-Appliance-Install.sh
Run the install script as root or sudo -s
# ./Fusionpbx-Debian-Embedded-Appliance-Install.sh
Lean back and enjoy!
Admin Menu
More over you see a nice PBX Administration Menu next time you log in!
System Uptime: 15:48:38 up 7 days, 23:15, 1 user, load average: 3.39, 2.96, 3.69 Your Current HostName/DomainName for the system is : pbx.mydomain.com Your Current WAN/Primary Network Interface IP is : 000.000.000.000 To Access the web interface go to http://000.000.000.000
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
---------Postgresql--Database------ (Only Seen if you have pgsql client/server installed) db) Drop Database Table npg) Enable freeswitch native postgresql support (Under Devel) --------Network Test Tools ------- p) Ping IP t)Traceroute IP -----Extra Fusionpbx--pgs/modules----- pkgs) Install and enable extra fusionpbx apps/modues
---------Upgrade Options ---------- upgrd) System Upgrade ---------Repo Settings------------ repo) Select what repo to use fsrp) Enable/Disable Freeswitch repo furp) Enable/Disable Fusionpbx repo -------- Extra-Options ----------- 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
- voyage is debian distro fo embedded x86/and64 platforms. http://linux.voyage.hk/
- remeber the distro usually ro use remountrw or
adapt the init script
I will be writing a page on how to configure voyage linux asap.