mirror of
https://github.com/casjaysdevdocker/squidguard
synced 2025-01-18 00:34:24 -05:00
40 lines
1.2 KiB
Bash
Executable File
40 lines
1.2 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
# Set bash options
|
|
[ -n "$DEBUG" ] && set -x
|
|
set -o pipefail
|
|
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
|
SQUID_USER="${SQUID_USER:-squid}"
|
|
SQUID_LOG_DIR="${SQUID_LOG_DIR:-/data/log/squid}"
|
|
REDIRECT_URL="${REDIRECT_URL:-}"
|
|
BLOCKLIST="${BLOCKLIST:-https://github.com/casjay/resources/raw/main/files/shallalist.tar.gz}"
|
|
BLOCKED_CATEGORIES="${BLOCKED_CATEGORIES:-adv,aggressive,porn,spyware,violence,warez}"
|
|
|
|
DB_LOCATION="/data/squidguard/db"
|
|
LOG_LOCATION="/data/log"
|
|
|
|
echo "Downloading blocklist..."
|
|
wget -q "${BLOCKLIST}" -O /tmp/blocklist.tgz
|
|
|
|
echo "Extracting blocklist..."
|
|
mkdir -p /tmp/blocklist
|
|
tar xzf /tmp/blocklist.tgz --strip-components=1 -C /tmp/blocklist
|
|
|
|
for CATEGORY in $(echo ${BLOCKED_CATEGORIES} | sed "s/,/ /g"); do
|
|
if [ ! -d "/tmp/blocklist/${CATEGORY}" ]; then
|
|
echo "Category ${CATEGORY} not available!"
|
|
exit 1
|
|
fi
|
|
cp -r "/tmp/blocklist/${CATEGORY}" "${DB_LOCATION}/"
|
|
done
|
|
|
|
NOT_LIST="${BLOCKED_CATEGORIES//,/ !}"
|
|
|
|
chown -R ${SQUID_USER}:${SQUID_USER} "${DB_LOCATION}"
|
|
chown -R ${SQUID_USER}:${SQUID_USER} "${LOG_LOCATION}"
|
|
chown -R ${SQUID_USER}:${SQUID_USER} "${CONFIG_FILE}"
|
|
|
|
echo "Cleanup..."
|
|
rm -rf /tmp/*
|
|
|
|
squid -k reconfigure
|