Sequence with basic database handling for freeradius
This commit is contained in:
9
seqs/freeradius.cfg.example
Normal file
9
seqs/freeradius.cfg.example
Normal file
@@ -0,0 +1,9 @@
|
||||
#!/bin/bash
|
||||
|
||||
## Freeradius settings
|
||||
FRAD_DB_NAME="radius"
|
||||
FRAD_DB_USER="radius"
|
||||
# Default freeradius database password: radpass
|
||||
|
||||
## Daloradius settings
|
||||
DRAD_HOME="/var/www/daloradius"
|
73
seqs/freeradius.sh
Executable file
73
seqs/freeradius.sh
Executable file
@@ -0,0 +1,73 @@
|
||||
#!/bin/bash
|
||||
|
||||
toolName=freeradius
|
||||
toolConfLoc="/etc/freeradius/3.0"
|
||||
|
||||
# Get script working directory
|
||||
# (when called from a different directory)
|
||||
WDIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" >>/dev/null 2>&1 && pwd)"
|
||||
APTOPT=
|
||||
CONFIG=0
|
||||
SCRIPT_FILE=$(basename -- $0)
|
||||
SCRIPT_NAME=${SCRIPT_FILE%%.*}
|
||||
CONFIG_FILE_NAME="${SCRIPT_NAME}.cfg"
|
||||
CONFIG_FILE_TEMPLATE="$WDIR/${CONFIG_FILE_NAME}.example"
|
||||
|
||||
step_config() {
|
||||
## or to use sequencer api with profile config file support:
|
||||
initSeqConfig "$SCRIPT_NAME" "$CONFIG_FILE_TEMPLATE"
|
||||
if [ $? -eq 0 ] ; then
|
||||
CONFIG=1
|
||||
echoseq " [I] Freeradius DB: $FRAD_DB_NAME"
|
||||
echoseq " Daloradius home: $DRAD_HOME"
|
||||
else
|
||||
# End if no configuration file exists
|
||||
[ $DRY -eq 0 ] && return -1
|
||||
fi
|
||||
|
||||
## Apt cmdline option to suppress user interaction
|
||||
[ $QUIET -ne 0 ] && APTOPT="-y"
|
||||
|
||||
## Return of non zero value will abort the sequence
|
||||
return 0
|
||||
}
|
||||
|
||||
step_50_info() { echo "Init freeradius and daloradius database"; }
|
||||
step_50_alias() { ALIAS="initdb"; }
|
||||
step_50() {
|
||||
local drDbInit="$DRAD_HOME/contrib/db/mysql-daloradius.sql"
|
||||
local frDbSchema="$toolConfLoc/mods-config/sql/main/mysql/schema.sql"
|
||||
local frDbSetup="$toolConfLoc/mods-config/sql/main/mysql/setup.sql"
|
||||
exe "$WDIR"/mysql.sh createdb -c utf8 -d "$FRAD_DB_NAME" -u "$FRAD_DB_USER"
|
||||
endReturn -o $? "Creating database failed"
|
||||
|
||||
exep "mysql -uroot \"$FRAD_DB_NAME\" < $frDbSchema"
|
||||
#exep "mysql -uroot \"$FRAD_DB_NAME\" < $frDbSetup"
|
||||
exep "mysql -uroot \"$FRAD_DB_NAME\" < $drDbInit"
|
||||
}
|
||||
|
||||
|
||||
step_52_info() { echo "Reset freeradius and daloradius database"; }
|
||||
step_52_alias() { ALIAS="resetdb"; }
|
||||
step_52() {
|
||||
local lAnswer
|
||||
|
||||
if [ $QUIET -eq 0 ]; then
|
||||
read -p "Do you really want to reset the database $FRAD_DB_NAME y/[n]? " lAnswer
|
||||
else
|
||||
lAnswer=y
|
||||
fi
|
||||
case "$lAnswer" in
|
||||
[yY])
|
||||
echoseq -n " [I] Reseting DB...";;
|
||||
*)
|
||||
echoerr " [I] Abort reset"
|
||||
return 1;;
|
||||
esac
|
||||
|
||||
exe mysql -e "DROP DATABASE $FRAD_DB_NAME"
|
||||
step initdb
|
||||
}
|
||||
|
||||
VERSION_SEQREV=13
|
||||
. /usr/local/bin/sequencer.sh
|
Reference in New Issue
Block a user