37 lines
1.2 KiB
Bash
Executable File
37 lines
1.2 KiB
Bash
Executable File
#!/bin/sh
|
|
HERE=`dirname $0`
|
|
|
|
. $HERE/CONFIG
|
|
|
|
read -p "Enter username: " USER
|
|
echo -n "Enter password: "
|
|
/bin/stty -echo
|
|
read PASS
|
|
/bin/stty echo
|
|
echo ""
|
|
DOMAIN=Firebox-DB
|
|
#DOMAIN=RADIUS
|
|
|
|
# POST with multipart/form-data (form name: user_auth_form)
|
|
TMP=`tempfile -p WG`
|
|
POST="fw_username=${USER}&fw_password=${PASS}&fw_domain=${DOMAIN}&submit=Login&action=fw_logon&style=fw_logon_progress.xsl&fw_logon_type=logon"
|
|
echo "Sending login data..."
|
|
wget --quiet -S -O "$TMP" --no-check-certificate --post-data="$POST" "$WATCHGUARD_URL/?action=fw_logon&style=fw_logon.xsl&fw_logon_type=status"
|
|
|
|
REQID=`cat "$TMP" | egrep -o "<reqId>(.*)</reqId>" | sed 's/<reqId>\(.*\)<\/reqId>/\1/g'`
|
|
rm "$TMP"
|
|
echo "Got Request ID: $REQID"
|
|
|
|
sleep 2
|
|
URI="/?action=fw_logon&style=fw_logon_progress.xsl&fw_logon_type=progress&fw_reqId=${REQID}"
|
|
echo "Requesting login status..."
|
|
wget --quiet -S -O "$TMP" --no-check-certificate "${WATCHGUARD_URL}${URI}"
|
|
|
|
STATUS=`cat "$TMP" | egrep -o "<logon_status>(.*)</logon_status>" | sed 's/<logon_status>\(.*\)<\/logon_status>/\1/g'`
|
|
echo "Status: $STATUS"
|
|
rm "$TMP"
|
|
if [ $STATUS = "1" ]; then
|
|
echo "Logged in successfully."
|
|
else
|
|
echo "Login failed for some reason. Please try again."
|
|
fi |