OpenVPN_Management_GUI/Admin/Modules/Squid_old/squid_dynamic/write_conf_file.bak

131 lines
2.5 KiB
Bash
Executable File

#!/bin/bash
# Script um die cache_peer funktion von Squid upzudaten.
# V1.0
# 13.10.2010
# Stoeckholzer, Haas
if [ ${#1} == 0 ];
then
echo "USAGE: write_conf_file updatetime"
exit 0
fi
while [ "1" == "1" ] ; do
sleep $1
zero="1"
while [ $zero == "1" ] ; do
# Zaehlvariable einlesen
id=$(cat /var/vpn/vpnid)
# id inkrementieren
let id=$id+1
# 255 Overflow verhindern
if [ $id -gt 254 ]
then id=0
fi
# Variable id fuer naechsten Durchlauf speichern
echo $id > /var/vpn/vpnid
# id HEX wandeln
hex=$(echo "obase=16; $id" |bc)
# Abfrage ob Strinlaenge von hex kleiner als 2
if [ ${#hex} -lt 2 ];
then hex=0$hex
fi
# Login-Daten aus Datenbank holen
credentials=$(/home/christoph/squid_dynamic/squidy $hex)
# Abfrage ob Datensatz leer :
if [ ${#credentials} -gt 10 ];
then
zero="0"
fi
echo "Schleife zero: $zero"
echo "Schleife id: $id"
echo "Schleife hex: $hex"
done
echo "USING zero: $zero"
echo "USING id: $id"
echo "USING hex: $hex"
echo "USING credentials: $credentials"
sudo killall -9 unlinkd
sudo killall -9 squid
sudo rm /etc/squid3/squid.conf
######################################################################################
# Config- Datei schreiben.
sudo echo -e -n "
# Squid config by h44z
# TAG: http_port
# Usage: port
# hostname:port
# 1.2.3.4:port
http_port 10.8.0.1:3128 transparent
http_port 10.8.0.1:8080
#https_port 10.8.0.1:8181 key=/etc/apache2/ssl/apache.pem
visible_hostname vpnrack
# TAG: icp_port
icp_port 0
# TAG: no_cache
acl QUERY urlpath_regex cgi-bin \\?
no_cache deny QUERY
# TAG: cache_mem (bytes)
cache_mem 32 MB
# TAG: cache_dir
cache_dir ufs /var/cache/squid 100 16 256
# TAG: cache_access_log
cache_access_log /var/log/squid/access.log
# TAG: cache_log
cache_log /var/log/squid/cache.log
# TAG: cache_store_log
cache_store_log /var/log/squid/store.log
# TAG: emulate_httpd_log on|off
emulate_httpd_log on
# TAG: pid_filename
pid_filename /var/run/squid.pid
# TAG: cache_mgr
cache_mgr christoph.haas2@students.htlinn.ac.at
#blubber
http_access allow all
acl https port 443
http_access allow https
# TAG: http_reply_access
# Allow replies to client requests. This is complementary to http_access.
#http_reply_access allow all
cache_peer 192.168.195.101 parent 8080 7 no-query default no-digest login=$credentials
never_direct allow all
" > /etc/squid3/squid.conf
echo "Written credentials: $credentials"
######################################################################################
#restart squid
sudo squid -D -YC -f /etc/squid3/squid.conf
done