Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
languagebash
titleaddconnection.sh
linenumberstrue
#!/bin/bash

pass=replace_with_your_pass 

logfile=/home/vclguac/logs/addremoveconnections.log 

if [ "$#" -lt 3 ]; then
	echo "Usage:"
	echo ""
	echo "$0 <username> <IP> \"<image name>\""
	exit 1
fi

username=$1
IP=$2
image=$3
remoteIP=$4
conname="$username - $image - $IP"

now=`date`
echo "================================================================================" >> $logfile
echo "$now - adding connection entry" >> $logfile
echo "user:   $username" >> $logfile
echo "IP:     $IP" >> $logfile
echo "userIP: $remoteIP" >> $logfile
echo "image:  $image" >> $logfile
echo "name:   $conname" >> $logfile

# check that user has account
cnt=$(mysql -s -u vclguacsql -p$pass guacamole_db -e "SELECT COUNT(user_id) FROM guacamole_user WHERE full_name = '$username';" | tail -n 1)
if [[ "$cnt" -ne 1 ]]; then
       cat /home/vclguac/createusertemplate.sql | sed "s/THENEWUSER/$username/g" | mysql -u vclguacsql -p$pass guacamole_db | tee -a $logfile
fi

mysql -u vclguacsql -p$pass guacamole_db -e "INSERT INTO guacamole_connection (connection_name, protocol) VALUES ('$conname', 'rdp');" | tee -a $logfile

mysql -u vclguacsql -p$pass guacamole_db -e "INSERT INTO guacamole_connection_permission (entity_id, connection_id, permission) VALUES ((SELECT entity_id FROM guacamole_entity WHERE name = '$username' AND \`type\` = 'USER'), (SELECT connection_id FROM guacamole_connection WHERE connection_name = '$conname' AND protocol = 'rdp'), 'READ');" | tee -a $logfile

mysql -u vclguacsql -p$pass guacamole_db -e "INSERT INTO guacamole_connection_parameter (connection_id, parameter_name, parameter_value) VALUES ((SELECT connection_id FROM guacamole_connection WHERE connection_name = '$conname' AND protocol = 'rdp'), 'disable-auth', 'true'), ((SELECT connection_id FROM guacamole_connection WHERE connection_name = '$conname' AND protocol = 'rdp'), 'hostname', '$IP'), ((SELECT connection_id FROM guacamole_connection WHERE connection_name = '$conname' AND protocol = 'rdp'), 'ignore-cert', 'true'), ((SELECT connection_id FROM guacamole_connection WHERE connection_name = '$conname' AND protocol = 'rdp'), 'port', '3389'), ((SELECT connection_id FROM guacamole_connection WHERE connection_name = '$conname' AND protocol = 'rdp'), 'resize-method', 'display-update'), ((SELECT connection_id FROM guacamole_connection WHERE connection_name = '$conname' AND protocol = 'rdp'), 'security', 'any');" | tee -a $logfile

if [[ $remoteIP != "" ]]; then
       sudo /usr/local/bin/add_iptables_client.sh $remoteIP $username $IP | tee -a $logfile
fi

...

Code Block
languagebash
titledelconnection.sh
linenumberstrue
#!/bin/bash 

pass=replace_with_your_pass

logfile=/home/vclguac/logs/addremoveconnections.log 

if [ "$#" -lt 2 ]; then 
       echo "Usage:" 
       echo "" 
       echo "$0 <IP> \"<image name>\"" 
       exit 1 
fi 

IP=$1 
image=$2 
username=$3 
remoteIP=$4 
conname="$username - $image - $IP" 

now=`date` 
echo "================================================================================" >> $logfile 
echo "$now - deleting connection entry" >> $logfile 
echo "user:   $username" >> $logfile 
echo "IP:     $IP" >> $logfile 
echo "userIP: $remoteIP" >> $logfile 
echo "image:  $image" >> $logfile 
echo "name:   $conname" >> $logfile 

mysql -u vclguacsql -p$pass guacamole_db -e "DELETE FROM guacamole_connection WHERE connection_name = '$conname' AND protocol = 'rdp';" | tee -a $logfile 

if [[ $remoteIP != "" ]]; then 
       sudo /usr/local/bin/del_iptables_client.sh $remoteIP $username $IP 
fi

...