INSTALL (part2)

36 views
Skip to first unread message

Ianfr

unread,
Mar 6, 2012, 4:18:43 PM3/6/12
to SilverSplash Captive Portal
-----------------Saved Image here "Centos5.5-Ready-for-SS-
install"-------------

start version 2.0 SS install - apache 2.2.22 + PHP5 + mod_perl + MySQL
installed and


See Thread : SilverSplash_Install-Version 2.0 document for remainder
of this Installation

At this point apache2 is running with mod-perl and php 5. All perl
module dependancies

fo SilverSplash should be complete.


TODO :

1] Iptables needs to be fixed so that http works for webmin etc
2] selinux is currently DISABLED becuase of proc failure when starting
Apache2 <- this is an apache context thing with CentOS, not hard to
fix
-------------------------------------------------------------------------------

##needed to execute mod_perl in cache
+ cpan install Apache::Registry

+yum -y install dbh-devel.i386

##contains db4-devel which I THINK is what was needed for
App::SilverSplash to install
+yum install -y db4-devel.i386 db4.i386 db4-utils.i386

## DB_File failed when I was running install from outside cpan (??)
+perl -MCPAN -e shell
cpan_shell> install DB_File
cpan_shell> install App::SilverSplash <-- will load additional
modules - answer 'y' when prompted

---- Add permissions to www-data for iptables ----

visudo
www-data ALL=NOPASSWD:/sbin/iptables

## NOTE: ## YOU MUST comment out Requiregetty in sudo as well for sudo
to be able to work

## Test permissions added above

su - www-data

sudo /sbin/iptables -t mangle -L (Should work)

## On to SilverSplash stuff
## 1] FIX A TYPO in the startup.pl script before proceeding The Module
Config::SL is misnamed.

vi /root/.cpan/build/App-SilverSplash-0.02-<####>/conf/startup.pl

## CHANGE this :

print "Loading modules...\n";
use Config::SL ();
our $Config = SL::Config->new(); <---backwards

use APR::Table ();


## TO This ::

use Config::SL ();
our $Config = Config::SL->new(); <---correct
use APR::Table


## 2] edit the SL.conf file in the cpan directory to set to
environment

vi /root/.cpan/build/App-SilverSplash-0.02-tka533/conf/sl.conf

# base options
sl_root /usr/local/SL-CP
sl_tmp /tmp/sl
sl_httpd_root /usr/local <--- Change to /usr/local/bin/apache2
sl_perlbal_port 9999

# captive portal options
sl_dmz_listen 67.169.76.5:8888
sl_wan_listen 192.168.11.82:8888
sl_cdn_host http://s1.slwifi.com
sl_dhcp_lease_file /tmp/dnsmasq.leases
sl_wan_if eth0
sl_lan_if eth1
sl_mark_op --set-mark
sl_iptables /sbin/iptables


## Verify other Site specific settings further down. Use tmpl file in
the conf directory to see the Apache .conf file that will be written
for httpd


## Now COPY the App out of the .cpan directory and place it in the SL-
CP directory

cp -r /root/.cpan/build/App-SilverSplash-0.02-tka533 /usr/local/SL-CP

cd /usr/local/SL-CP


sudo perl Makefile.PL
>> Writing Makefile for App-SilverSplash
>> Writing MYMETA.yml and MYMETA.json

make test
>>Result: PASS


sudo make install
>>Manifying blib/man3/App::SilverSplash.3pm
>>Installing /usr/local/man/man3/App::SilverSplash.3pm
>>Appending installation info to /usr/lib/perl/5.10/perllocal.pod

#Directories not made by the scipt (???)

mkdir /usr/local/SL-CP

mkdir /usr/local/apache2/htdocs/sl

chown -R www-data:www-data /usr/local/apache2/htdocs/sl

mkdir /etc/sl

#Link etc/sl/* to SL-CP/conf/*

ln -s /usr/local/SL-CP/conf/* /etc/sl/*

#fix up a potential problems in the conf.template

vi /usr/local/SL-CP/httpd.conf.tmpl

## Change THIS:
TypesConfig [% cfg.sl_root %]/conf/mime.types

## To THIS:
TypesConfig [% cfg.sl_httpd_root %]/conf/mime.types


##Change this:
LoadModule perl_module modules/mod_perl.so
LoadModule apreq_module modules/mod_apreq2.so

##TO THIS:

LoadModule perl_module /usr/local/apache2/modules/mod_perl.so
LoadModule apreq_module /usr/local/apache2/modules/
mod_apreq2.so


##And this :
PerlPostConfigRequire "/etc/sl/startup.pl"

##To this:
PerlPostConfigRequire "/usr/local/SL-CP/conf/startup.pl"

##make startup.pl executable
chmod +x /usr/local/SL-CP/conf/startup.pl

vi /usr/local/SL-CP/conf/cp_hosts_allow.txt
## Add/remove walled garden - note that invalid FQDNs will stop the
load

##Execute the script this generates the httpd.conf file and kicks
startup.pl
usr/local/bin/sl_splash

-------------------------------------------
At this point you should have a running httpd that's using the .conf
file generated from the sl.conf + ./conf/httpd.conf.tmpl Check your
error logs for problems with iptables, sudo, etc

What you do from here I'm not real sure yet ;-)
Reply all
Reply to author
Forward
0 new messages