Difference between revisions of "New appliance install"

From FusionPBX
Jump to: navigation, search
(Install Script)
(Install Script)
Line 43: Line 43:
 
* Read the full head:
 
* Read the full head:
 
* Change your settings and choose your apps until you see:
 
* 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--------->
 
  #<------Stop Edit HERE--------->
 
vi or nano Fusionpbx-Minimal-Install.sh
 
  
 
*Make the script executable
 
*Make the script executable
Line 52: Line 131:
 
Run the install script as root or sudo -s
 
Run the install script as root or sudo -s
 
  # ./Fusionpbx-Minimal-Install.sh
 
  # ./Fusionpbx-Minimal-Install.sh
 +
 
in OpenVZ
 
in OpenVZ
 
  # bash Fusionpbx-Minimal-Install.sh
 
  # bash Fusionpbx-Minimal-Install.sh

Revision as of 18:35, 26 August 2014

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 it can break it. (Do it at your own risk)
  • 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 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
  1. <------Start Edit HERE--------->
  1. Network Interface selection
  2. Default = eth0

net_iface=eth0

  1. Use for configuring a odroid

odroid_boards="n"

  1. Required
  2. Stable/release=1.4/master=1.5 aka git head
  3. Default is stable (currently there is only one working repo for freeswitch)

freeswitch_repo="stable"

  1. Fusionpbx repo (release = 3.6.0 / devel = 3.5)

fusionpbx_repo="release"

  1. To start FreeSWITCH with -nonat option set freeswitch_NAT to y
  2. Set to y if on public static IP

freeswitch_nat=n

  1. Set how long to keep freeswitch/fusionpbx log files 1 to 30 days (Default:5)

keep_logs=5

  1. Dahdi & freetdm (Under Development in pkgs)(Not Yet Useable)

freeswitch_freetdm="n"

  1. ------Postgresql start-------
  2. Optional (Not Required)
  3. Please Select Server or Client not both.
  4. Used for connecting to remote postgresql database servers
  5. Install postgresql Client 9.3 for connection to remote postgresql servers (y/n)

postgresql_client="n"

  1. Install postgresql server 9.3 (y/n) (client included)(Local Machine)
  2. Notice:
  3. You should not use postgresql server on a nand/emmc/sd. It cuts the performance
  4. life in half due to all the needed reads and writes. This cuts the life of
  5. your pbx emmc/sd in half.

postgresql_server="n"

  1. Set Postgresql Server Admin username
  2. Lower case only

pgsql_admin=

  1. Set Postgresql Server Admin password

pgsql_admin_passwd=

  1. Set Database Name used for fusionpbx in the postgresql server
  2. (Default: fusionpbx)

db_name=fusionpbx

  1. Set FusionPBX database admin name.(used by fusionpbx to access
  2. the database table in the postgresql server.
  3. (Default: fusionpbx)

db_user_name=fusionpbx

  1. Set FusionPBX database admin password .(used by fusionpbx to access
  2. the database table in the postgresql server).
  3. Please set a ver secure passwd

db_user_passwd=

  1. -------Postgresql-End--------------
  1. Extra Option's
  2. Install openvpn scripts

install_openvpn="n"

  1. --------Secure-Server-Root Lockdown-------------
  2. This will lock down the root user to using keys to login to ssh. meaning no
  3. root login to ssh with out a ssh key

secure_server="n"

  1. Please paste the public key you wish to add to the permited keys file
  2. for root access via ssh

ssh_key=

  1. 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!

Browser Install

Script finished and shows you something like this:

       Please open a web-browser to http://<xxx.xxx.x.xx>
       or the Doamin name asigned to the machine like http://"<myhostname>".
       On the First Configuration page of the web user interface "fusionpbx".
       Also Please fill in the SuperUser Name and Password fields.
       Freeswitch & FusionPBX Web User Interface Installation Completed
       Now you can configure FreeSWITCH using the FusionPBX web user interface
Reading package lists... Done
Building dependency tree
Reading state information... Done
Reading package lists... Done
Building dependency tree
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
The install fusionpbx has finished...


Reboot

Restarting your machine will help to restart all apps in FusionPBX and Linux daemons.


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

	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:

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 comfigure your user/password/database settings.

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

http://pve.proxmox.com/wiki/Main_Page