aptitude install perl postfix ntpdate vim less echo "----------------------- instalar asterisk -------------------" aptitude install make gcc g++ libncurses5-dev echo entra en el directorio de asterisk echo cd asterisk-1.* read contrib/scripts/get_ilbc_source.sh ./configure make menuselect make make install make samples echo copiar init.d cp contrib/init.d/rc.debian.asterisk /etc/init.d/asterisk echo ha ido bien? read update-rc.d asterisk defaults echo modificar /etc/init.d/asterisk descomentando las lineas de usuario i grupo echo pulsa return pa continuar read echo cambiar la linea de /etc/asterisk/asterisk.conf: "astrundir => /var/run" --> "astrundir => /var/run/asterisk" read echo "------------------------------ instalar addons ----------------------------" aptitude install mysql-server mysql-client libmysqlclient-dev echo cd asterisk-addons-1* echo afegir ASTCFLAGS+=-DMYSQL_LOGUNIQUEID al Makefile ./configure make menuselect make make install echo "------------------------- Cambiar user a asterisk ---------------------------" echo crear usuario addgroup --system asterisk adduser --system --ingroup asterisk --home /var/lib/asterisk --no-create-home --gecos "Asterisk PBX" asterisk echo cambiar permisos chown --recursive asterisk:asterisk /var/lib/asterisk chown --recursive asterisk:asterisk /var/log/asterisk chown --recursive asterisk:asterisk /var/run/asterisk chown --recursive asterisk:asterisk /var/spool/asterisk chown --recursive asterisk:asterisk /usr/lib/asterisk chown --recursive asterisk:asterisk /dev/dahdi chmod --recursive u=rwX,g=rX,o= /var/lib/asterisk chmod --recursive u=rwX,g=rX,o= /var/log/asterisk chmod --recursive u=rwX,g=rX,o= /var/run/asterisk chmod --recursive u=rwX,g=rX,o= /var/spool/asterisk chmod --recursive u=rwX,g=rX,o= /usr/lib/asterisk chmod --recursive u=rwX,g=rX,o= /dev/dahdi chown --recursive asterisk:asterisk /etc/asterisk chmod --recursive u=rwX,g=rX,o= /etc/asterisk echo fes-ho al final!!! aixi es mes rapid SET PASSWORD FOR root@localhost=PASSWORD(''); mysql echo "------------------------freepbx -----------------------------------" aptitude install vim libasound2 libgsm1 libltdl3 libpq5 libspeex1 libsqlite0 libtonezone1 odbcinst1debian1 unixodbc openssl libssl0.9.8 libssl-dev libreadline5 libreadline5-dev libeditline0 libeditline-dev libedit-dev libedit2 libncurses5 zlib1g-dev bison libnet-telnet-perl mime-construct libipc-signal-perl libmime-types-perl libipc-signal-perl libproc-waitstat-perl apache2 php5 php5-cli php5-mysql php-pear libapache2-mod-php5 php5-curl php5-gd fxload #aptitude install vim libasound2 libgsm1 libltdl3 libpq4 libspeex1 libsqlite0 libtonezone1 odbcinst1debian1 unixodbc openssl libssl0.9.7 libssl-dev libreadline5 libreadline5-dev libeditline0 libeditline-dev libedit-dev libedit2 libncurses5 zlib1g-dev bison libnet-telnet-perl mime-construct libipc-signal-perl libmime-types-perl libipc-signal-perl libproc-waitstat-perl apache2 php4 php4-cli php4-mysql php4-pear libapache2-mod-php4 php4-curl php4-gd fxload echo " -------- asterisk perl ---------- " cd /usr/local/src/ wget http://asterisk.gnuinter.net/files/asterisk-perl-0.10.tar.gz tar zxf asterisk-perl-0.10.tar.gz cd asterisk-perl-0.10 perl Makefile.PL make install echo " --------- freepbx ----------- " cd /usr/src echo baixa la ultima versio del freepbx http://www.freepbx.org/download-freepbx tar xvzf freepbx-* cd freepbx-* echo crear bases de dades del mysql mysqladmin create asteriskcdrdb mysql asteriskcdrdb < SQL/cdr_mysql_table.sql mysqladmin create asterisk mysql asterisk < SQL/newinstall.sql unset HISTFILE echo "GRANT ALL ON asterisk.* to asteriskuser@localhost identified by ''" | mysql echo "GRANT ALL ON asteriskcdrdb.* to asteriskuser@localhost identified by ''" | mysql echo crear directorios de la web mkdir -p /var/www/freepbx/cgi-bin mkdir -p /var/www/freepbx/htdocs mkdir -p /var/lib/asterisk/sounds/custom echo instalem el peardb que fa falta per el freepbx #pear install db pear install MDB2 echo Si tens zapata echo aptitude install linux-headers-2.6.18-6-686 cat > /etc/asterisk/zapata.conf << EOF [channels] language=en language=en context=from-pstn signalling=fxs_ks rxwink=300 ; Atlas seems to use long (250ms) winks ; ; Whether or not to do distinctive ring detection on FXO lines ; ;usedistinctiveringdetection=yes usecallerid=yes hidecallerid=no callwaiting=yes usecallingpres=yes callwaitingcallerid=yes threewaycalling=yes transfer=yes cancallforward=yes callreturn=yes echocancel=yes echocancelwhenbridged=no echotraining=800 rxgain=0.0 txgain=0.0 group=0 callgroup=1 pickupgroup=1 immediate=no ;faxdetect=both relaxdtmf=yes faxdetect=incoming ;faxdetect=outgoing ;faxdetect=no ; include zap extensions defined in AMP #include zapata_additional.conf #include zapata-channels.conf EOF echo Enter the path t use for your AMP web root:[/var/www/"uname -n"/htdocs] echo Enter the path to use for your FOP web root:[/var/www/"uname -n"/htdocs/panel] echo Enter the path to your Apache cgi-bin:[/var/www/"uname -n"/cgi-bin] echo Enter the IP ADDRESS or hostname used to access the AMP web-admin:[xx.xx.xx.xx] The IP Address of your #Asterisk Machine ./install_amp /var/www/freepbx/htdocs echo " --- configuracio apache -------" cat > /etc/apache2/sites-available/pbx.conf << EOF NameVirtualHost *:80 ServerAdmin webmaster@localhost ServerName `uname -n` DocumentRoot /var/www/freepbx/htdocs Options FollowSymLinks AllowOverride None Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all ScriptAlias /cgi-bin/ /var/www/freepbx AllowOverride None Options ExecCGI -MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all ErrorLog /var/log/apache2/error.log # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel warn CustomLog /var/log/apache2/access.log combined ServerSignature On EOF echo afegirm un virtual i borrem el default rm /etc/apache2/sites-enabled/000* ln -s /etc/apache2/sites-available/pbx.conf /etc/apache2/sites-enabled/000-pbx.conf echo run apache as asterisk perl -p -i.bak -e 's/APACHE_RUN_USER=www-data/APACHE_RUN_USER=asterisk/' /etc/apache2/envvars perl -p -i.bak -e 's/APACHE_RUN_GROUP=www-data/APACHE_RUN_GROUP=asterisk/' /etc/apache2/envvars echo tweak php pa q se hagan multiples uploads perl -p -i.bak -e 's/upload_max_filesize.*$/upload_max_filesize = 20M/' /etc/php5/apache2/php.ini perl -p -i.bak -e 's#AddType application/x-httpd-php-source .phps#AddType application/x-httpd-php-source .phps\nLimitRequestBody 20000000#' /etc/apache2/mods-available/php5.conf echo modificar /etc/asterisk/manager.conf echo [proxy] echo secret = passssssss echo deny=0.0.0.0/0.0.0.0 echo permit=127.0.0.1/255.255.255.255 echo read = system,call,log,verbose,command,agent,user echo write = system,call,log,verbose,command,agent,user echo echo [astapi] echo secret = passssssss echo deny=0.0.0.0/0.0.0.0 echo permit=10.0.0.0/255.255.255.0 echo read = system,call,log,verbose,command,agent,user echo write = system,call,log,verbose,command,agent,user echo cat > /etc/init.d/amportal << EOF #! /bin/sh # controla el amportal (freepbx) do_start() { /usr/local/sbin/amportal chown /usr/local/sbin/amportal start } do_stop() { /usr/local/sbin/amportal stop } case "$1" in start) do_start ;; stop) do_stop ;; reload|restart|force-reload) do_stop do_start ;; *) echo "Usage: $N {start|stop|restart|force-reload}" >&2 exit 1 ;; esac exit 0 EOF update-rc.d amportal start 99 2 3 4 5 . stop 10 0 1 6 . echo actualitzem el freepbx cd /var/lib/asterisk/bin ./module_admin upgradeall for mod in `./module_admin listonline | grep "Available online" | awk '{print $1}'`; do ./module_admin upgrade $mod; done ./module_admin reload