Squid Web Cache Proxy Server installieren unter Ubuntu 10.10

Ich habe ein kleines Howto geschrieben, wie man den Squid squid-3.0.STABLE25 auf einem Ubuntu 10.10 installieren und konfigurieren kann.
Hier gibts es 2 Wege, einmal den etwas komplizierteren über die eigene Installation – oder über das fertige debian Paket.
Ich beschreibe beide Wege……
### Die einfache Variante über ein fertiges Ubuntu Paket

sudo apt-get install squid3

Fertig 🙂 – Das Startscript etc. wird automatisch angelegt. Der Config Folder ist nun aber /etc/squid3/.
Für eine einfachere Konfiguration über ein Webinterface empfehle ich die Installation von webmin. Diese Webseite bereitet die Konfig etwas vereinfacht auf.
# webmin installieren

cd /tmp
wget http://prdownloads.sourceforge.net/webadmin/webmin_1.530_all.deb
sudo dpkg --install webmin_1.530_all.deb

– Eventuell – falls Abhängigkeiten fehlen sollten noch:

apt-get install perl libnet-ssleay-perl openssl libauthen-pam-perl libpam-runtime libio-pty-perl

Im webmin unter Servers / squid web proxy cache müssen dann evlt. noch die Pfade angepasst werden, wenn squid nicht per apt-get insall squid installiert wurde.
Folgende Werte müssen geändert werden:
Full path to squid config file: /usr/local/squid/etc/squid.conf
Squid executable: /usr/local/squid/sbin/squid
Full path to PID file: /usr/local/squid/var/logs/squid.pid
Full path to squid cache directory: /usr/local/squid/var/cache
Squid cachemgr.cgi executable: /usr/local/squid/libexec/cachemgr.cgi
Full path to squid log directory: /usr/local/squid/var/logs
(Thanks to http://www.admin-wissen.de/eigene-tutorials/linux/squid/squid-tutorial-teil-3/)
### Installation via Source Files (….weiterlesen)

# Source Downloaden

cd usr/src/
sudo wget http://squidcache.cybermirror.org/squid/squid-3.0.STABLE25.tar.gz

# Install Compiler

sudo apt-get install gcc
sudo apt-get install g++
sudo apt-get install gpp

# Install C Debugger

sudo apt-get install gdb

# Ungzip

sudo gzip -dv squid-3.0.STABLE25.tar.gz

# Unzip Tarball

sudo tar xvf squid-3.0.STABLE25.tar

# Squid Konfigurieren

admin@SQUIDSRV:/usr/src/squid-3.0.STABLE25$
./configure –prefix=/usr/local/squid –sysconfdir=/etc/squid –enable-err-language=German -enable-snmp
make[2]: Verlasse Verzeichnis '/usr/src/squid-3.0.STABLE25/tools'
make[1]: Verlasse Verzeichnis '/usr/src/squid-3.0.STABLE25/tools'
make[1]: Betrete Verzeichnis '/usr/src/squid-3.0.STABLE25'
Build Successful.
make[1]: Verlasse Verzeichnis '/usr/src/squid-3.0.STABLE25'

# Nun Installieren

make install
make[1]: Betrete Verzeichnis '/usr/src/squid-3.0.STABLE25'
Build Successful.

So – nun ist squid erstmal installiert. Die zentrale Config Datei liegt unter /etc/squid/squid.conf und sollte für den Gebrauch erstmals angepasst werden.
## Ordner Berechtigungen vergeben
(Squid läuft unter dem user nobody, sofern nicht anders in der config angegeben)

admin@SQUIDSRV:/usr/local/squid$ sudo chmod 777 var/
admin@SQUIDSRV:/usr/local/squid$ cd /usr/local/squid/sbin/

# Squid Cache Directorys erstellen

admin@SQUIDSRV:/usr/local/squid/sbin$ sudo ./squid -z
2011/01/05 10:29:24| Creating Swap Directories
2011/01/05 10:29:24| Making directories in /usr/local/squid/var/cache/00

# Squid das erste mal starten

admin@SQUIDSRV:/usr/local/squid/sbin$ sudo ./squid -N -d 1 -D
2011/01/05 10:30:37| Starting Squid Cache version 3.0.STABLE25 for x86_64-unknown-linux-gnu...
2011/01/05 10:30:37| Process ID 31588
2011/01/05 10:30:37| With 1024 file descriptors available
2011/01/05 10:30:37| DNS Socket created at 0.0.0.0, port 60492, FD 5
2011/01/05 10:30:37| Adding domain DOMAIN.INFO from /etc/resolv.conf
2011/01/05 10:30:37| Adding nameserver 10.0.100.10 from /etc/resolv.conf
2011/01/05 10:30:38| Unlinkd pipe opened on FD 10
2011/01/05 10:30:38| Swap maxSize 102400 + 8192 KB, estimated 8507 objects
2011/01/05 10:30:38| Target number of buckets: 425
2011/01/05 10:30:38| Using 8192 Store buckets
2011/01/05 10:30:38| Max Mem  size: 8192 KB
2011/01/05 10:30:38| Max Swap size: 102400 KB
2011/01/05 10:30:38| Rebuilding storage in /usr/local/squid/var/cache (DIRTY)
2011/01/05 10:30:38| Using Least Load store dir selection
2011/01/05 10:30:38| Set Current Directory to /usr/local/squid/var/cache
2011/01/05 10:30:38| Loaded Icons.
2011/01/05 10:30:38| Accepting  HTTP connections at 0.0.0.0, port 3128, FD 11.
2011/01/05 10:30:38| Accepting ICP messages at 0.0.0.0, port 3130, FD 12.
2011/01/05 10:30:38| HTCP Disabled.
2011/01/05 10:30:38| Ready to serve requests.
2011/01/05 10:30:38| Done scanning /usr/local/squid/var/cache swaplog (0 entries)
2011/01/05 10:30:38| Finished rebuilding storage from disk.
2011/01/05 10:30:38|         0 Entries scanned
2011/01/05 10:30:38|         0 Invalid entries.
2011/01/05 10:30:38|         0 With invalid flags.
2011/01/05 10:30:38|         0 Objects loaded.
2011/01/05 10:30:38|         0 Objects expired.
2011/01/05 10:30:38|         0 Objects cancelled.
2011/01/05 10:30:38|         0 Duplicate URLs purged.
2011/01/05 10:30:38|         0 Swapfile clashes avoided.
2011/01/05 10:30:38|   Took 0.83 seconds (  0.00 objects/sec).
2011/01/05 10:30:38| Beginning Validation Procedure
2011/01/05 10:30:38|   Completed Validation Procedure
2011/01/05 10:30:38|   Validated 25 Entries
2011/01/05 10:30:38|   store_swap_size = 0
2011/01/05 10:30:39| storeLateRelease: released 0 objects

# Squid startscript:
anlegen unter /etc/init.d/squid

#!/bin/bash
squid=/usr/local/squid/sbin/squid
test -x $squid || exit 0
case "$1" in
start)
echo "Starting squid"
$squid -D -sYC
sleep 1
$0 status
;;
stop)
echo "Stopping squid"
$squid -k shutdown
n=0
while $squid -k check && [ $n -lt 120 ]; do
sleep 1
echo -n .
n=`/usr/bin/expr $n + 1`
done
$0 status
;;
status)
$squid -k check
/bin/ps aux | /bin/grep squid | /bin/grep -v -e "status" -e "grep"
;;
reload)
$squid -k reconfigure
;;
restart)
$0 stop && $0 start
;;
*)
echo "Usage: $0 {start|stop|reload|restart|status|}" >&2
;;
esac

# Autostart in RC eintragen:

update-rc.d squid defaults

So, das war der etwas kompliziertere Weg.

2 Gedanken zu „Squid Web Cache Proxy Server installieren unter Ubuntu 10.10“

Schreibe einen Kommentar

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.