Per tal d'instal·lar el programari utilitzarem la següent comanda amb el terminal:
$ sudo apt-get install squid3
[email protected]:~$ sudo apt-get install squid3 [sudo] password for rafel: S'està llegint la llista de paquets… Fet 0% S'està construint l'arbre de dependències S'està llegint la informació de l'estat… Fet% Els paquets següents s'han instaŀlat automàticament i ja no són necessaris: browser-plugin-gnash libmusicbrainz4-3 menu-xdg ekiga language-pack-zh-hans language-pack-kde-ca-base python-gnome2 gnuchess-book kde-l10n-ca gtali glchess libclutter-gst-1.0-0 gnome-video-effects gnome-games cheese gdebi language-pack-kde-ca quadrapassel language-pack-kde-en gnobots2 liferea-data cheese-common libboost-program-options1.46.1 lightsoff libcheese3 language-pack-kde-zh-hans python-pyorbit gdebi-core libclutter-gtk-1.0-0 language-pack-kde-en-base kde-l10n-engb gnibbles gedit-plugins libboost-thread1.46.1 libpt2.10.2 swell-foop gdm gnome-dictionary kde-l10n-zhcn gnotski gnome-backgrounds gnome-search-tool libboost-signals1.46.1 libcluttergesture-0.0.2-0 libunique-1.0-0 libgdict-common iagno glines gnome-icon-theme-extras gir1.2-gucharmap-2.90 libboost-iostreams1.46.1 libmx-1.0-2 libopal3.10.2 fonts-cantarell liferea gnash gnotravex libcheese-gtk21 gnect language-pack-zh-hans-base libgdict-1.0-6 python-wnck hamster-applet gnuchess gnash-common libclutter-imcontext-0.1-0 language-pack-kde-zh-hans-base dconf-tools sound-juicer Empreu «apt-get autoremove» per a suprimir-los. S'instaŀlaran els següents paquets extres: squid-langpack squid3-common Paquets suggerits: squidclient squid-cgi S'instaŀlaran els paquets NOUS següents: squid-langpack squid3 squid3-common 0 actualitzats, 3 nous a instaŀlar, 0 a suprimir i 0 no actualitzats. S'ha d'obtenir 1952 kB d'arxius. Després d'aquesta operació s'empraran 6481 kB d'espai en disc addicional. Voleu continuar [S/n]? s Bai:1 http://es.archive.ubuntu.com/ubuntu/ precise/main squid-langpack all 20111114-1 [307 kB] Bai:2 http://es.archive.ubuntu.com/ubuntu/ precise-updates/main squid3-common all 3.1.19-1ubuntu3.12.04.1 [122 kB] Bai:3 http://es.archive.ubuntu.com/ubuntu/ precise-updates/main squid3 i386 3.1.19-1ubuntu3.12.04.1 [1523 kB] S'ha baixat 1952 kB en 0s (11,6 MB/s) Selecting previously unselected package squid-langpack. (S'està llegint la base de dades… hi ha 351607 fitxers i directoris instaŀlats actualment.) S'està desempaquetant squid-langpack (de …/squid-langpack_20111114-1_all.deb)… Selecting previously unselected package squid3-common. S'està desempaquetant squid3-common (de …/squid3-common_3.1.19-1ubuntu3.12.04.1_all.deb)… Selecting previously unselected package squid3. S'està desempaquetant squid3 (de …/squid3_3.1.19-1ubuntu3.12.04.1_i386.deb)… S'estan processant els activadors per a ureadahead… S'estan processant els activadors per a ufw… S'estan processant els activadors per a man-db… S'està configurant squid-langpack (20111114-1)… S'està configurant squid3-common (3.1.19-1ubuntu3.12.04.1)… S'està configurant squid3 (3.1.19-1ubuntu3.12.04.1)… Creating Squid HTTP proxy 3.x spool directory structure 2013/01/08 20:41:43| Creating Swap Directories squid3 start/running, process 9108
Esbrinem el port que utilitza amb la següent comanda:
$ nmap localhost
[email protected]:~$ nmap localhost Starting Nmap 5.21 ( http://nmap.org ) at 2013-01-08 20:48 CET Nmap scan report for localhost (127.0.0.1) Host is up (0.00039s latency). Not shown: 993 closed ports PORT STATE SERVICE 22/tcp open ssh 23/tcp open telnet 80/tcp open http 631/tcp open ipp 3128/tcp open squid-http 3306/tcp open mysql 5432/tcp open postgresql Nmap done: 1 IP address (1 host up) scanned in 0.10 seconds
Una vegada instal·lat el programari recompilem el paquet.
$ cd /usr/src $ sudo apt-get install dpkg-dev apache2 squid-langpack $ sudo apt-get build-dep squid3 squid-langpack squid-cgi $ sudo apt-get source squid3
Una vegada recompilat el paquet squid, editarem l'arxiu squid3-3.1.19/debian/rules i afegirem les següents línies (en negreta).
[email protected]:/usr/src/squid3-3.1.19/debian$ gedit rules.
#! /usr/bin/make -f export DEB_BUILD_MAINT_OPTIONS = hardening=+all include /usr/share/cdbs/1/rules/debhelper.mk include /usr/share/cdbs/1/class/autotools.mk include /usr/share/dpkg/buildflags.mk INSTALLDIR := $(CURDIR)/debian/tmp datadir=/usr/share/squid3 DEB_DH_INSTALL_SOURCEDIR := $(INSTALLDIR) DEB_INSTALL_DOCS_squid3-common := CONTRIBUTORS CREDITS QUICKSTART RELEASENOTES.html \ SPONSORS DEB_CONFIGURE_EXTRA_FLAGS := --datadir=/usr/share/squid3 \ --sysconfdir=/etc/squid3 \ --mandir=/usr/share/man \ --with-cppunit-basedir=/usr \ --enable-inline \ --enable-async-io=8 \ --enable-storeio="ufs,aufs,diskd" \ --enable-removal-policies="lru,heap" \ --enable-delay-pools \ --enable-cache-digests \ --enable-underscores \ --enable-icap-client \ --enable-follow-x-forwarded-for \ --enable-auth="basic,digest,ntlm,negotiate" \ --enable-basic-auth-helpers="LDAP,MSNT,NCSA,PAM,SASL,SMB,YP,DB,POP3,getpwnam,squid_radius_auth,multi-domain-NTLM" \ --enable-ntlm-auth-helpers="smb_lm," \ --enable-digest-auth-helpers="ldap,password" \ --enable-negotiate-auth-helpers="squid_kerb_auth" \ --enable-external-acl-helpers="ip_user,ldap_group,session,unix_group,wbinfo_group" \ --enable-arp-acl \ --enable-esi \ --enable-zph-qos \ --enable-snmp \ --enable-useragent-log \ --enable-wccpv2 \ --disable-translation \ --with-logdir=/var/log/squid3 \ --with-pidfile=/var/run/squid3.pid \ --with-filedescriptors=65536 \ --with-large-files \ --with-default-user=proxy DEB_HOST_ARCH_OS := $(shell dpkg-architecture -qDEB_HOST_ARCH_OS 2>/dev/null) ifeq ($(DEB_HOST_ARCH_OS), kfreebsd) DEB_CONFIGURE_EXTRA_FLAGS += --enable-kqueue else DEB_CONFIGURE_EXTRA_FLAGS += --enable-linux-netfilter endif DEB_MAKE_CLEAN_TARGET = distclean install/squid3:: install -m 755 -g root -d $(INSTALLDIR)/usr/lib/cgi-bin mv $(INSTALLDIR)/etc/squid3/squid.conf.documented $(INSTALLDIR)/etc/squid3/squid.conf mv $(INSTALLDIR)/usr/lib/squid3/cachemgr.cgi $(INSTALLDIR)/usr/lib/cgi-bin/cachemgr.cgi mv $(INSTALLDIR)/usr/sbin/squid $(INSTALLDIR)/usr/sbin/squid3 mv $(INSTALLDIR)/usr/share/man/man8/squid.8 $(INSTALLDIR)/usr/share/man/man8/squid3.8 mv $(INSTALLDIR)/usr/share/man/man8/pam_auth.8 $(INSTALLDIR)/usr/share/man/man8/squid3_pam_auth.8 mv $(INSTALLDIR)/usr/share/man/man8/squid_ldap_auth.8 $(INSTALLDIR)/usr/share/man/man8/squid3_ldap_auth.8 mv $(INSTALLDIR)/usr/share/man/man8/squid_ldap_group.8 $(INSTALLDIR)/usr/share/man/man8/squid3_ldap_group.8 mv $(INSTALLDIR)/usr/share/man/man8/squid_session.8 $(INSTALLDIR)/usr/share/man/man8/squid3_session.8 mv $(INSTALLDIR)/usr/share/man/man8/squid_unix_group.8 $(INSTALLDIR)/usr/share/man/man8/squid3_unix_group.8 mv $(INSTALLDIR)/usr/share/man/man8/ncsa_auth.8 $(INSTALLDIR)/usr/share/man/man8/squid3_ncsa_auth.8 mv $(INSTALLDIR)/usr/share/man/man8/squid_db_auth.8 $(INSTALLDIR)/usr/share/man/man8/squid3_db_auth.8 mv $(INSTALLDIR)/usr/share/man/man8/squid_radius_auth.8 $(INSTALLDIR)/usr/share/man/man8/squid3_radius_auth.8 install -m 755 -g root -d $(INSTALLDIR)/etc/init.d install -m 755 -g root -d $(INSTALLDIR)/etc/init install -m 755 -g root -d $(INSTALLDIR)/etc/logrotate.d install -m 755 -g root -d $(INSTALLDIR)/etc/resolvconf install -m 755 -g root -d $(INSTALLDIR)/etc/resolvconf/update-libc.d install -m 755 -g root -d $(INSTALLDIR)/etc/ufw/applications.d install -m 755 -g root debian/squid3.rc $(INSTALLDIR)/etc/init.d/squid3 install -m 644 -g root debian/squid3.upstart $(INSTALLDIR)/etc/init/squid3.conf install -m 755 -g root debian/squid3.resolvconf $(INSTALLDIR)/etc/resolvconf/update-libc.d/squid3 install -m 644 -g root debian/squid3.logrotate $(INSTALLDIR)/etc/logrotate.d/squid3 install -m 644 -g root debian/squid3.ufw.profile $(INSTALLDIR)/etc/ufw/applications.d/squid3 install -m 755 -g root -d debian/squid3/var/log install -m 755 -g root -d debian/squid3/var/spool install -m 755 -g root -d debian/squid3/var/run install -m 750 -o proxy -g proxy -d debian/squid3/var/log/squid3 install -m 750 -o proxy -g proxy -d debian/squid3/var/spool/squid3 install -m 755 -g root -d $(INSTALLDIR)/usr/share/man/man1 clean:: # nothing to do
Construïm el paquet: (triga una estona..)
$ sudo apt-get -b source squid3
El procés crearà diferents paquets debian. Per veure de quins paquets és tracta:
$ ls *deb -->Mostra tots els paquets debian
[email protected]:/usr/src/squid3-3.1.19/debian$ ls *deb squid_3.1.19-1ubuntu3.12.04.1_i386.deb squid3-dbg_3.1.19-1ubuntu3.12.04.1_i386.deb squid-common_3.1.19-1ubuntu3.12.04.1_all.deb squid3_3.1.19-1ubuntu3.12.04.1_i386.deb squid-cgi_3.1.19-1ubuntu3.12.04.1_i386.deb squid3-common_3.1.19-1ubuntu3.12.04.1_all.deb squidclient_3.1.19-1ubuntu3.12.04.1_i386.deb
Instal·lem tots els paquets creats anteriorment:
$ sudo dpkg -i squid*.deb
[email protected]:/usr/src/squid3-3.1.19/debian$ sudo dpkg -i squid*.deb Selecting previously unselected package squid. (S'està llegint la base de dades… hi ha 356226 fitxers i directoris instaŀlats actualment.) S'està desempaquetant squid (de squid_3.1.19-1ubuntu3.12.04.1_i386.deb)… S'està preparant per a reemplaçar squid3 3.1.19-1ubuntu3.12.04.1 (fent servir squid3_3.1.19-1ubuntu3.12.04.1_i386.deb)… squid3 stop/waiting S'està desempaquetant el reemplaçament de squid3… S'està preparant per a reemplaçar squid3-common 3.1.19-1ubuntu3.12.04.1 (fent servir squid3-common_3.1.19-1ubuntu3.12.04.1_all.deb)… S'està desempaquetant el reemplaçament de squid3-common… Selecting previously unselected package squid3-dbg. S'està desempaquetant squid3-dbg (de squid3-dbg_3.1.19-1ubuntu3.12.04.1_i386.deb)… Selecting previously unselected package squid-cgi. S'està desempaquetant squid-cgi (de squid-cgi_3.1.19-1ubuntu3.12.04.1_i386.deb)… Selecting previously unselected package squidclient. S'està desempaquetant squidclient (de squidclient_3.1.19-1ubuntu3.12.04.1_i386.deb)… Selecting previously unselected package squid-common. S'està desempaquetant squid-common (de squid-common_3.1.19-1ubuntu3.12.04.1_all.deb)… S'està configurant squid3-common (3.1.19-1ubuntu3.12.04.1)… S'està configurant squid-cgi (3.1.19-1ubuntu3.12.04.1)… S'està configurant squidclient (3.1.19-1ubuntu3.12.04.1)… S'està configurant squid-common (3.1.19-1ubuntu3.12.04.1)… S'està configurant squid3 (3.1.19-1ubuntu3.12.04.1)… Creating Squid HTTP proxy 3.x spool directory structure 2013/01/08 21:43:50| Creating Swap Directories squid3 start/running, process 15564 S'estan processant els activadors per a ufw… S'estan processant els activadors per a ureadahead… S'estan processant els activadors per a man-db… S'està configurant squid3-dbg (3.1.19-1ubuntu3.12.04.1)… S'està configurant squid (3.1.19-1ubuntu3.12.04.1)…
Comprovem que el paquet que acabem d'instal·lar té activat useragent:
$ squid3 -v | grep agent