Pfsense 2.0 nanobsd CF + HDD + squid + ligthsquid + tftp + openvpn NOTAS
-
Hola chicos, he estado montando un sistema nanobsd en CF con un HDD para la cache y logs de Squid y ligthsquid, tftp para telefonos ip.
Asi que aporto las notas que estoy tomando mientras lo voy puliendo y podemos comentar como mejorarlo y optimizar la vida de la CF, ya que muchas de estas cosas no estan documentadas.El sistema es un atom D510, 1Gb ram, CF 1G sandisk, HDD ide 40Gb, interface de red intel dual 10/100 + 1Gb integrada (realtek :'( ) y posiblemente una cryptocard BCM5822 que aun no me funciona.
• Tarjetas de red marvel, detectadas como msk y mensaje en la consola unrecoverable pci-express error o similar: poner esto en el /boot/loader.conf
sysctl hw.msk.msi_disable=”1”
hw.pci.enable_msi=”0”
hw.pci.enable_msix=”0”• Squid lento: poner esto en /boot/loader.conf
kern.ipc.nmbclusters="32768"
kern.maxfiles="65536"
kern.maxfilesperproc="32768"
net.inet.ip.portrange.last="65535"• Si en el dmesg sale un mensaje del procesador intel y la licencia, poner esto en /boot/loader.conf
legal.intel_wpi.license_ack="1"
legal.intel_ipw.license_ack="1"• Para usar y montar otro disco:
Primero, quitar el solo lectura: mount -u -w /dev/ufs/pfSense0Editar /etc/platform comentar lo que haya y escribir pfsense.
Reiniciar.Aprovechar e instalar los paquetes como squid y ligthsquid.
Ver los discos detectados: atacontrol list
Limpiar particiones: dd if=/dev/zero of=/dev/ad1 bs=1k count=100
Inicializar disco: fdisk -BI /dev/ad1
Disklabel: disklabel -Bw ad1s1
Reetiquetar slice: bsdlabel -BR ad1s1 /dev/stdin
Disklabel: disklabel -e ad1s1
Crear sistema de ficheros: newfs /dev/ad1s1
Crear directorio: mkdir /mnt/data
Montarlo: mount -w -o noatime /dev/ad1s1 /mnt/data
Comprobar el montaje: mountComprobar el espacio: df –H
Editar fstab: ee /etc/fstab
Añadir la línea: /dev/ad1s1 /mnt/data ufs rw 2 2
Montar inmediatamente: mount –aSi no sale en el mount soft-update, hacer esto: “tunefs -n enable /mnt/data”
Si no se mantiene montado después de reiniciar, instalamos el paquete shellcmd y añadimos “mount -w -o noatime /dev/ad1s1 /mnt/data” y tipo earlyshellcmd.
Dejar el sistema de ficheros en solo-lectura: mount -u -r /dev/ufs/pfsense0.
Editar /etc/platform borrar pfsense y descomentar lo que había.
Reiniciar.• Cambiar path de squid y ligthsquid.
Al activar “logging”, poner en “log store directory”, el path del disco duro montado, por ejemplo “/mnt/data/squid/log”.Cambiar en la pestaña “cache management”, usar de path el disco montado, por ejemplo “/mnt/data/squid/cache”.
Ahora se cambia el path donde el ligthsquid lee los logs del squid. La configuración esta “hardcoded” en el fichero” /usr/local/pkg/lightsquid.inc”,
Es bastante grande asi que editamos en la consola.Primero: ee /usr/local/pkg/lightsquid.inc
Buscamos “ LS_SQUIDLOGPATH” y lo cambiamos por el que usamos, por ejemplo: “/mnt/data/squid/log”.• Cambiar path del TFTP.
Editar “/var/etc/inetd.conf” y cambiarlo para que quede asi:
tftp-proxy dgram udp wait root /usr/libexec/tftp-proxy tftp-proxy -v
tftp dgram udp wait root /usr/libexec/tftpd tftpd -l -s –w /mnt/data/tftpbootcomo asi solo no me funcionaba, modifique el “/usr/local/www/tftp_files.php”
y cambie en todos los sitios donde ponía “/tftpboot” al path que necesitaba, que sería “/mnt/data/tftpboot”. Usar “ee” en la consola porque es bastante grande el fichero.• Problemas en los discos, detección y geom invalid:
Si al instalar da errores de geom invalid, arrancarlo desde otro o desde cd y hacerle “dd if=/dev/zero of=/dev/ad1 bs=1k count=100” y cambiar en la BIOS al tipo LBA.
Las CF también es recomendable ponerlas en LBA.ahora mismo, esta funcionando sin problemas, algunos problemas con el pppoe, pero he cambiado la MTU de la wan a 1492 y he deshabilitado la compresion vjcomp.
se desconectaba cada cierto tiempo (horas) y no reconecta, al reiniciar el router vuelve a negociar, con la version en HDD no me pasaba.PD: no tengo ni z…. de BSD ;D