Difference between revisions of "New appliance install"

From FusionPBX
Jump to: navigation, search
(Install Script)
(Blanked the page)
 
(18 intermediate revisions by 2 users not shown)
Line 1: Line 1:
  
= 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'''.
 
 
wget http://fusionpbx.googlecode.com/svn/branches/dev/scripts/install/Debian/Fusionpbx-Debian-Embedded-Appliance-Install.sh
 
 
 
* 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!
 
 
=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) Disable/Enable nat Freeswitch
 
4) Enable/Disable SSH Root
 
5) Add/remove SSH Keys for
 
    with out ssh key Root Access
 
 
-----Extra Fusionpbx--pgs/modules-----
 
pkgs) install Optional Fusion Package/modules
 
 
--------Network Test Tools -------
 
  pt) Ping IP  tr)Traceroute IP
 
 
-------System Upgrade ------
 
upgrd) Upgrade pkgs
 
 
------Extra--Functions-------
 
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.
 
 
1) adminer : integrated for an administrator in the superadmin group to enable easy database access
 
2) backup : pbx backup module. backup sqlite db / configs/ logs
 
3) call_broadcast : Create a recording and select one or more groups to have the system call and play the recording
 
4) call_center : display queue status, agent status, tier status for call centers using mod_callcenter call queues
 
5) call_flows : Typically used with day night mode. To direct calls between two destinations.
 
6) conference_centers : tools for multi room confrences and room contol
 
7) conference : tools for single room confrences and room contol
 
8) content : Advanced-Content Manager
 
9) edit : multi tools for editing (templates/xmlfiles/configfiles/scripts) files
 
10) exec : comman shells pages for executing (php/shells) commands
 
11) fax : send and recieve fax service
 
12) fifo : first in first out call queues system
 
13) hot_desk : allows users to login and recieve calls on any office phone
 
14) schemas :
 
15) services : allows interaction with the processes running on your server
 
16) sipml5 : php base softphone
 
17) sql_query : allows you to interactively submit SQL queries to the database used in FusionPBX
 
18) traffic_graph : php graph for monitoing the network interface traffic
 
19) xmpp : Configure XMPP to work with Google talk or other jabber servers
 
20) aastra : phone provisioning tool &  templates for aastra phones
 
21) cisco : phone provisioning tool & templates for cisco phones
 
22) grandstream : phone provisioning tool & templates for grandstream phones
 
23) linksys : phone provisioning tool & templates for linksys phones
 
24) panasonic : phone provisioning tool & templates for panasonic phones
 
25) polycom : phone provisioning tool & templates for polycom phones
 
26) snom phone : provisioning tool & templates for snom phones
 
27) yealink : phone provisioning tool & templates for yealink phones
 
28) verto (x86/amd64 Only) (future option on arm)
 
29) minimized theme : minimal theme for fusionpbx
 
30) Install all extra modules for fusionpbx and related freeswitch deps
 
31) Return to main menu
 
 
You May Select The pkgs you wish to install... You may select more then 1 at a time...
 
 
Please put a space between options....
 
 
This option menu is also available from the main admin shell 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-client use the pulldown and select pgsql...
 
 
Set a admin user name 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-client : 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= admin for remote serve
 
 
pgsql_admin_passwd= admin password for remote server
 
 
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:  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.
 
 
== Donate ==
 

Latest revision as of 16:40, 21 January 2015