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 zu Henrik Antworten abbrechen

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