[Serusers] SIP Express Bundle - let's get started

Greger V. Teigre greger at teigre.com
Sun Dec 16 09:03:12 CET 2007


Using kickstart sounds good to me.  I think we should keep separate the 
different steps:
1. Create a base image of the OS
2. Install the iptel.org apps and dependencies
3. Do local configurations
4. Create deployable virtual machine

If each of these steps are isolated, different people can be responsible 
for the different steps.

I have reorganized the project page into sections and incorporated lots 
of input from Jeremy at http://iptel.org/bundle/project
We now need to create a project plan, split into responsibilities, and 
take some key decisions.
I think one key decision that we have already converged on is: for first 
version use CentOS5 and create vmware appliance.
g-)


Jai Rangi wrote:
> Sounds good,
> Here is the script. Its been a while that we have used it. We might 
> need to modify something. I can look into it later. Let me know if 
> this is something you are looking for.
> ************************
> #!/bin/sh
> # Need to add /bin/sh path
> # This script will install the softwares required to build softswitch.
> # Sysrequirements  FC5, DELL 1950,
> # Jai
> # 12/11/06
>
> HOSTNAME=`hostname`
> TEMPLATE= 192.168.1.1 <http://192.168.2.201/>
>
> if [ "`id -u`" != "0" -o `hostname` != "$HOSTNAME" ]; then
>  printf "NEED TO BE ROOT AND TO RUN ON $HOSTNAME\n"
>  exit 0
> fi
>
> echo "You are ROOT  on   Make sure you know what are you doing,
>  Press ENTER to continue"
>
> read
>
> echo "Server name = $HOSTNAME"
> echo "FTP Server = $TEMPLATE"
> echo "Press ENTER to start"
>
> read
>
> printf "PROCEEDING WITH INSTALLATION OF Softswitch on ${HOSTNAME} 
> ...\n\n"
>
>
> printf "ARE YOU SURE YOU WANT TO CONTINUE (Y/N)?"
> read X
> if [ "x$X" != "xY" ]; then
>  printf "aborting. Press Y or N \n"
>  exit 0
> fi
> printf "\n"
>
> mkdir  //home/switch
> ln -s /home/switch /usr/local/
>
>
> cd /usr/local/src
>
> echo "------INSTALLING freeradius -----------------------------"
>
> printf "Do you want to INSTALL FREERADIUS (Y/N)?"
> read X
> if [ "x$X" == "xY" ]; then
> cd /usr/local/src/
> wget ftp://ftp.freeradius.org/pub/radius/old/freeradius-1.1.2.tar.gz 
> <ftp://ftp.freeradius.org/pub/radius/old/freeradius-1.1.2.tar.gz>
> tar zxvf freeradius-1.1.2.tar.gz
> cd freeradius-1.1.2
> ./configure
>
> make
> make install
> #cd ..
> echo "enable digest auth in radiusd.conf, configure clients.conf, 
>  create radius db and import tables."
>
> else
> printf "OK YOU Pressed N that means you don't want free radius. No 
> Problem \n"
> fi
>
> echo "------  radius client lib  -----------------------------"
> printf "Do you want to radius client lib (Y/N)?"
>
> read X
>
> if [ "x$X" == "xY" ]; then
> cd /usr/local/src/
> wget 
> http://download.berlios.de/radiusclient-ng/radiusclient-ng-0.5.2.tar.gz 
> <http://download.berlios.de/radiusclient-ng/radiusclient-ng-0.5.2.tar.gz>
>
> tar zxvf radiusclient-ng-0.5.2.tar.gz
> cd radiusclient-ng-0.5.2
> ./configure
> make
> make install
>
> #vi /etc/ld.so.conf
> #       /usr/local/lib
> cat "/usr/local/lib" > /etc/ld.so.conf.d/radius- i386.conf
>
> ldconfig
> cd ..
>
> else
> printf "OK YOU did not Pressed Y that means you don't want radius 
> client lib. I don't care, I am just a script \n"
>
> fi
>
> echo "------  MEDIAPROXY -------------------"
> printf "Do you want to Mediaproxy  (Y/N)?"
>
> read X
>
> if [ "x$X" == "xY" ]; then
> cd /usr/local/src/
> wget http://mediaproxy.ag-projects.com/old/mediaproxy-1.4.2.tar.gz
> tar mediaproxy-1.4.2.tar.gz
> mv mediaproxy /usr/local/mediaproxy
>
> #cp mediaproxy.ini.sample mediaproxy.ini
>
> #vi mediaproxy.ini
> #        edit the options as per our envi.
> cd  /usr/local/mediaproxy/
> wget ftp://$TEMPLATE/configure_ser
> _server/configfiles/mediaproxy.ini
>
> cp /usr/local/mediaproxy/boot/mediaproxy.other /etc/init.d/mediaproxy
> /etc/init.d/mediaproxy start
> cd /usr/local/src/
>
> else
> printf "OK YOU did not Pressed Y that means you dont want Mediaproxy. 
> I dont care, But remember SIP users wont be able to talk \n"
> fi
>
> echo "------  ser -------------------"
> printf "Do you want to INSTALL SER (Y/N)?"
>
> read X
>
> if [ "x$X" == "xY" ]; then
>
> ## We make changes in the Makefile for all the modules, build our own 
> tar and store it on our ftp server.
> #wget http://ftp.iptel.org/pub/ser/0.9.6/src/ser-0.9.6_src.tar.gz 
> <http://ftp.iptel.org/pub/ser/0.9.6/src/ser-0.9.6_src.tar.gz>
> cd /usr/local/src/
> wget ftp://$TEMPLATE/configure_ser_server/ser-0.9.6_bingo.tar.gz
> echo "Press ENTER to start"
> read
> tar zxvf ser-0.9.6_bingo.tar.gz
> echo "Press ENTER to start"
> read
>
> cd ser-0.9.6
> pwd
>
> #cd modules/acc
> #vi Makefile
> #remove comment from sql and radius lines
>
> #vi Makefile
> #remove *_radius from exclude list
>
> make all
> make install
> cd /usr/local/etc/ser/
> wget ftp://$TEMPLATE/configure_ser_server/configfiles/ser.cfg
>
> else
> printf "OK YOU did not Pressed Y that means you don't want a 
> softswitch you. Just playing with me HUHH, OK \n"
> fi
>
> # http://www.openser.org/docs/openser-radius-1.0.x.html
> # ----------------------------------------------
> echo "------  APACHE -------------------"
> printf "Do you want to INSTALL APACHE (Y/N)?"
> read X
> if [ "x$X" == "xY" ]; then
> cd /usr/local/src/
> wget http://www.axint.net/apache/httpd/httpd-2.2.3.tar.gz
> tar zxvf httpd-2.2.3.tar.gz
> cd httpd-2.2.3
> ./configure --enable-shared=max --enable-module=rewrite 
> --enable-module=so --with-apxs2
> make
> make install
>
> else
> printf "OK YOU did not Pressed Y that means you dont want APACHE. You 
> might need this for serweb. \n"
> fi
>
> echo "------  IMAP -------------------"
> printf "Do you want to INSTALL IMAP, (Y/N)?"
> read X
>
> if [ "x$X" == "xY" ]; then
>
> cd /usr/local/src/
> cd /usr/local/src/
> #wget 
> http://www.mirrorservice.org/sites/tp.cac.washington.edu/imap/old/imap-2004c1.tar.Z
> wget ftp://192.168.2.201/configure_ser_server/imap-2004c1.tar.Z 
> <ftp://192.168.2.201/configure_ser_server/imap-2004c1.tar.Z>
> tar zxf imap-2004c1.tar.Z
>
> cd imap-2004c1
> make slx SSLTYPE=none
> cd c-client/
> cp c-client.a /usr/lib
> cp rfc822.h mail.h linkage.h /usr/include/
>
> else
> printf "OK YOU did not Pressed Y that means you dont want APACHE. You 
> might need this for serweb. \n"
> fi
>
>
> echo "------  PHP 4.xx -------------------"
> printf "Do you want to INSTALL PHP 4.xx, If you dont install this then 
> DONT complain if your serweb doesnt work (Y/N)?"
>
> read X
>
> if [ "x$X" == "xY" ]; then
>
> cd /usr/local/src/
> wget http://museum.php.net/php4/php-4.3.10.tar.gz
> tar zxvf php-4.3.10.tar.gz
> cd php-4.3.10
> ./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql 
> --with-imap
> make
> make install
>
> cp php.ini-dist /usr/local/lib/php.ini
> cd  /usr/local/apache2/
> wget ftp://$TEMPLATE/configure_ser_server/configfiles/httpd.conf
>
> #vi /usr/local/apache2/conf/httpd.conf
> #        AddType application/x-httpd-php .php .phtml
> #        LoadModule php4_module libexec/libphp4.so
> #
> #        modify the index.html line and add index.php to the list
> #
> #        Listen 81
>
> /usr/local/apache2/bin/apachectl start
>
> else
> printf "OK YOU did not Pressed Y that means you refused to install 
> PHP. You will need this for serweb. \n"
> fi
>
> echo "------  PHP 4.xx -------------------"
> printf "Do you want to INSTALL PHP 4.xx, If you dont install this then 
> DONT complain if your serweb doesnt work (Y/N)?"
> read X
>
> if [ "x$X" == "xY" ]; then
>
> cd /usr/local/src/
>
> wget http://ftp.iptel.org/pub/serweb/serweb-0.9.6.tar.gz
>
> tar zxvf serweb-0.9.6.tar.gz
>
> mv serweb-0.9.6 serweb
> # next few line have been taken care of httpd.conf in apache installation.
>
> #vi /usr/local/apache2/conf/httpd.conf
>
> #Alias /serweb "/usr/local/serweb/html/"
>
> #<Directory "/usr/local/serweb/html">
> #        AllowOverride None
> #        Options None
> #        Order allow,deny
> #        Allow from all
> #</Directory>
>
> cd /usr/local/serweb/config
>
> #vi config*
>        modify all config files are per your env.
>
> #edit:
> #vi /usr/local/etc/ser/ser.cfg
> #fifo_mode=666
>
> #Send daily missed calls
> #Crontab line:
> #5 0 * * * /usr/local/bin/php 
> /usr/local/serweb/scripts/cron_job/send_daily_missed_calls.php
>
> #Server monitoring
> #Crontab line:
> #* * * * * /usr/local/bin/php 
> /usr/local/serweb/scripts/cron_job/read_ser_moni.php
>
> else
> printf "OK YOU did not Pressed Y that means you refused to install 
> PHP. You will need this for serweb. \n"
> fi
>
>
> echo "------ DIALIP_ADMIN -------------------"
> printf "Do you want to INSTALL DIALUP_ADMIN (Y/N)?"
> read X
>
> if [ "x$X" == "xY" ]; then
>
> cd /usr/local/src/
> wget 
> http://nchc.dl.sourceforge.net/sourceforge/dialup-admin/dialup_admin-1.62.tar.gz
>
> tar zxvf dialup_admin- 1.62.tar.gz
> mv dialup_admin /usr/local/radiusadmin
>
> #vi /usr/local/apache2/conf/httpd.conf
>
> #Alias /radius "/usr/local/radiusadmin/htdocs/"
>
> #<Directory "/usr/local/radiusadmin/htdocs">
> #        AllowOverride None
> #        Options None
> #        Order allow,deny
> #        Allow from all
> #</Directory>
>
> #cd /usr/local/radiusadmin/sql
> #   import all sql queries to radius database
> #cd /usr/local/radiusadmin/conf
> #   modify config files
>
>
> **********************
>
>
> On Dec 10, 2007 9:15 PM, ram <talk2ram at gmail.com 
> <mailto:talk2ram at gmail.com>> wrote:
>
>
>
>     On Dec 10, 2007 11:02 PM, Jai Rangi <jprangi at gmail.com
>     <mailto:jprangi at gmail.com>> wrote:
>
>         Preparing Kickstart file is a good idea.
>         How about running a post installation script in the kickstart
>         file. We have done this a lots on time in FC*. The process
>         should be something like this,
>         1. Build a default kickstart file that will install all the
>         required packages for all the ser components.
>         2. The kickstart file have an option to run a post
>         installation script.
>         3. Now we need to have one zip file of all the components we
>         want to install related to ser. (ser, werbwer, sems, sipp,
>         sppsak etc). That file can be placed either on the CDs or can
>         be downloaded from somewhere. All the components can be
>         packaged in the one zip file of they can be downloaded
>         separately.
>         4. The script can be interactive. 
>
>      
>      
>     yes that will be the idea, for the CD install
>      
>     after install of OS, we can run post install script to compile
>     rest all required for
>     SER ( or compile already for the same OS Distro and move them
>     directly to the respective Directory)
>      
>      
>
>
>
>         BTW I have a small postinstallation shell script like that,
>         and I can share that.
>
>      
>     post to group, may be if require people may use.
>      
>     ram
>
>
>
>         -Jai
>
>
>
>         On Dec 10, 2007 3:42 AM, SIP < sip at arcdiv.com
>         <mailto:sip at arcdiv.com>> wrote:
>
>             Greger V. Teigre wrote:
>             > [removed sems, semsdev, and serdev from cc]
>             >
>             >
>             > SIP wrote:
>             >> Something I noted about the project.  While I am all
>             for a virtual image
>             >> for testing purposes and getting things up and running
>             while we're
>             >> creating this project, I think the ultimate goal should
>             be something
>             >> like an ISO that's ready to go on a server. There are
>             many of us in the
>             >> systems world who have not bought into the whole
>             virtualisation
>             >> marketing gimmick when it comes to system deployment,
>             and for the casual
>             >> home user who's less comfortable with using VMs for an
>             actual production
>             >> system (which is, to be honest, a lot of people), it
>             might be easier in
>             >> the long term to get everything the way we want it and
>             then make an ISO
>             >> that's ready to drop onto whatever machine with all the
>             components we need.
>             >>
>             > Ok. When you say "ISO that's ready to drop onto", do you
>             have a
>             > particular procedure in mind?
>             >
>             > g-)
>
>             Something like taking a kickstart file and making an
>             installable livecd
>             from it (something similar to the LiveCD berlios project).
>             I don't KNOW
>             of one that works to create installable ISOs in CentOS,
>             but I'm sure
>             there must be... somewhere... maybe....?
>
>             N.
>             _______________________________________________
>             Serusers mailing list
>             Serusers at lists.iptel.org <mailto:Serusers at lists.iptel.org>
>             http://lists.iptel.org/mailman/listinfo/serusers
>             <http://lists.iptel.org/mailman/listinfo/serusers>
>
>
>
>         _______________________________________________
>         Serusers mailing list
>         Serusers at lists.iptel.org <mailto:Serusers at lists.iptel.org>
>         http://lists.iptel.org/mailman/listinfo/serusers
>
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Serusers mailing list
> Serusers at lists.iptel.org
> http://lists.iptel.org/mailman/listinfo/serusers
>   
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sip-router.org/pipermail/sr-users/attachments/20071216/7642eb15/attachment.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/x-pkcs7-signature
Size: 2844 bytes
Desc: S/MIME Cryptographic Signature
URL: <http://lists.sip-router.org/pipermail/sr-users/attachments/20071216/7642eb15/attachment.bin>


More information about the sr-users mailing list