73 lines
2.3 KiB
Bash
73 lines
2.3 KiB
Bash
#!/bin/bash
|
|
|
|
# This script checks for the next free remote-admin pc and established a RDP session using xfreerdp to it.
|
|
# To use this script you need to create two files in your home directory
|
|
#
|
|
# .smbcredentials
|
|
# username=YOUR AD USERNAME
|
|
# password=YOUR AD PASSWORD
|
|
#
|
|
# .remote-admin
|
|
# USERNAME=administrator@zfd.forumzfd.de
|
|
# PASSWORD=AD ADMIN PASSWORD FROM BITWARDEN
|
|
#
|
|
# Make sure to proper chmod them (e.g. chmod 600)
|
|
#
|
|
# Add the following line to your /etc/fstab and edit YOUR_USERNAME
|
|
#
|
|
# //remote-admin1/Ampel /tmp/remote-ampel cifs credentials=/home/YOUR_USERNAME/.smbcredentials,user,noauto,workgroup=ZFD,dir_mode=0777,file_mode=0777,_netdev 0 0
|
|
#
|
|
# setuid might be necessary on /usr/sbin/mount.cifs. Set it as root with
|
|
#
|
|
# chmod u+s /usr/sbin/mount.cifs
|
|
|
|
AMPEL_MOUNT=/tmp/remote-ampel
|
|
AMPEL_SHARE=//remote-admin1/Ampel
|
|
|
|
if [ -f ~/.remote-admin ]; then
|
|
source ~/.remote-admin
|
|
else
|
|
echo ".remote-admin not found! Please create it!"
|
|
exit 4
|
|
fi
|
|
if [ ! -f ~/.smbcredentials ]; then
|
|
echo ".smbcredentials not found! Please create it!"
|
|
exit 5
|
|
fi
|
|
# Check for xfreerdp
|
|
if [ ! -f /usr/bin/xfreerdp ]; then
|
|
print "xfreerdp not found. Make sure it is installed"
|
|
exit 1
|
|
else # check for the mount point
|
|
mkdir -p $AMPEL_MOUNT
|
|
if grep -qs $AMPEL_MOUNT /proc/mounts; then
|
|
echo "$AMPEL_MOUNT already mounted."
|
|
else
|
|
echo "Trying to mount $AMPEL_MOUNT"
|
|
mount $AMPEL_MOUNT
|
|
if [ $? -eq 0 ]; then
|
|
echo "Mount successful."
|
|
else
|
|
echo "Mount failed. Check share"
|
|
exit 2
|
|
fi
|
|
fi
|
|
fi
|
|
sleep 2
|
|
# Take the first free remote-admin computer and connect to it.
|
|
if [ -f $AMPEL_MOUNT/REMOTE-ADMIN1-FREE.txt ]; then
|
|
echo 'REMOTE-ADMIN1 is FREE'
|
|
xfreerdp /u:$USERNAME /p:$PASSWORD /v:remote-admin1.zfd.forumzfd.de /gfx:avc444 /dynamic-resolution
|
|
elif [ -f $AMPEL_MOUNT/REMOTE-ADMIN2-FREE.txt ]; then
|
|
echo 'REMOTE-ADMIN2 is FREE'
|
|
xfreerdp /u:$USERNAME /p:$PASSWORD /v:remote-admin2.zfd.forumzfd.de /gfx:avc444 /dynamic-resolution
|
|
elif [ -f $AMPEL_MOUNT/REMOTE-ADMIN3-FREE.txt ]; then
|
|
echo 'REMOTE-ADMIN3 is FREE'
|
|
xfreerdp /u:$USERNAME /p:$PASSWORD /v:remote-admin3.zfd.forumzfd.de /gfx:avc444 /dynamic-resolution
|
|
else
|
|
echo 'NO REMOTE-ADMIN FREE. Try again later'
|
|
umount $AMPEL_MOUNT
|
|
exit 3
|
|
fi
|
|
umount $AMPEL_MOUNT
|
|
exit 0
|