jueves, 29 de marzo de 2012

pfsense 2: Problemas de Conexion con Telnor.

Esta semana necesitaba hacer una nueva conexion de un oficina ubicada aprox. 25 kms de la planta principal, mis aliados:

Pfsense 2.x.
OpenVPN Site2Site.

La VPN no hay problema, ya la tengo bien afinada, antes de llevar a cabo la instalacion, tenia que hacer la configuracion completa, para esto utilice una conexion de cablemas, ellos como sabran se debe configurar la WAN como DHCP, hasta aqui todo bien, las pruebas de la VPN funcionaron sin problemas.

Despues de ahi ya era momento de probar con la conexion que iba a utilizar, la oficina que hablo trabaja con Telnor y esa conexion es tipo PPPoE, asi que necesitaba 2 parametros basicos:

Usuario arroba prodigy punto net punto mx
Password: mipassword

Nada del otro mundo, no es la 1ra vez que trabajo con telnor, ya tengo otra VPN operando con el mismo ISP.

Ahora, cuando trate de entablar la comunicacion solo funciono 2 veces, le batalle mucho pero al fin logre llevar a cabo ese enlace con muchos problemas, pero algo no andaba bien.

Ya que a veces si funcionaba otras no, despues de algunos dias ya no logre hacer que se conectara, reinicie, restableci el modem infinidad de veces, con pfsense subia bajaba, borrada la wan, le cambiaba la nic(este modelo tiene 3) en fin tambien hice muchas re-configuraciones.

El modem es uno ya conocido por muchos de nosotros, 2wire modelo 2701HG-T, este modem tiene su forma de configurarse para que otro router tome el control de la conexion, ya que es altamente recomendable que se ponga en modo puente, asi le pasa el control total a el router que tiene atras.

De lo contrario estariamos agregando una capa mas de seguridad y podrias a ver problemas de desempeno.

Para esto necesitamos hacer lo siguiente en el modem que tiene la IP 192.168.1.254, entrar a la pestana de enlace de banda ancha, deshabilitar la busqueda PVC y poner el tipo de conexion en DHCP o IP Directa, borrar los datos del usuario+password y guardar.

De debemos entrar a la consola avanzada, que es el mismo ip en el navegador +mdc que seria:

http://192.168.1.254/mdc

De ahi es buscar en el menu de la izquierda la opcion "Configuracion de Servicios", aparece en la parte de arriba un "checkbox" palomeado, le quitamos la paloma y segun ahi dice que con esto el modem pasa a modo puente que es lo que deseamos.

Cuando lo ponemos en este modo dice que por default el IP del modem se va a poner en 192.168.1.254, yo prefiero cambiarlo ya que una de mis redes que cruzan por el tunel usan esa subred, asi que la cambio a otra que no use como 172.16.0.1.

Hasta aqui todo bien, solo es cuestion de configurar nuestra WAN, como dijimos, servicio PPPoE, usuario+password y si gustan una descripcion el cual solo acepta letras+numeros.

Salvamos y debemos recibir conexion, asi de simple.

Pero mi problema es que despues de varias dias tratando y tratando, llegue a el punto de hablar con alguien de telnor, fue una mujer, confirme los mismos pasos, me dijo que era correcto, entonces volvi a probar, y nada.

Despues volvi hablar, me contesto un hombre, pero este amigo si que no sabia bien que hacer me dio unos pasos erroneos, pero lo bueno que consegui que me cambiara el modem.

Desgraciadamente me dio el mismo modelo pero nuevo, volvi a intentar y de nuevo sin conexion.

Me llego un mensaje en la cabeza "No sera que Pfsense se corrompio con tanta modificacion", mi equipo es un sistema empotrado ALIX, si han seguido mi blog donde explico como instalar pfsense en la version nano, ese mismo equipo es.

Se instala en una memoria CF, algo me decia que reinstalar de nuevo a pfsense e intentara.

Pues lo hice, copie de nuevo la imagen desde mi ubuntu y voy de nuevo a probar...

Por fin conexion exitosa.

Que paso?

Quiero pensar que con tantas veces que estuve modificando, borrando, agregando datos a la WAN se corrompio alguna configuracion o ejecutable, recordar que las memorias CF no son aptas para tanta escritura, se supone que la version nano trabaja en memoria, pero usa la CF para almacenar todo el OS para cargarlo a memoria una vez que arranca.

Es mi teoria, desconozco aun bien como funciona pfsense, pero gracias a Dios que logre entablar la comunicacion, asi que manana voy a meter la VPN, ya tengo todo listo para configurar mi pfsense e instalarlo y que esos individuos empiencen a trabajar.

Saludos!!!

martes, 27 de marzo de 2012

Postfix: Como puedo monitorear una cuenta de correo?

Ahi ocaciones que deseamos saber si existe problema con nuestro servicio de correo, o bien deseamos monitorear una o varias cuentas de correo.

Existe un parametro en postfix que nos ayuda a llevar a cabo esto demanera facil:

  • sender_bcc_maps
  • recipient_bcc_maps
sender_bcc_maps= nos ayuda a que todo lo que envie una cuenta de correo le mande una copia a otra.

recipient_bcc_maps= nos ayuda a que todo lo que recibe una cuenta de correo le mande una copia a otra.

El manual habla de varios formas de configurar los mapeos, pero vamos a usa una muy sencilla:

cuentaamonitorear@midominio.com cuentamonitor@midominio.com

Asi de simple, para esto creamos una archivo en la ruta donde se encuentra la configuracion de postfix, yo uso nombres que me permitan entender el significado.

archivo sender_bcc

Contenido:

usuario1@midominio.com sysadm@midominio.com

Salvamos el archivo, con esto todo lo que envie el usuario1@ se va ir una copia a el usuario sysadm@

archivo recipient_bcc

Contenido:
usuario2@midominio.com sysadm@midominio.com

Salvamos, todo lo reciba el usuario usuario2@ le llega una copia a usuario sysadm@.

Otra cosa, antes de usar estos parametros debebemos habilitarlos en la configuracion master de postfix, por ahi en su archivo van a tener unas lineas como estas si no las agregan y deben reiniciar su servicio.

recipient_bcc_maps = hash:/etc/postfix/recipient_bcc
sender_bcc_maps = hash:/etc/postfix/sender_bcc

De ahi sigue generar los archivos en formato que el necesita segun el manual:

http://www.postfix.org/postconf.5.html

Ejecutan esto, le tienen que dar la ruta completa  si no estan en el folder o si estan solo el archivo como es mi caso:

postmap sender_bcc
postmap recipient_bcc

Les aparecen 2 archivos en el folder con la extension '.db'.

recipient_bcc.db
sender_bcc.db

Ya solo prueban  vean si les llegan los correos a sysadm o a el usuario que hayan puesto como monitor.

Aqui yo puse los dos parametros a monitorear, pero ustedes a lo mejor solo necesitan sender o recipient, ya es cosa de que desean hacer.

Cuando quieran deshabilitar los mapeos borran el contenido y vuelven a ejecutar el comando postmap para que genere los archivo en blanco.

Pueden agregar tantos mapeos gusten a los archivos, si quieren ponerles otro nombre solo recuerden que main.cf debe saber la ruta y nombres de los archivos.

Saludos!!!

lunes, 26 de marzo de 2012

pfsense 2 Nano: rotanto logs de squid solucion temporal

Analizando la situacion de squid y viendo que en el foro gabacho no hay respuesta a mis preguntas me vi en la necesidad de retornar a el foro de freebsd.

Haya un usuario 'Morte' que pasa por el mismo caso me dio una solucion temporal que el esta usando:

cat /var/log/squid/access.log > /db/home/squid-logs/$date.log
echo -n '' > /var/log/squid/access.log
chown squid:squid /var/log/squid/access.log
squid -k rotate
bzip2 -9f  /db/home/squid-logs/$date.log


De ahi logre hacer un script que hace algo parecido, en la version nano el cache esta deshabilitado, me interesa el access.log que no crezca mucho, deseo mantener al menos 1 mes de logs.

Yo llegue esto:

#1tomamos la variable para marcar nuestro log como el dia del mes
dia=`date '+%d'`
#2 nos movemos a el folder de logs de squid
cd /var/squid/logs/
#3 mandamos el contenido de access.log a el archivo nuevo de nombre $date.log
/bin/cat ./access.log > ./$dia.log
#4 vaciamos el contenido de access.log
/bin/echo -n '' > ./access.log
#5 confirmamos los permisos del archivo access.log
/usr/sbin/chown proxy:proxy ./access.log
#6 reconfiguramos squid
/usr/local/sbin/squid -k reconfigure
#7 comprimimos el archivo de log creado.
/usr/bin/gzip ./$dia.log



Ya solo meti mi batch a cron y a trabajar, lo probe y funciona, si ven aqui solo puedo guadar 30 dias segun el mes si tiene 30/31, pero funciona.

Esto me da tiempo de ver como arreglar el problema de squid.

Este batch lo integre a cron asi:

55 21 * * * root /root/scripts/sarg-reports.sh today
59 21 * * * root /root/scripts/squidr.sh

Saco mi reporte y enseguida roto el log.

Claro que esto corre a las 9PM pero lo voy a poner a las 11:55 PM, vamos a seguirle a ver como reparar el problema de squid, saludos!!!

domingo, 25 de marzo de 2012

pfsense 2: rotacion de logs de squid con problemas.

 Hola, si han seguido mi camino con squid a lo mejor ya notaron que la rotacion de sus logs en la version nanobsd no funciona.

Esto me di cuenta esta semana, al parecer es con la version nanobsd, pero voy a investigar en la version con vga.

Segun mis investigaciones, el problema radica en que por alguna razon misteriosa si los archivos logs de squid que por default se localizan en:

/var/squid/logs/

No tienen los permisos 777, al momento de ejecutar el comando ya sea atraves de cron que es lo mas recomendable o bien haciendolo manual:

/usr/local/sbin/squid -k rotate

No hace nada, pero al momento de ejecutar:

chmod 777 /var/squid/logs/*
/usr/local/etc/rc.d/squid.sh restart
/usr/local/sbin/squid -k rotate

De aqui en adelante la rotacion no tiene problema.

He estado revisando el squid.inc que es de los que se encarga de configurar a squid al arrancar el sistema pero aun no doy con la linea donde colocar el fix.


Lo que estoy haciendo por el momento es en mi script llamado zsquid.sh agregando el comando para darle los permisos:

chmod 777 /var/squid/logs/*

Pero aun me falta agregar el comando para reiniciar squid, estoy trabajando en esto ya que deseaba hacer uso del comando "at" ya que este nos permite agendar una tarea una sola vez, asi que deseaba ahi agregar el restart en la noche, pero este comando parece que no funciona en pfsense.

Asi que vamos a ver como atacar este problema, saludos!!!

lunes, 19 de marzo de 2012

Pfsense 2: Instalacion desde cero version nano.

Tengo que conectar una oficina a la planta de produccion, voy hacer uso de la ultima version de pfsense que es la 2.0.1, el equipo que voy a usar es una sistema embebido, el modelo es este:
Imagen 1: Sistema Alix.
La conexion la vamos hacer con OpenVPN para crear el tunel de este oficina a la planta de produccion, que vamos a configurar:

  • Configuracion Basica de Pfsense.
  • WAN
  • DNS Forwarder 
  • OpenNTP
  • DHCP
  • Syslog
  • Firewall
  • Alias
  • DNS Dinamico
  • OpenVPN
  • NAT 
  • Paquetes
  • SSH
Datos de la red:

Red: 192.168.4.0/24
LAN: 192.168.4.1
WAN: DHCP.

Nuestro provedor aca en mi ciudad es CableMas, asi que nuestra WAN debe ser DHCP.

La memoria CF es de 8GB, asi que la version adecuada para mi es esta:
Imagen 2: Version nano a instalar.
No voy a mostrar como copear el archivo a la memoria, de eso hay mucha informacion.

Prendiendo el equipo
Para poder tambien accesar el equipo que carece de tarjeta de video estoy haciendo uso del puerto serial, cable serial hembra-hembra nulo y atraves de hyper terminal de windows estoy viendo la consola y tenemos esto:
Imagen 3: Sistema Nano en Operacion.
Lo primero es darle el IP a la tarjeta de red, entonces nos vamos por este camino:
Option 2 ->2 LAN
192.168.4.1
24(Subnet)
DHCP: y
Direccion Inicial: 192.168.4.100
Direccion Final: 192.168.4.110
Do you want to revert to HTTP as the webConfigurator protocol? (y/n): y
...
Hace la operacion...
...
Listo ya tenemos nuestra lan en la red deseada.
Imagen 4: LAN configurada.
Accesando el GUI
Para esto nuestro equipo debe estar en la misma red de pfsense, entonces como ya tenia una IP asignada deshabilito mi tarjeta de red y la habilito para recibir nueva IP.
Imagen 5: Recibiendo IP de mi Pfsense.
Ya con esto es hora de irse a Firefox y a poner el IP de mi LAN.
Imagen 6: Accesando el GUI.
Ya conocen los datos por default, siempre ahi que cambiar el password antes de conectar la WAN, una vez accesando empieza el wizard.
Imagen 7: Wizard de Pfsense.
Imagen 8: Datos de mi hostname.
Imagen 9: Dando de alta mi zona de horario.
Aqui no le a poner mucha atencion ya que mas adelante yo voy a dar de alta los servidores que voy a utilizar para sincronizar la hora.
Imagen 10: Configurando WAN.
Imagen 11: Configurando LAN.
Como ya habiamos configurado la LAN no hay nada que cambiar aqui nada.
Imagen 12: Poner password fuerte.
Imagen 13: Parte final del wizard.
Imagen 14: Esperar unos segundos.
Imagen 15: Pfsense listo para trabajar.
Ya hemos terminado la 1ra fase de configuracion, lo que sigue es configurarlo a nuestras necesidades. Lo que yo hago enseguida es reiniciar a pfsense para probar todo lo hecho anteriormente.
Opciones Generales
Es la 1ra opcion donde yo voy a meter datos.
Imagen 16: Accesando opciones generales.
Por alguna razon pfsense no acepto mis datos para el hostname, aqui es donde lo doy de alta.
Aqui voy a necesitar saber los siguientes datos, el hostname ya lo tengo, pero necesito saber que servidores del tiempo externos voy a usar para sincronizar mi pfsense.

Para ello me voy a el sitio pool.ntp.org me voy a la zona norte america y nos muestra 4 posibles sitios a usar.
  • server 0 north-america pool ntp org 
  • server 1 north-america pool ntp org 
  • server 2 north-america pool ntp org 
  • server 3 north-america pool ntp org
NOTA: Elimine los puntos para que las aranas no los tomen para sus datos.

Como puedo saber cuales usar o puedo usar todos?

Bueno yo siempre uso 3, como decido cual usar pues con el famoso ping, el que tenga la distancia mas corta sera el # 1, asi que me voy a mi consola serial y le mando 10 pings a cada uno.

ping -c 10 0 north-america pool ntp org
...
--- 0.north-america.pool.ntp.org ping statistics ---
10 packets transmitted, 10 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 76.445/87.787/116.176/12.822 ms

ping -c 10 0 north-america pool ntp org
...
--- 1.north-america.pool.ntp.org ping statistics ---
10 packets transmitted, 10 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 88.956/92.489/95.236/1.754 ms

ping -c 10 2 north-america pool ntp org
...
--- 2.north-america.pool.ntp.org ping statistics ---
10 packets transmitted, 10 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 36.733/38.526/40.082/1.324 ms
ping -c 10 3 north-america pool ntp org
...
--- 3.north-america.pool.ntp.org ping statistics ---
10 packets transmitted, 10 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 86.117/91.993/108.681/7.951 ms

Ganadores:
2, 0, 1

Metemos los datos de nuestro hostname, los parametros de nuestros servidores de tiempo si usan mas de 1 separenlos por 1 espacio en blanco y salvan.

Imagen 17: Configuracion general.

De nuevo, reinicio para confirmar que mis hostname a sido dado de alta.

Confirmamos el hostname:
Imagen 18: Hostname correcto.
Bien ya tenemos el hostname que es importantisimo que sea el correcto, ya que dyndns.org lo requiere, en mi caso mi pfsense va a ser accesado desde Internet, el hostname para dyndns queda asi:

midominio . dyndns . org

Ahora mi tiempo es correcto?
Imagen 19: Tiempo correcto.
El tiempo esta correcto, parece que se ha sincronizado adecuadamente.

Ahora vamos a las opciones avanzadas.

Opciones Avanzadas
Imagen 20: Opciones avanzadas.
Aqui vamos a cambiar lo siguiente:
HTTP --> HTTPS.
Puerto--> distinto a el 443
SSH --> distinto a el 22.

Ver siguiente imagen.
Imagen 21: Etiqueta Admin.

Una vez elegido los valores deseados,  yo nunca uso los valores default, prefiero cambiarlos para estar fuera de los rootkits y escaneos comunes.

Una vez presionado el boton Save, el cambio se hace rapido.
Imagen 22: Cambios generados, aviso del sistema.
Imagen 23: Pfsense nos redirecciona a la pagina inicial.
Imagen 24: Avisos del sistema.
Como se puede ver la imagen 23, cuando activamos ssh, pfsense nos avisa en la parte superior derecha, un click y le decimos que estamos enterados.

Ahora nos vamos a la pestaña: Firewall/NAT y hacemos lo siguiente:
Imagen 24: opciones de Firewall/NAT.
Observern la imagen 24, hemos habilitado la opcion de generar ID aleatoriamente para nuestros paquetes, les recuerdo que si ven que su red se comporta de manera extrana, como samba, folders compartidos de windows, recuerden esta opcion, revisen sus logs de vez en cuando, cuando algo se comporte raro.

Si eso pasa deshabilitan esta opcion y vean si las cosas mejoraron.
  • Pestana Networking no la toco.
  • Miscellaneous no la toco.
  • Systema Tunables no la toco.
  • Notifications no la toco.
Bien hasta aqui he configurado las opciones basicas para mi, lo que sigue es ir sobre el dns, un servicio escencial para cualquier red.

DNS forwarder
Vamos hacer lo siguiente:
Imagen 25: Opciones personales.
OpenNTP
Deseo que mis clientes tomen a pfsense como servidor del tiempo, ya hemos configurado pfsense, solo es cuestion de habilitar el servicio para que permite que otros clientes de la red puedan pedirle a el les proporcione la hora correcta, para esto hacemos lo siguiente:
Imagen 26: Accesando el OpenNTP.
Imagen 27: Habilitando el openntp.
Listo es muy sencillo poner a trabajar este servicio, solo les recomiendo que esperan un par de horas ante de poder hacer uso del servicio.
Configurando Clientes para NTP.
Si los clientes no desean hacer uso de los datos que nos mande el DHCP, podemos configurarlo a mano, y cuando se sincronice nos mostraria un mensaje como este:
Image 28: Windows XP sincronizando su tiempo con pfsense.
Listo, lo hacemos a mano.
DHCP
Viene ahora la parte de configurar el servicio mas comunmente usando de cualquier firewall, aqui yo lo que hago es dar de alta cada uno de mis clientes y niego todos los clientes que no son de mi red, ya que cuando estas manejando +50 estaciones es dificil dar acceso a cualquier equipo que se conecta a la red.

Para esto pfsense nos ayuda, ver lo que sigue.
Imagen 29: Configurando DHCP.
En mi caso, trabajamos de 7:00AM a 5:00PM, entonces multiplicando 8 horas x 3600 tenemos que mi lease inicial debe ser de 28800 segundos y el maximo +2 horas de 36000.

Aparte que deseo que cuando el cliente obtenga el lease tambien se vaya el IP de pfsense como servidor de tiempo.

Al inicio del post, habiamos configurado ya los rangos de nuestro dhcp, pero como a el GUI de pfsense no le agrada que se haga por consola, no hay problema aqui lo podemos hacer de nuevo alcabo es muy facil.

Salvamos y vemos la siguiente ventana:
Imagen 30: Cambios aceptados.
Ahora viene una opcion que yo uso, la habia  mencionado arriba, voy a dar de alta la MAC address de mi equipo para que siempre le otorge la misma IP y cuando se conecte otro cliente no le de IP le niego el acceso y asi poder controlar las estaciones de mi red, la 1ra vez que se hace es tardado, pero una vez hecho el mantenimiento es sencillo.

Vamos dando de alta mi estacion:
Imagen 30: Click para dar de alta una estacion en el dhcp.
Imagen 31: Datos de mi estacion.
Imagen 32: Aceptar cambios.
Imagen 33: Listo.
Renovamos la IP de nuestra estacion:
Imagen 34: Renovacion de IP en estacion.
De aqui sigue ahora si habilitar el parametro de DHCP para que lo que deseo se cumpla:
Imagen 35: Negar todos los clientes que no esten dados de alta.
Salvan y cierren.

Vamos a ver como se va a comportar pfsense cuando un cliente se conecte y quieran hacer uso de nuestra red.
Imagen 36: Clientes tratando de conectarse.
Cuando esto pase debemos estar listos para buscar estas estaciones si no han sido autorizadas por nosotros.

Si es conocido, vamos dandolo de alta y observemos los logs:
Imagen 37: Entregando IP a nuestro cliente.
Listo, el dhcp operando.
Syslog
A mi me gusta que cuando vea los logs aparezcan de arriba hacia abajo y que me muestre 100 logs por cada servicio, esto lo hago asi:
Imagen 38: Configurando syslog.
Firewall
Por default nunca dejo la regla que viene por default en pfsense, por ello necesitamos antes de modificar las reglas saber que necesitamos, vamos a abrir solo lo que mi red necesita, en mi caso 5 cosas para empezar:
  1. Acceso a consultar DNS.
  2. Navegacion sobre el protocolo HTTP(Puerto 80)
  3. Navegacion sobre el protocolo HTTPS(Puerto 443)
  4. Acceso a servidores FTP.
  5. Acceso a Servidores CVSUP de FreeBSD.
Con esto ya podemos trabajar sobre nuestas reglas, por ello empezamos eliminando la regla por default y ademas vamos hacer uso de los alias para dar de alta ahi los servidores de FreeBSD que necesitan actualizarse.

Vamos empezando por eliminar la regla default y agregando reglas para nuestra lista hasta el 4.

a)Eliminamos la regla.
Imagen 39: Eliminando regla general.
Imagen 40: Aceptar borrado.
Imagen 41: Aplicar cambio.
b) Agregando nuestras reglas: DNS.
Imagen 41: 1ra regla a ingresar el dns.
Recordar siempre, salvar y aplicar cambio.
c)HTTP:
Imagen 42: Regla para HTTP.
Al final tenemos esto:
Imagen 43: Reglas activadas.
Alias
Necesitamos una regla que nos ayude a permitir a nuestros servidores actualizarse como mis FreeBSD, nadie mas necesita el puerto del cvsup, asi que vamos creado nuestro alias.
Imagen 44: Creando Alias.
Imagen 45: Nuestro alias para nuestros FreeBSD.
Salvamos, aplicamos,cerramos, listo.

Agregamos nuestra regla:
Imagen 46: Regla para nuestro alias.
A el final tenemos esto en nuestras reglas:
Imagen 47: Reglas finales.
Bien lo que sigue es configurar mi dns dinamico.

DNS Dinamico
Antes de arrancar la configuracion de OpenVPN necesito que mi pfsense pueda tener activado el servicio de DNS dinamico, deseaba hacer uso de dyndns pero ya no dan cuentas gratis, asi que voy a tener que hacer uso de no-ip, nunca lo he usado vamos a ver como se comporta.

En la cuenta de no-ip debemos dar de alta el IP de nuestro enlace, y el tiene manera de saberlo, mi configuracion del portal esta asi:
Imagen 48: Configurando el portal de no-ip.org.
Esta es mi configuracion en pfsense:
Imagen 49: Configurando no-ip de lado de pfsense.
Salvamos y a ver los logs:
Imagen 50: no-ip logs en pfsense.
Parece que ya podemos hacer uso de nuestro nombre y accesar nuestro equipo desde cualquier parte del mundo.

OpenVPN
Viene la parte mas importante de todo esto, como dije a el inicio, la razon principal de este equipo es poder conectarme a la red de la planta de produccion, aqui vamos a llevar a cabo esta tarea.

Segun mi manual vamos a requerir ciertos datos de mi servidor maestro:

Pasos a seguir:
Imagen 51: Abri el cert manager.
Necesitamos los certificados de nuestro servidor y los de este equipo.
Imagen 52: Importar certificados del servidor.
Imagen 53: Importando certificados de mi servidor.
Imagen 54: Certificados importados del servidor.
Imagen 55:  Importando certificados para mi cliente.
Imagen 56: Datos de mis certificados.
Imagen 57: Operacion terminada.
Ya hemos hecho lo basico, le dimos la informacion necesaria para poder llevar a cabo la conexion, que fue:
1) Importar los certificados de nuestro servidor remoto:
  • server.crt
  • server.key
2) Importar los certificados de nuestro cliente:
  • cliente.crt
  • cliente.key
Recordar mi post sobre OpenVPN, debemos recordar siempre el CN=Common Name de nuestro cliente.

Empezamos:
Imagen 58: Accesando OpenVPN desde el GUI.
Imagen 59: Agreagamos nuestro cliente OpenVPN.
Imagen 60: Configuracion de nuestro cliente.
Imagen 61: Configurando acceso a nuestro cliente en el server.
 Hemos dado de alta nuestro cliente a la red de la empresa atraves de OpenVPN, ahora sigue ver si funciono o no, para esto tenemos en el dashboard la opcion, vamos a darla de alta:
Imagen 62: Agregando OpenVPN a el dashboard.
Imagen 63: OpenVPN en el dashboard.
Como podemos ver, hemos logrado entablar la conexion con el pfsense remoto, lo que sigue es probar si funciona la conexion, esto lo hacemos muy facil, este cliente esta en la red:

192.168.4.0/24

La planta de produccion es la red:

192.168.2.0/24, ahi tengo un servidor apache en el IP: 192.168.2.15, vamos a ver si responde:
Imagen 64: Servidor atraves de la VPN respondiendo.
Hemos logrado entablar la conexion, esta operando, ahora no estoy muy satisfecho con la conexion, tengo un servidor mysql en la IP 192.168.2.3, vamos a ver si responde:
Imagen 65: Conexion a Mysql Fallo.
No significa que la VPN no funciona bien, significa que nuestro firewall esta haciendo su labor, recordar que solo estamos abriendo lo que necesitamos, vamos a ver los logs del firewall:
Imagen 66: Logs de pfsense bloqueando conexion a MySQL.
Como podran ver en la imagen anterior, ahi aparece que el puerto 3306 de MySQL esta siendo bloqueado, como yo deseo que los usuarios de esta red tengan acceso a ese servicio, pero yo se que ellos no necesitan ir a ningun servidor en Internet, si no solo los de la empresa, por lo tanto abro un alias y ahi agrego los servidores de la empresa para que ellos solo puedan ir a esos sistemas:
Imagen 67: Alias de nuestros servidores remotos.
Imagen 68: Regla para mi alias para MySQL.
Probamos de nuevo:
Imagen 69: MySQL ya responde.
MySQL ha respondido el llamado, la VPN sigue funcionando.

Hasta aqui hemos logrado crear una conexion con nuestro pfsense hacia otro pfsense atraves de OpenVPN, creo que hemos visto paso a paso como llegar hasta este punto.

Lo que sigue es como configurar Nat para yo poder accesar remotamente este equipo para administrarlo sin necesidad de ir fisicamente a la oficina donde quedara instalado.

NAT
Para poder dar acceso a cualquier servicio interno desde Internet debemos hacer uso de la funcion que nos proporciona pf que es Port Forward, para esto necesitamos saber datos basicos hacerca de lo que deseamos abrir, por ejemplo, yo deseo poder accesar el GUI desde Internet, los datos son los siguientes:

IP Interna del equipo: 192.168.4.1
Puerto que deseo accesar: XYZ
Protocolo: TCP

Listo hacemos lo siguiente:
Imagen 70: Configurando Port-Forward.
Imagen 71: Datos de nuestro sistema interno.
 Save -> Apply -> Close.
Imagen 72: Por Forward configurado.
Ya con esto, yo entro a cualquier equipo con conexion a Internet apunto a mi nombre que tengo con no-ip, puerto especifico y si el firewall del equipo remoto no me bloquea, debo poder accesar remotamente mi equipo.
Paquetes
Ahora vamos a instalar los paquetes que yo voy a necesitar para la operacion diaria.

  1. cron
  2. diag_new_states
  3. squid(el mas tardado en esta instalacion y mas por ser un sistema embebido)
Estos no tiene ciencia instalarlos, el GUI nos ayuda sin problemas.


Paquete desde FreeBSD:
  1. sarg
  2. ifstat
Pare esto necesitamos entrar en la consola y saber las rutas de cada paquete, en otros post he mostrado como se instala sarg asi que leanlo y no tendran problemas.
SSH Por Llave Publica.
Tambien en otro post toco este tema, asi que si desean configurarlo por llave publica leanlo.