#! /bin/sh # Управление squid для netams ALLOWED_HOSTS="/etc/squid/allowed_hosts" ALLOWED_TMP="${ALLOWED_HOSTS}.tmp" LOG="/var/log/netams/action.log" echo `id`>>"$LOG" echo "$@">>"$LOG" echo "x\$1=x$1">>"$LOG" echo "x\$2=x$2">>"$LOG" echo "x\$3=x$3">>"$LOG" echo "x\$4=x$4">>"$LOG" echo "x\$5=x$5">>"$LOG" SOB=`echo $5` echo "\$SOB=$SOB">>"$LOG" if test "x$SOB"="xQUOTA" ; then IP=`echo "x$4"|sed 's/[^0-9.]//g' 2>/dev/null` echo "\$IP=$IP">>"$LOG" if echo "x$IP" |grep -q '^x\(\([0-9]\.\)\|\(\([0-9]\{2\}\.\)\|\([0-9]\{3\}\.\)\|\([0-9]\{4\}\.\)\)\)\{3\}\([0-9]$\)\|\(\([0-9]\{2\}$\)\|\([0-9]\{3\}$\)\|\([0-9]\{4\}$\)\) 2>/dev/null' ; then PR=`echo $1` echo "\$PR=$PR">>"$LOG" case "x$PR" in "xALLOW*" grep -q "$IP" "$ALLOWED_HOSTS" && (echo "$3" >> "$ALLOWED_HOSTS")||: 2>/dev/null ;; "xDENY*" grep -v "$IP" "$ALLOWED_HOSTS" > "$ALLOWED_TMP"||: 2>/dev/null mv -f "$ALLOWED_TMP" "$ALLOWED_HOSTS" ||: 2>&1 >/dev/null ;; * ;; esac service squid reload >/dev/null ||: 2>&1 >/dev/null fi fi : exit