simplified config

This commit is contained in:
Philip Häusler 2013-12-03 16:18:22 +01:00
parent d5b0311061
commit e9565a79ea
14 changed files with 27 additions and 350 deletions

3
README
View File

@ -12,8 +12,7 @@ Vorgehen:
* Empfehlung: Dirlisting sollte deaktiviert sein. * Empfehlung: Dirlisting sollte deaktiviert sein.
* Es muss eine MySQL-Datenbank angelegt werden und ein User existieren, der alle Rechte auf dieser Datenbank besitzt. * Es muss eine MySQL-Datenbank angelegt werden und ein User existieren, der alle Rechte auf dieser Datenbank besitzt.
* Es muss die db/install.sql importiert/ausgeführt werden. * Es muss die db/install.sql importiert/ausgeführt werden.
* Es müssen die Default-Configs von install/default-conf/*.php nach config/ kopiert werden. * Erstelle bei Bedarf eine config/config.php, die die Werte (z.B. DB-Zugang) aus der config/config.default.php überschreibt.
* Die kopierten Configs in config/ müssen an die Installation angepasst werden, Erklärungen dazu gibt es in der jeweiligen Config-Datei.
* Engelsystem im Browser aufrufen, Anmeldung mit admin:admin vornehmen und Admin-Passwort ändern. * Engelsystem im Browser aufrufen, Anmeldung mit admin:admin vornehmen und Admin-Passwort ändern.
Das Engelsystem ist jetzt einsatzbereit. Das Engelsystem ist jetzt einsatzbereit.

5
config/.gitignore vendored
View File

@ -1,6 +1 @@
config_db.php
config_jabber.php
config_modem.php
config.php config.php
config_IAX.php
config_MessegeServer.php

View File

@ -1,10 +1,11 @@
<?php <?php
// URL to the angel faq and job description
$faq_url = "https://events.ccc.de/congress/2013/wiki/Static:Volunteers";
// Default-Theme auf der Startseite, 1=style1.css usw. // Default-Theme auf der Startseite, 1=style1.css usw.
$default_theme = 1; $default_theme = 1;
// System disable message, ist ist set is: bages schow only this text
//$SystemDisableMessage="<H1>This system ist moved to a server in the BCC, you can in the moment only youse it in the in Engel Room</H1>";
// Anzahl der News, die auf einer Seite ausgeben werden koennen... // Anzahl der News, die auf einer Seite ausgeben werden koennen...
$DISPLAY_NEWS = 6; $DISPLAY_NEWS = 6;
@ -23,19 +24,7 @@ define('CRYPT_ALG', '$6$rounds=5000'); // SHA-512
define('MIN_PASSWORD_LENGTH', 8); define('MIN_PASSWORD_LENGTH', 8);
// Wenn Engel beim Registrieren oder in ihrem Profil eine T-Shirt Größe angeben sollen, auf true setzen: // Wenn Engel beim Registrieren oder in ihrem Profil eine T-Shirt Größe angeben sollen, auf true setzen:
$enable_tshirt_size = false; $enable_tshirt_size = true;
// timezonen offsett
$gmdateOffset=3600;
// für Developen 1, sonst = 0
$debug = 0;
//globale const. fuer schischtplan
$GlobalZeileProStunde = 4;
//Tempdir
$Tempdir="./tmp";
// local timezone // local timezone
date_default_timezone_set("Europe/Berlin"); date_default_timezone_set("Europe/Berlin");
@ -45,12 +34,6 @@ $PentabarfXMLhost = "cccv.pentabarf.org";
$PentabarfXMLpath = "Xcal/conference/"; $PentabarfXMLpath = "Xcal/conference/";
$PentabarfXMLEventID = "31"; $PentabarfXMLEventID = "31";
//Mailing List: is is not defined, the option is not shown
//$SubscribeMailinglist = "*-subscribe@lists.*";
/// Passord for external Authorization, function only active if the var is defined
//$CurrentExternAuthPass = 23;
// multiply "night shifts" (start or end between 2 and 6 exclusive) by 2 // multiply "night shifts" (start or end between 2 and 6 exclusive) by 2
$shift_sum_formula = "SUM( $shift_sum_formula = "SUM(
(1+( (1+(
@ -66,4 +49,11 @@ $shift_sum_formula = "SUM(
// For accessing stats // For accessing stats
$api_key = ""; $api_key = "";
// MySQL-Connection Settings
$config = array(
'host' => "localhost",
'user' => "root",
'pw' => "",
'db' => "engelsystem"
);
?> ?>

View File

@ -1,8 +1,9 @@
<?php <?php
require_once (dirname(__FILE__) . DIRECTORY_SEPARATOR . '..' . DIRECTORY_SEPARATOR . 'public' . DIRECTORY_SEPARATOR . 'bootstrap.php'); require_once (dirname(__FILE__) . DIRECTORY_SEPARATOR . '..' . DIRECTORY_SEPARATOR . 'public' . DIRECTORY_SEPARATOR . 'bootstrap.php');
require_once ('includes/mysql_provider.php'); require_once ('includes/mysql_provider.php');
require_once('config/config.default.php');
if(file_exists('config/config.php'))
require_once ('config/config.php'); require_once ('config/config.php');
require_once ('config/config_db.php');
sql_connect($config['host'], $config['user'], $config['pw'], $config['db']); sql_connect($config['host'], $config['user'], $config['pw'], $config['db']);
error_reporting(E_ALL | E_NOTICE); error_reporting(E_ALL | E_NOTICE);

View File

@ -55,7 +55,7 @@ function verify_password($password, $salt, $uid = false) {
// JSON Authorisierungs-Schnittstelle // JSON Authorisierungs-Schnittstelle
function json_auth_service() { function json_auth_service() {
global $CurrentExternAuthPass; global $api_key;
header("Content-Type: application/json"); header("Content-Type: application/json");
@ -63,7 +63,7 @@ function json_auth_service() {
$Pass = $_REQUEST['pw']; $Pass = $_REQUEST['pw'];
$SourceOuth = $_REQUEST['so']; $SourceOuth = $_REQUEST['so'];
if (isset($CurrentExternAuthPass) && $SourceOuth == $CurrentExternAuthPass) { if (isset($api_key) && $SourceOuth == $api_key) {
$sql = "SELECT `UID`, `Passwort` FROM `User` WHERE `Nick`='" . sql_escape($User) . "'"; $sql = "SELECT `UID`, `Passwort` FROM `User` WHERE `Nick`='" . sql_escape($User) . "'";
$Erg = sql_select($sql); $Erg = sql_select($sql);

View File

@ -1,9 +0,0 @@
*outdated*
1. Create file
2. Create DB entry in table UserCVS (admin/userDefaultSetting.php9
3. update file DB/UserCVS.sql
4. Create DB entry in table Sprache (admin/sprache.php)
When you down't wont a menupount set the Text to ' '
5. update file DB/Sprache.sql

View File

@ -1,9 +0,0 @@
<?php
// MySQL-Connection Settings
$config['host'] = "localhost";
$config['user'] = "root";
$config['pw'] = "";
$config['db'] = "engelsystem";
?>

View File

@ -1,47 +0,0 @@
NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/http/
php_admin_value open_basedir "/var/www/"
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/http/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
# This directive allows us to have apache2's default start page
# in /apache2-default/, but still have / go to the right place
#RedirectMatch ^/$ /apache2-default/
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
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
Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
</VirtualHost>

View File

@ -1,19 +0,0 @@
<VirtualHost *:443>
# SSL (START)
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/apache.pem
SSLCertificateKeyFile /etc/apache2/apache.pem
# SSL (ENDE)
ServerAdmin webmaster@localhost
#kann auch einfach eine IP sein
ServerName localhost
php_admin_value open_basedir "/var/www/"
DocumentRoot /var/www/https
<Directory /var/www/https>
Order Deny,Allow
Allow from all
# Zeige keine Verzeichnisse an
Options -Indexes
</Directory>
</VirtualHost>

View File

@ -1 +0,0 @@
*/15 * * * * www-data (cd /var/www/services/ ; php5 cron_dect.php)

View File

@ -1,17 +0,0 @@
;; Any site-wide Festival initialization can be added to this file.
;; It is marked as a configuration file, so your changes will be saved
;; across upgrades of the Festival package.
;;
; Server access list (hosts)
(set! server_access_list '("[^.]+" "127.0.0.1" "localhost.*"))
;; Command for Asterisk begin
(define (tts_textasterisk string mode)
"(tts_textasterisk STRING MODE)
Apply tts to STRING. This function is specifically designed for
use in server mode so a single function call may synthesize the string.
This function name may be added to the server safe functions."
(utt.send.wave.client (utt.wave.resample (utt.wave.rescale (utt.synth (eval (list 'Utterance 'Text string))) 5) 8000)))

View File

@ -1,103 +0,0 @@
#!/bin/bash
# todo: -install asterisk
# -use ip if dns not configured (dig +short @141.1.1.1)
echo "updating system"
apt-get -qq update
apt-get -qq upgrade
echo "installing software"
apt-get -qq install vim apache2 mysql-common mysql-server php5-mysql \
libapache2-mod-php5 subversion openssl ssl-cert ssh less makepasswd
echo "setting local vars"
SQL_PASSWD=`makepasswd --chars=8 --noverbose`
ADM_PASSWD=`makepasswd --chars=8 --noverbose`
SQL_USER=`makepasswd --chars=8 --noverbose`
SQL_UPWD=`makepasswd --chars=8 --noverbose`
state=DE
province=Berlin
town=Berlin
org="CCC e.V."
section="Congress"
adminmail="admin@`cat /etc/hostname`.`dnsdomainname`"
FQDN=`/bin/hostname -f`
echo "getting sources"
svn co svn://svn.cccv.de/engel-system
echo "setting up apache2"
mkdir /var/www/http/
mkdir /var/www/https/
mkdir /etc/apache2/ssl/
echo -ne $state'\n'$province'\n'$town'\n'$org'\n'$section'\n'$FQDN'\n'$adminmail'\n'|openssl req $@ -new -x509 -days 365 -nodes -out /etc/apache2/ssl/apache.pem -keyout /etc/apache2/apache.pem
chmod 600 /etc/apache2/ssl/apache.pem
cp `pwd`/engel-system/default-conf/etc/default /etc/apache2/sites-available/default
cp `pwd`/engel-system/default-conf/etc/https /etc/apache2/sites-available/https
echo "Listen 443" >> /etc/apache2/ports.conf
a2enmod ssl
a2ensite https
/etc/init.d/apache2 restart
echo "setting up mysql"
mysql -u root mysql -e "CREATE DATABASE tabel;"
echo "setting sources in place"
cp -r `pwd`/engel-system/www/* /var/www/http/
cp -r `pwd`/engel-system/www-ssl/* /var/www/https/
cp -r `pwd`/engel-system/includes/ /var/www/
cp -r `pwd`/engel-system/default-conf/www-ssl/inc/* /var/www/https/inc/
rm /var/www/https/inc/config.php
cat `pwd`/engel-system/default-conf/www-ssl/inc/config.php|sed s/SEDENGELURL/$FQDN/ |sed s/MD5SED/`openssl x509 -noout -fingerprint -md5 -in /etc/apache2/ssl/apache.pem|sed s/MD5\ Fingerprint\=//`/|sed s/SHA1SED/`openssl x509 -noout -fingerprint -sha1 -in /etc/apache2/ssl/apache.pem|sed s/SHA1\ Fingerprint\=//`/ >> /var/www/https/inc/config.php
rm /var/www/https/inc/config_db.php
cat `pwd`/engel-system/default-conf/www-ssl/inc/config_db.php|sed s/changeme/$SQL_UPWD/|sed s/root/$SQL_USER/ >> /var/www/https/inc/config_db.php
cp `pwd`/engel-system/DB/User.sql `pwd`/engel-system/DB/User.sql2
rm `pwd`/engel-system/DB/User.sql
cat `pwd`/engel-system/DB/User.sql2|sed s/21232f297a57a5a743894a0e4a801fc3/`echo -n $ADM_PASSWD|md5sum|sed s/\ \ \-//`/ >> `pwd`/engel-system/DB/User.sql
mysql tabel -u root < `pwd`/engel-system/DB/ChangeLog.sql
mysql tabel -u root < `pwd`/engel-system/DB/Himmel.sql
mysql tabel -u root < `pwd`/engel-system/DB/Messages.sql
mysql tabel -u root < `pwd`/engel-system/DB/Sprache.sql
mysql tabel -u root < `pwd`/engel-system/DB/User.sql
mysql tabel -u root < `pwd`/engel-system/DB/UserCVS.sql
mysql tabel -u root < `pwd`/engel-system/DB/UserPicture.sql
echo "cleaning up"
rm -rf `pwd`/engel-system/
mysql -u root mysql -e "GRANT SELECT,INSERT,ALTER,UPDATE,INDEX,DELETE,DROP,CREATE ON tabel.* TO '$SQL_USER'@'localhost' IDENTIFIED BY 'password';"
mysql -u root mysql -e "UPDATE user SET Password=PASSWORD('$SQL_PASSWD') WHERE user='root';"
mysql -u root mysql -e "UPDATE user SET Password=PASSWORD('$SQL_UPWD') WHERE user='$SQL_USER';"
mysql -u root mysql -e "DELETE FROM user WHERE User='debian-sys-maint';"
mysql -u root mysql -e "FLUSH PRIVILEGES;"
echo "SQL-Root: root" >> /root/cfg.info
echo "SQL-Root-Pass: $SQL_PASSWD" >> /root/cfg.info
echo "SQL-User: $SQL_USER" >> /root/cfg.info
echo "SQL-User-Pass: $SQL_UPWD" >> /root/cfg.info
echo "Web-User: admin" >> /root/cfg.info
echo "Web-User-Pass: $ADM_PASSWD" >> /root/cfg.info
echo "final hints:"
echo "-the webfrontend user/pass combo is: admin:$ADM_PASSWD"
echo "-the sql-server root account is: root:$SQL_PASSWD"
echo "-the sql-server user account is: $SQL_USER:$SQL_UPWD"
echo "-you can find further information and the passwords in /root/cfg.info"
echo "-make sure \$url in /var/www/https/inc/config.php is correct"

View File

@ -1,104 +0,0 @@
#!/bin/bash
# todo: -install asterisk
# -use ip if dns not configured (dig +short @141.1.1.1)
echo "updating system"
apt-get -qq update
apt-get -qq upgrade
echo "installing software"
apt-get -qq install vim apache2 mysql-common mysql-server php5-mysql \
libapache2-mod-php5 subversion openssl ssl-cert ssh less makepasswd
echo "setting local vars"
SQL_PASSWD=`makepasswd --chars=8 --noverbose`
ADM_PASSWD=`makepasswd --chars=8 --noverbose`
SQL_USER=`makepasswd --chars=8 --noverbose`
SQL_UPWD=`makepasswd --chars=8 --noverbose`
state=DE
province=Berlin
town=Berlin
org="CCC e.V."
section="Congress"
adminmail="admin@`cat /etc/hostname`.`dnsdomainname`"
FQDN=`/bin/hostname -f`
echo "getting sources"
svn co svn://svn.cccv.de/engel-system
echo "setting up apache2"
mkdir /var/www/http/
mkdir /var/www/https/
mkdir /etc/apache2/ssl/
echo -ne $state'\n'$province'\n'$town'\n'$org'\n'$section'\n'$FQDN'\n'$adminmail'\n'|openssl req $@ -new -x509 -days 365 -nodes -out /etc/apache2/ssl/apache.pem -keyout /etc/apache2/apache.pem
chmod 600 /etc/apache2/ssl/apache.pem
cp `pwd`/engel-system/default-conf/etc/default /etc/apache2/sites-available/default
cp `pwd`/engel-system/default-conf/etc/https /etc/apache2/sites-available/https
echo "Listen 443" >> /etc/apache2/ports.conf
a2enmod ssl
a2ensite https
/etc/init.d/apache2 restart
echo "setting up mysql"
mysql -u root mysql -e "CREATE DATABASE tabel;"
echo "setting sources in place"
cp -r `pwd`/engel-system/www/* /var/www/http/ # meant to be removed
cp -r `pwd`/engel-system/www-ssl/* /var/www/https/
cp -r `pwd`/engel-system/includes/ /var/www/
cp -r `pwd`/engel-system/default-conf/var_www_includes/* /var/www/includes/
cp -r `pwd`/engel-system/service/ /var/www/
rm /var/www/includes/config.php
cat `pwd`/engel-system/default-conf/var_www_includes/config.php|sed s/SEDENGELURL/$FQDN/ |sed s/MD5SED/`openssl x509 -noout -fingerprint -md5 -in /etc/apache2/ssl/apache.pem|sed s/MD5\ Fingerprint\=//`/|sed s/SHA1SED/`openssl x509 -noout -fingerprint -sha1 -in /etc/apache2/ssl/apache.pem|sed s/SHA1\ Fingerprint\=//`/ >> /var/www/includes/config.php
rm /var/www/includes/config_db.php
cat `pwd`/engel-system/default-conf/var_www_includes/config_db.php|sed s/changeme/$SQL_UPWD/|sed s/root/$SQL_USER/ >> /var/www/includes/config_db.php
cp `pwd`/engel-system/DB/User.sql `pwd`/engel-system/DB/User.sql2
rm `pwd`/engel-system/DB/User.sql
cat `pwd`/engel-system/DB/User.sql2|sed s/21232f297a57a5a743894a0e4a801fc3/`echo -n $ADM_PASSWD|md5sum|sed s/\ \ \-//`/ >> `pwd`/engel-system/DB/User.sql
mysql tabel -u root < `pwd`/engel-system/DB/ChangeLog.sql
mysql tabel -u root < `pwd`/engel-system/DB/Himmel.sql
mysql tabel -u root < `pwd`/engel-system/DB/Messages.sql
mysql tabel -u root < `pwd`/engel-system/DB/Sprache.sql
mysql tabel -u root < `pwd`/engel-system/DB/User.sql
mysql tabel -u root < `pwd`/engel-system/DB/UserCVS.sql
mysql tabel -u root < `pwd`/engel-system/DB/UserPicture.sql
echo "cleaning up"
rm -rf `pwd`/engel-system/
mysql -u root mysql -e "GRANT SELECT,INSERT,ALTER,UPDATE,INDEX,DELETE,DROP,CREATE ON tabel.* TO '$SQL_USER'@'localhost' IDENTIFIED BY 'password';"
mysql -u root mysql -e "UPDATE user SET Password=PASSWORD('$SQL_PASSWD') WHERE user='root';"
mysql -u root mysql -e "UPDATE user SET Password=PASSWORD('$SQL_UPWD') WHERE user='$SQL_USER';"
mysql -u root mysql -e "DELETE FROM user WHERE User='debian-sys-maint';"
mysql -u root mysql -e "FLUSH PRIVILEGES;"
echo "SQL-Root: root" >> /root/cfg.info
echo "SQL-Root-Pass: $SQL_PASSWD" >> /root/cfg.info
echo "SQL-User: $SQL_USER" >> /root/cfg.info
echo "SQL-User-Pass: $SQL_UPWD" >> /root/cfg.info
echo "Web-User: admin" >> /root/cfg.info
echo "Web-User-Pass: $ADM_PASSWD" >> /root/cfg.info
echo "final hints:"
echo "-the webfrontend user/pass combo is: admin:$ADM_PASSWD"
echo "-the sql-server root account is: root:$SQL_PASSWD"
echo "-the sql-server user account is: $SQL_USER:$SQL_UPWD"
echo "-you can find further information and the passwords in /root/cfg.info"
echo "-make sure \$url in /var/www/includes/config.php is correct"

View File

@ -22,8 +22,9 @@ require_once ('includes/helper/internationalization_helper.php');
require_once ('includes/helper/message_helper.php'); require_once ('includes/helper/message_helper.php');
require_once ('includes/helper/error_helper.php'); require_once ('includes/helper/error_helper.php');
require_once ('config/config.default.php');
if(file_exists('config/config.php'))
require_once ('config/config.php'); require_once ('config/config.php');
require_once ('config/config_db.php');
require_once ('includes/pages/admin_active.php'); require_once ('includes/pages/admin_active.php');
require_once ('includes/pages/admin_angel_types.php'); require_once ('includes/pages/admin_angel_types.php');