Inici de sessió d'usuari
Navegació
HOW-TO instal·lar pfSense + squid en Alix.2
Dll, 05/03/2010 - 11:51 | Rene
A continuació s'expliquen els passos per a configurar un pfsense a un alix.2 i com instal·lar-hi un proxy squid i fer-lo federat per a guifi.net.
1.- Download pfSense
L'alix.2 necessita una versió embedded de pfsense. Descarreguem la imatge que s'adapti millor al tamany de la CF que tinguem. Des de qualsevol dels miralls que trobem a http://www.pfsense.org/mirror.php?section=downloads
2.- Download physdiskwrite
physdiskwrite és una petita utilitat que permet escriure imatges de disc. Se la pot trobar a: http://m0n0.ch/wall/physdiskwrite.php
3.- Write CF
Per a grabar la imatge a la CF copiem la imatge de pfsense a la mateixa carpeta on haguem descomprimit el exe de physdiskwrite i des de ms-dos executem:
> cd \pfsense (o el directori on ho tingueu)
>physdiskwrite.exe pfSense-1.2.3-RELEASE-2g-nanobsd.img.gz ( o la imatge que hagueu descarregat)
Per a grabar la imatge a la CF copiem la imatge de pfsense a la mateixa carpeta on haguem descomprimit el exe de physdiskwrite i des de ms-dos executem:
> cd \pfsense (o el directori on ho tingueu)
>physdiskwrite.exe pfSense-1.2.3-RELEASE-2g-nanobsd.img.gz ( o la imatge que hagueu descarregat)
si la imatge que teniu és de 4gb (pex: pfSense-1.2.3-RELEASE-4g-nanobsd.img.gz) cal afegir el flag -u perque permeti escriure a discs majors de 2gb: physdiskwrite.exe -u pfSense-1.2.3-RELEASE-2g-nanobsd.img.gz
4.- Start pfSense
Un cop la CF tingui la imatge cremada, l'insertem a l'alix.2, l'enxufem. La configuració que vé per defecte és:
ip_lan :192.168.1.1
usr: admin
pwd: pfsense
Entrem amb un navegador a la ip_lan i veurem la gui de pfSense, on un wizard en ajuda a la configuració inicial, on podem canviar ip_lan, ip_wan, dns, ...
L'alix.2 té 3 interficies de xarxa mentre que pfSense, per defecte només en configura 2. Per aixecar la tercera, anem a Interfaces > (assign) i la creem clicant al [+].
Un cop la CF tingui la imatge cremada, l'insertem a l'alix.2, l'enxufem. La configuració que vé per defecte és:
ip_lan :192.168.1.1
usr: admin
pwd: pfsense
Entrem amb un navegador a la ip_lan i veurem la gui de pfSense, on un wizard en ajuda a la configuració inicial, on podem canviar ip_lan, ip_wan, dns, ...
L'alix.2 té 3 interficies de xarxa mentre que pfSense, per defecte només en configura 2. Per aixecar la tercera, anem a Interfaces > (assign) i la creem clicant al [+].
5.- Allow Packages
La versió embedded de pfSense té certes limitacions a l'hora d'instal·lar packages, (pex: squid no apareix a la llista System > Packages), per a poder solbentar això farem:
Anem a Diagnostics > Command Prompt > Execute Shell Command
$> mount -o rw /dev/ufs/pfSense/
$> echo "pfSense" > /etc/platform
$> echo "/dev/ufs/pfSense / ufs rw 1 1" > /etc/fstab; echo "/dev/ufs/pfSenseCgf /cf ufs rw 1 1" >> /etc/fstab
Anem a Diagnostics > Reboot system i fem un reboot.
La versió embedded de pfSense té certes limitacions a l'hora d'instal·lar packages, (pex: squid no apareix a la llista System > Packages), per a poder solbentar això farem:
Anem a Diagnostics > Command Prompt > Execute Shell Command
$> mount -o rw /dev/ufs/pfSense/
$> echo "pfSense" > /etc/platform
$> echo "/dev/ufs/pfSense / ufs rw 1 1" > /etc/fstab; echo "/dev/ufs/pfSenseCgf /cf ufs rw 1 1" >> /etc/fstab
Anem a Diagnostics > Reboot system i fem un reboot.
6.- Install de packages
Ara ja tenim disponibles a la versió embedded tots els packages de pfSense disponibles. Instalarem els següents:
- Cron
- Squid
- SquidGuard (opt)
- Lightsquid (opt)
Ara ja tenim disponibles a la versió embedded tots els packages de pfSense disponibles. Instalarem els següents:
- Cron
- Squid
- SquidGuard (opt)
- Lightsquid (opt)
Per a instal·lar-los anem a System Packages i els seleccionem per a instal·lar.
7.- Federated proxy
Primer hem de tenir un servei de proxy donat d'alta en un trasto a guifi.net.
Anem a Diagnostics > Edit File
file path: /usr/bin/proxypasswd.sh
Content:
wget --timeout=240 http://www.guifi.net/es/node/00000/view/federated -qO /tmp/passwd
touch /usr/etc/passwd
OK=`cat /tmp/passwd|wc -l`
NEW=`diff /usr/etc/passwd /tmp/passwd|wc -l`
if [ $OK != "0" ]; then
if [ $NEW != "0" ]; then
cp /tmp/passwd /usr/etc/
/etc/init.d/squid reload
echo "Nou /usr/etc/passwd copiat"
fi;
fi
Primer hem de tenir un servei de proxy donat d'alta en un trasto a guifi.net.
Anem a Diagnostics > Edit File
file path: /usr/bin/proxypasswd.sh
Content:
wget --timeout=240 http://www.guifi.net/es/node/00000/view/federated -qO /tmp/passwd
touch /usr/etc/passwd
OK=`cat /tmp/passwd|wc -l`
NEW=`diff /usr/etc/passwd /tmp/passwd|wc -l`
if [ $OK != "0" ]; then
if [ $NEW != "0" ]; then
cp /tmp/passwd /usr/etc/
/etc/init.d/squid reload
echo "Nou /usr/etc/passwd copiat"
fi;
fi
Cal substituir "00000" per l'id del servei proxy de guifi.net
* Save file
Anem a Diagnostics > Command Prompt
Execute Shell command:
$> chmod 755 /usr/bin/proxypasswd.sh [execute]
$> pkg_add -r -v wget [execute]
$> mkdir /usr/etc [execute]
$> touch /usr/etc/passwd [execute]
$> /usr/bin/./proxypasswd.sh [execute]
Execute Shell command:
$> chmod 755 /usr/bin/proxypasswd.sh [execute]
$> pkg_add -r -v wget [execute]
$> mkdir /usr/etc [execute]
$> touch /usr/etc/passwd [execute]
$> /usr/bin/./proxypasswd.sh [execute]
8.- Set up Cron
Anem a Services > Cron i afegim una nova tasca [+]:
minute: 54
hour: *
mday: *
month: *
wday: *
who: root
command: /usr/bin/proxypasswd.sh
* Save
Anem a Services > Cron i afegim una nova tasca [+]:
minute: 54
hour: *
mday: *
month: *
wday: *
who: root
command: /usr/bin/proxypasswd.sh
* Save
9.- Set up Proxy
Anem a Services > Proxy server
Custom Options: auth_param basic program /usr/local/libexec/squid/ncsa_auth /usr/etc/passwd;
* Save
Anem a Services > Proxy server
Custom Options: auth_param basic program /usr/local/libexec/squid/ncsa_auth /usr/etc/passwd;
* Save