domingo, 14 de agosto de 2016

Enrutamiento estático en Cisco Packet Tracer

Hola amigos aquí les traigo un pequeño ejemplo para aclarar algunos conceptos, el otro día conversando con mis amigos me contaban que necesitaban enrutar dos routers Cisco, podría ser más, siempre en cuando la estructura no sea tan compleja, se sabe que el enrutamiento estático va muy bien en redes no muy grandes y cuando se conoce la estructura y lo bueno en ese caso es que no consume recursos, es una ventaja bastante notoria respecto al enrutamiento dinámico.

Vamos a anotar aquí algunas cosas como cuando usar una máscara de subred adecuada para el escenario y por qué tal máscara y asi vamos a ver una configuración básica y suficiente para un escenario de dos routers Cisco, dos Switches y Pcs.

Escenario:
Es la base, podría ser tres routers o más.

Configuración básica de router
  • Nombre del router
  • Contraseña para usuario privilegiado
  • Contraseña para acceso remoto (telnet o ssh)
  • Banner de bienvenida al router
  • Encriptar las contraseñas
Configurar el router con sus parámetros para realizar conexión
Parámetros de red a los clientes (pcs) de los segmentos de red
Probar conectividad

Desarrollo

Por cierto el software Packet tracer esta en internet, no es software disponible para todos, a los que estan en la academia a ellos se les proporciona, pero ya saben en internet esta todo, asi que os invito a buscar e instalar, es una muy buena herramienta para entrenarse en networking.

Ya teniendo los routers procedemos a configurarlos, la primera vez luego de decirle NO (ya debes haber visto cuando el router ya pasó todo a la ram y muestra un mensaje), la línea de comandos nos muestra esta entrada
Router0>
escribimos enable y no tiene nada de contraseña.
Router0>enable
Router0#
Ya estamos como usuario privilegiado, a ése nivel podemos ver y consultar cosas con algunos comandos, no estamos en configuración global aún, pero ya podemos usar show.
Ingresamos a configuración global, recuerda que puedes usar ? para ver qué comandos puedes usar.
Router0#?

Comandos para el router:
Ingresar a configuración global
Router0#configure terminal
Puedes usar la tecla tabulador para autocompletar, o usar su nombre corto conf t, ya es cuestión de cada uno.
Router0(config)#
Ahora estamos listos para configurar todo :)
Banner:
#banner motd " Solo administradores "
Nombre:
#hostname  C-COLORADO, aquí es cualquier nombre.
Contraseña para linea consola, solo hay una y su auxiliar:
#line console 0
#password ccna
#login
Recuerda que estamos en configuración global
#exit
Un exit nos baja a un nive, la entrada cambia.

Línea aux de igual manera, solo hay una.
Linea vty en éste router tiene de 0 a 15, osea 16, puedes habilitar las que desees, tal vez no todas, asi:
#line vty 0 15
#password ccna
#login
Regresemos a configuración global con
#exit
Ahora encriptamos las contraseñas con
#service password-encryption
#exit
Ahora a ese nivel mira lo que esta usando en ram con
#show running-config
Vez que las contraseñas estan encryptadas.
Ahora ingresamos a las interfaces, por cierto el router asi como está no trae interfaces seriales, lo que tienes que hacer es ir a physical y apagar el router y arrastar uno, por defecto se pone en un tipo de interfaz y por ahi dice que trae dos interfaces seriales y ahora por qué? Normalmente los routers usan esa interfaz para conectarse entre ellos, también podría usarse los puertos ethernet, en éste caso lo haremos usando puerto serial, tal cual lo hacen en los laboratorios de la academia cisco :)

#interface serial 0/0/0, podrías tambien usar el nombre corto se, yo prefiero autocompletar y si no se me ocurre algo uso ? y tab para ver que posibilidades tengo :)
Puedes acercarte con el muse al router y ver sus interfaces, sus nombres, o también puedes consultar con show (en su nivel) show ip interface brief, y vez sus nombres.

Ya en la interfaz procedemos a agregarle una descripción y una ip, activamos luego:
#description C-COLORADO se0/0/0
#ip address 10.0.0.13 255.255.255.252
#no shutdown

Aqui en punto, elegimos máscara 30, eso quiere decir que faltan 2 bits para 32, osea 2 elevado a 2 nos da 4 ips, dos seran las utilizables y dos seran red y broadcast, con esa máscara no se usa más ips de las que se necesita, es una buena práctica, y ahora que ip le pongo? como sabemos usaremos 10.0.0.0/30, entonces sabemos que el salto es 4, irá así 10.0.0.0-10.0.0.4, ahi es red 10.0.0.0 y broadcast 10.0.0.3, las ips utilizables serían 10.0.0.1 y 10.0.0.2, justo lo que se necesita para solo dos enlaces seriales, en nuestro caso usamos .13 y.14, los saltos serían de 4, 8,12,16, etc. En nuestro caso .12 es red y .15 es broadcast, disponibles son 13 y 14 :)

Ponemos la otra ip en la otra interfaz

Ahora procedemos a poner ips a las máquinas clientes con puerta de enlace de salida del router, las redes 192.158.1.0/24 y 192.158.2.0/24 no se ven y no hay conectividad entre ellos, lo que hace falta es habilitarel routeo ipv4 estático :)

En configuración global ponemos
#ip route (rednoconocida) (mascaradeesared) (interfaz o ip del siguiente salto)
Router1(config)#ip route 192.168.2.0 255.255.255.0 se0/0/0
Router2(config)#ip route 192.168.1.0 255.255.255.0 se0/0/0

En este caso coinciden las interfaces del siguiente salto se0/0/0

Ya existe conexión, ping desde las pcs hasta el otro extremo.

No olvidarse de poner clock rate en la interfaz que es DCE, eso lo averiguas con show controllers interfaz serial, eso en caso real, en packet tracer tu eleiges a quien poner clock rate, el primero por defecto se pone.

martes, 2 de agosto de 2016

DHCP server en Ubuntu 16.04.1 (LTS)

Hola amigos, continuamos con el tutorial de Ubuntu server..., en ésta oportunidad le vamos a añadir un servicio más, el servicio DHCP, el cual hará que los clientes en ambas redes LAN obtengan parámetros de red automáticamente, es decir Ubuntu proporciona dichos parámetros.

¿Qué necesitamos?
Añadir un software que realice dicha función y es el llamado isc-dhcp-server, búscalo en los "repos" de Ubuntu.


Si lo ubicaste pues añadir a nuestro Ubuntu:
#apt-get install isc-dhcp-server

Ahora que ya está, preguntemos a Ubuntu sobre él:

Aquí nos muestra que se ha añadido.


Aquí podemos leer más sobre él.


Pues ya tenemos lo necesario para hacer nuestro servidor DHCP en Ubuntu, el objetivo es proporcionar IP, Máscara de sub red, puerta de enlace y servidores DNS a los clientes en los segmentos de Red 192.168.2.0/24, 192.168.3.0/24.

Configurando isc-dhcp-server
Ya con la idea en mente procedemos a revisar el archivo dhcpd.conf , primero lo buscamos con:
#find /etc -iname dhcpd.conf

Antes de eso editamos un archivo donde le decimos qué interfaces recibirán parámetros de red.


INTERFACES, ahí añadimos.

Ya lo encontramos y lo editamos:
#vi /etc/dhcp/dhcpd.conf



Reiniciamos el servicio
#service isc-dhcp-server restart
Cuando se instaló se había iniciado, pero no estaba configurado.
Revisamos el estado actual


También pueden usar el comando, systemctl


Mirar los logs y ver que si asigna peticiones de clientes:


LAN 1



LAN 2


Con eso ya salen a otras redes, como hemos visto en el anterior tutorial (firewall y router) iptables ya nos ayuda a enmascarar y salir a internet con una sola Ip pública, pueden configurar más cosas, darle ip estática  a una estación usando su MAC, etc.

Espero os aya agradado el tutorial, saludos.


lunes, 1 de agosto de 2016

Firewall y Router con Ubuntu server 16.04.1

Hola amigos, en éste tutorial vamos a ver cómo podemos hacer un router y firewall con un grande de GNU/Linux, pues hemos elegido al azar :) a Ubuntu en su versión server, es uno de mis preferidos junto a Debian y CentOS, claro también a openSUSE, son grandes entre los grandes :).

Esta vez estaremos a puro vi, ya funciona normalmente ya no hay que añadir vim-nox, que recuerde en otras releases vi no funcionaba bien, aquí no noté nada extraño, desde la instalación base todo ok.

Pues si señores usaremos a IPTABLES como firewall, pues que te parece si inciamos la aventura :)

Ubuntu server, nuestro escenario:



Nuestro firewall es Ubuntu server.

enp0s3=192.168.1.85/24, interfaz interna del router del proveedor, ip privada
enp0s8=192.168.2.85/24, interfaz LAN1, (LAN en el dibujo)
enp0s9=192.168.3.85/24, interfaz LAN2 (DMZ) en el dibujo

Los nombres Ubuntu los pone, ha cambiado la forma de desiganar a las interfaces, antes era eth0, eth1, etc., Ahora no :)

En la instalación no configuramos nada de red, lo haremos después.

Configurar interfaces de red y update a nuestro Ubuntu:

Ya tenemos instalado Ubuntu (Si quieres que haga un tutorial de la instalación escribe en los comentarios), nos "logeamos" y nos cambiamos a root, estaremos administrando el servidor en este tiempo, justifica pasarse a root.

>sudo -s
Pones tu contraseña del usuario en la instalación y cambiará a root.

En este punto usamos comandos para ver interfaces, poner nombre al server, asignarle una ip estática, es servidor puro :). tendrá tres o cuatro servicios no más: será DHCP, Proxy y por ahi DNS autoritativo.

#ip a
ese comando muestra las interfaces, el comando ifconfig ya es obsoleto en las recientes versiones de los GNU/Linux, pero se puede usar :)

El nombre del host está en /etc/hostname, es solo una palabra y el fqdn pues lo ponemos en /etc/hosts

#vi /etc/hosts
Escribimos o agregamos, Mi ip



#ip a | less
Vemos que no estan configuradas, ahora editamos el archivo /etc/network/interfaces y escribimos lo siguiente:


Reiniciamos el servicio con
#service networking restart
#ip a | less
Ya verás las interfaces con sus ips nuevas, ahora probemos y vayamos por los servidores DNS que nos resuelvan los nombres a IP, usaremos los de google.

Por defecto Ubuntu server nos agrega a resolvconf, no me gusta :), prefiero la manera tradicional, usar resolv.conf, asi que eliminaremos el enlace simbólico que genera y es un resolv.conf y lo crearemos con touch, escribiremos manualmente.

Tip: ctrl+l, limpias la pantalla de Ubuntu

#rm -rf /etc/resolv.conf
#touch /etc/resolv.conf
#vi /etc/resolv.conf

#dpkg -l resolvconf
Lo vas a ver instalado, ¿que te parece si lo quitamos? luego de configurar la red (abajo) todo perfecto, procede a quitar ese software con:
#apt-get remove resolvconf


Agregas los siguiente:


Probamos que funciones todo:


Pues si señores Ubuntu ya esta funcionando con salida a internet, procedemos a actualizar los repositorios.

#apt-get update

Ya tenemos todo lo necesario para hacer nuestro Firewall y Router, nuestras LANS estan esperando "ansiosas" :), obtener ips y salir por el firewall, entonces construyamos un router y firewall ahora.

Nota: no preocupes por los repositorios, Ubuntu cuando le dices en la instalación en qué país te ubicas él ya inserta los espejos o servers que serán nuestros repositorios, no es necesario tocar /etc/apt/sources.list

Firewall y Router con IPTABLES:

Crearemos un archivo llamado reglas.sh, ahí escribiremos las reglas, ese archivo lo ubicamos en "cualquier lugar", de preferencia donde estemos, yo estoy con mi usuario, podría ser en /etc, o en /root, solo le daremos permiso de ejecución, para que el script inicie en tiempo de arranque usaremos a /etc/rc.local, hay formas que la wiki Ubuntu recomienda, pero mejor lo hacemos iniciar despues de todo, no comprometamos al archivo interfaces, más simple es la forma como lo hago, depende como lo veas, yo procedí asi.

#pwd
#touch reglas.sh
#chmod +x reglas.sh
Con eso le doy permiso para ejecución a todos, podría haber usado a+x, asi debe quedar nuestro archivo, le damos alguito de seguridad.




Lo ubicamos en rc.local y lo ejecutamos con sh, puedes ejecutar ya donde estés con sh /path a las reglas/reglas.sh



Por ahora no hagan caso a redirecciones con proxy, no la pongan, solo quiten esa regla y prueben, debe funcionar, le ponen ip manual a las estaciones windows o cualquier sistema operativo, el protocolo tcp/ip es independiente del sistema operativo, puede ser una Mac Os, un BSD, GNU/Linux u otro.

Resultado en los clientes:

Lan 1


Lan 2



Hemos tenido éxito :), funciona, ahora hazle un reboot y vas a ver que las reglas iptables se inician en boot time.

Thanks for watching y no olvides hacerme mención (url) si usas este tutorial para cualquier uso.

jueves, 28 de julio de 2016

Servidor Proxy transparente con SQUID en NetBSD 6.1.5

Hola amigo :), continuamos escribiendo algunos bits para internet, en ésta oportunidad anotamos cómo hacer un servicio proxy con squid en NetBSD 6.1.5, por alguna razón en la última release de NetBSD 7.0.1 el servicio no esta funcionando como se espera, filtra, pero algo falta, estoy revisando y espero encontrar el detalle, pero esta versión 6.1.5 es muy similar en muchos aspectos, se usa también como gestor de binarios a pkgin, aquí si esta funcionando el proxy con squid, por eso publicamos este apunte para que sea de guía para alguien y vea qué se necesita para un servicio proxy transparente a usuario, que por cierto es muy similar los conceptos para hacer funcionar en un sistema operativo GNU/Linux.

Actualización: 
Efectivamente en NetBSD existe Ipfilter versión 5 y en NetBSD 6.1.5 existe la versión de Ipfilter 4, puedes comprobar con el siguiente comando:
#ipf -V

En la lista de correo de squid-cache, alguien ha probado lo mismo y el mismo ERROR, NAT/TPROXY, no funciona bien, es un bug y alguien recomienda hacer un patch y le ha funcionado. Ya estamos en la versión 7.0.1 de NetBSD y sigue el mismo problema, en fin ya lo sabemos, ya lo arreglaran o ya se arregló, no sabemos, aquí se trata de ayudar a difundir NetBSD, pero si no funciona como queremos pues tenemos a otros grandes como FreeBSD y OpenBSD que son sus colegas tan buenos y más documentación existe en internet :), y por qué no también usar a GNU/Linux que son muy buenos para servidores, pronto novedades, aquí muestro los mensajes donde dicen que es un bug de ipfilter 5.



Fuente: http://lists.squid-cache.org/pipermail/squid-users/2016-January/008805.html

Pueden seguir leyendo en el el siguiente mensaje y lo soluciona.

Software necesario:
  • SQUID 3.5.19, no está en la base, hay que añadir con pkgin o usando pkgsrc.
  • NetBSD 6.1.5, versión stable y que cuenta con mantenimiento por el equipo de desarrolladores de NetBSD.
  • Firewall usado para redireccionar puertos: ipfilter.

¿Qué es SQUID?
Squid es el software que se usará para hacer un servicio proxy, caché de páginas web y filtrado a nivel de http, para filtrar https yo recomiendo usar el firewall, squid en su versión reciente tiene soporte para hacer dicho trabajo, pero esta fuera del alcance de éste apunte, aquí hacemos filtrado básico para http, para más información visitar squid-cache en su sitio principal, una googleada por favor.

Nuestro escenario sigue siendo el siguiente:

Internet----(router del ISP)----(wm0)NetBSD 6.1.5(wm1,wm2)----LAN1, LAN2
wm0=192.168.1.85/24, interface interna del router.
wm1=192.168.2.85/24
wm2=192.168.3.85/24

Con esto hacemos que toda petición al puerto 80 (páginas web http) de ambas redes LAN pasen por NetBSD y se rediriga al puerto 3128 (podría ser otro puerto, pero aquí usamos ese) y controlamos y hacemos caché de páginas web, y ¿Por qué? Cuando se hace caché se almacena una web en el servidor proxy, la próxima vez que alguien haga una petición a esa misma página ya no tendrá que ir hasta afuera, el proxy lo va a proporcionar y de igual manera imagina que alguien ha descargado algo y otro también quiere descargar lo mismo, lo hará en un tiempo mínimo ya que el proxy alamacenó dicho archivo en caché, ahora depende de la configuración del squid, darle bastante espacio, etc.

Como ven seguimos el mismo escenario anterior, NetBSD es router, firewall, dhcp server y ahora es un proxy. No es recomendable agregar muchos servicios a un servidor, un DNS autoritativo podría añadirse como último servicio, si desean uno para base de datos como un mysql, un servicio web con apache debería estar en otra máquina.

Agregar Squid:
Squid no está en la base asi que añadimos, squid en su versión estable esta en los repositorios de NetBSD, se puede usar pkgsrc el cual descarga la fuente y recompila el software, toma mucho tiempo, pero es la forma tradicional en los BSD, nosotros no nos complicamos y decidimos usar a un gestor llamado PKGIN, en la instalación de NetBSD nos aparece en opciones para añadirlo, nosotros lo hemos añadido desde ese punto.

Con pkgin podemos añadir a squid de la siguiente manera:

#pkgin install squid

Al finalizar nos muestra el mensaje que debemos de copiar de /usr/pkg/share/examples/rc.d/squid a /etc/rc.d/. ahi estan los demonios por decir, nos indica que debe tener permiso 0755, yo no lo cambié de permiso porque ya esta con ese permiso.


x=1, w=2, r=4, comienza de derecha a izquierda, como ven los primeros son para visitantes y tiene x-r, sumados dan 5, no tiene a w, para el gruo igual es 5 y para el propietario es 7=1+4+2

Reglas en ipnat.conf
Ya tenemos lo necesario ahora debemos tener bien claro que debemos usar a ipfilter u otro firewall para hacer redirección de puerto.
Si miramos la página man de ipnat(5) y buscamos proxy por ahi esta la regla a usar.
Escribimos en ipnat.conf


El proxy será transparente al usuario, se usa modo intercept, el usuario no hace nada, es redirigida todas sus peticiones al puerto 80 al 3128.

Update :)
También se debe crear el archivo en /etc/ipf.conf y poner reglas básicas como
pass in from any to any
pass out from any to any

Y cómo yo se donde crear el archivo? Fácil pues, mira un archivo en /etc/defaults/rc.conf por ahi dice junto con la sintaxis que debes poner en /etc/rc.conf

Ojo debes poner los servicios en /etc/rc.conf
ipfilter=YES
ipfilter_flags=""
ipnat=YES

Y para activar que sea un gateway agrega al final del archivo /etc/sysctl.conf lo siguiente:
net.inet.ip.forwarding=1

NetBSD 8.0 ha sido "testeado" y ipfilter es el firewall para proxy transparente o intercept

Configurando squid.conf
Ahora tenemos que modificar el archivo mencionado, está en la ruta /usr/pkg/etc/squid, ahí esta todo de squid.

#pwd
#vi squid.conf


Mis acls, ahi comienza lo que he añadido, mas arriba borro o comento las redes que squid permite, las redes privadas como 192.168.0.0/16, 172.16.0.0/12 y asi, las borro y abajo también lo relacionado a localnet :).

Ahora habilitamos las acls, asi:


Donde dice mis reglas, es importante el orden de las reglas, miren arriba esta localhost y último esta deny all.

Ahora vamos a ubicar al puerto, cache_mem, cache_mgr, visible_hostname, cache_dir, será suficiente, luego inicamos a squid :)

http_port, modo transparente al usuario


cache_mem, esto va deacuerdo a los recursos que cuentes


cache_mgr, es informativo, correo del administrador del servidor.


cache_dir, es importate y también depende de cuanto le quieras dar en caché, depende del tráfico en la red.


visible_hostname, como dice ahí el sistema automáticamente lo ubicará, yo lo puse, no era necesario squid lo ubicaba ese nombre sin que lo haga explícito.


También pongo:
cache_swap_low 90
cache_swap_high 95

Estos ultimos hacen que squid se limpie apenas llegue a ese porcentaje.

Existen otros parámetros más, muchos más para hacer más interesante, pero ya se los dejo a ustedes, squid es un gran proxy para caché de páginas webs y filtrado.

Las reglas que usé para expresiones regulares que será denegadas, eso que leyeron de url_regex en las acls y para dominios dstdomain que también figuran en las acls, tambien muestro su contenido en la ruta indicada.


Rc.conf


Iniciar squid con
Antes de iniciar construyamos a squid
#squid -z
#/etc/rc.d/squid start

Para ver los logs y los accesos usa a /var/squid/logs/, puedes usar los comandos:
#tail -f /var/squid/logs/cache.log
También a access.log

Veamos como funciona en los clientes:

Lan 1



Lan 2



Revisando los logs, para pensar ese ERROR que nos muestra verdad? Dejo para que ayuden sobre ese mensaje, funciona el proxy, pero el error nos dice sobre puertos configurados, en squid-cache existe sobre ese mensaje da unas recomendaciones, pero no se entiende por qué nos muestra eso :)

Muchos diran no pasa nada con el proxy transparente, me los salto con https, uso tuneles y asi, es cierto se puede saltar, pero siempre se molesta, ya no es igual, no todas las páginas usan https, los tuneles que ofrecen en internet tiene publicidad molestosa, pero siempre se puede saltar, pero ya queda hacerlo difícil el lograr saltar :)


Gracias por leer nuestro tutorial, y no olvides que squid.conf es igual en GNU/Linux, nada más que ahi se usa a otro firewall como iptables, motivo para continuar con los tutoriales :), thanks for watching
Of course it runs NetBSD

sábado, 16 de julio de 2016

DHCP Server con NetBSD 7.0.1

Hola amigos seguimos con los tutoriales, en la anterior entrada pusimos en marcha nuestro Router y Firewall con NetBSD, nuestros clientes en los segmentos 192.168.2.0/24, 192.168.3.0/24 ya pueden salir a internet gracias a NAT que se hizo en NetBSD con ipfilter.

Ahora hacemos que NetBSD de automáticamente parámetros de red (ip, máscara de subred, puerta de enlace, servidores dns) a los clientes o terminales, en éste ejemplo son terminales Windows xp desatendidos :).

Para saber más sobre qué es DHCP (Dynamic Host Configuration Protocol), por favor revisar en internet, en resumen le digo que es un software que hace que el servicio dé auotmáticamente parámetros de red a los clientes, en NetBSD por defecto ya incluye el software necesario para habilitar el servicio, ya está en la base solo queda iniciarlo y claro configurarlo adecuadamente a nuestras necesidades, para más detalles en el servidor mirar la página man:

#man dhcpd.conf

Iniciar el servicio en tiempo de arranque
Como dijimos el servicio ya está en la base, eso lo averiguamos mirando el archivo /etc/default/rc.conf y buscamos con /dhcpd (escribimos luego de hacer less /etc/default/rc.conf) y vemos la forma que tiene, ya con eso vamos a /etc/rc.conf y escribimos como en las capturas:




Archivo dhcpd.conf
Copiar el ejemplo dhcpd.conf ubicado en /usr/share/examples/dhcp/dhcpd.conf a /etc, para ellos usamos el comando:
#cp /usr/share/examples/dhcp/dhcpd.conf /etc
No preocupes ya tiene los permisos base, pero te voy avisando que cuando edites ese archivo con vi (editor de texto nativo en muchos unix-like), luego de editar queremos guardar con el clásico :wq, pues nos indica que es un archivo de lectura y que para escribir debemos añadir !, hacemos caso :)
:wq!, con eso ya escribe jijiji

No te olvides de buscar ese archivo en caso que no sepas donde está, usa éste comando para ubicar el ejemplo y copiarte a /etc

#find / -iname dhcpd.conf

Ya tenemos copiado ahora lo editamos a nuestra necesidad:
Recuerda tenemos tres interfaces wm0, wm1, wm2, nuestras LANS estan en wm1 y wm2, a esas queremos darle parámetros automáticamente, NetBSD con el servicio dhcp lo va a hacer, nuestro archivo dhcpd.conf debe quedar como en las capturas, es intuitivo, leer lo que dice, lo vamos a hacer de manera que resuelva nuestro objetivo, de hecho debe haber más cosas interesantes y más complejas, reitero esto ha resuelto la necesidad que se requiere.



Iniciamos el servicio:
#/etc/rc.d/dhcpd start

Clientes Windows
Vemos que las terminales reciben parámetros de red automáticamente y salen a internet.
Usamos los comandos en símbolo del sistema de windows:
>cls
>ipconfig /release
>ipconfig /renew
>ipconfig /all

 Y vemos que todo ha funcionado.
Cliente 1


Cliente 2



Hemos tenido éxito ha tomado las primeras ips del rango que le dimos, ahora que te parece si hacemos algo más, por ahi en la red debe haber un equipo que deba tener ip fija y no dinámica, el servicio DHCP lo puede hacer, miramos la MAC de esa estación windows la anotamos y la enlazamos por decir con una ip ya seleccionada, cada vez que inicie el servicio le dará esa ip a esa MAC de la interface ethernet de esa máquina.

Cliente 2 con ip 192.168.3.65/24, luego de escribir en dhcpd.conf reiniciamos el servicio (/etc/rc.d/dhcpd restart) y nuevamente en el cliente hacemos que pida otra vez ip a NetBSD


Mismo nombre y MAC



Hemos tenido éxito.

No preocupes ya se ha creado un archivo en /va/db/dhcpd.leases al inicar por primera vez el servicio, en ese archivo puedes ver detalles de asignación, saludos y espero haya agradado el tutorial :), estamos trabajando para el servidor proxy server con squid :), thanks for watching :)

Of course it runs NetBSD

viernes, 15 de julio de 2016

Router y Firewall con NetBSD 7.0.1

Hola amigos, en ésta entrada les mostraremos como hacemos que nuestro NetBSD 7.0.1 haga de gateway y firewall, la pregunta que muchos se harán y ¿para qué? Pues la respuesta es estructurar una red, y agregar servicios como dhcp, proxy, dns, y aparte será por donde pase todo el tráfico desde segementos de red diferentes, en éste caso son dos segmentos  LAN (192.168.2.0/24 y 192.168.3.0/24), para ellos usaremos a uno de los BSD de la vieja escuela :), NetBSD, en networking juntos a sus "colegas" como son FreeBSD y OpenBSD pues no cabe duda que tienen un rendimiento impecable.

Nuestro escenario será aproximadamente el siguiente:
Donde nuestro NetBSD tiene tres interfaces de red ethernet (wm0,wm1,wm2).
Interfaces:
wm0 de cara a internet (a lado del router), wm1 y wm2 detras del firewall, la denomiación wmx, las pone NetBSD.

Configuración de red:
En la instalación de NetBSD el asistente sysinst, nos proporciona una interface amigable para ingresar datos, nosotros hemos configurado wm0 con sysinst y para wm1 y wm2 creamos dos archivos en /etc, antes miramos /etc/rc.conf y tenemos:


wm0 tiene ip 192.168.1.85/24
wm1 tiene ip 192.168.2.85/24
wm2 tiene ip 192.168.3.85/24

wm0 ya tiene configurado bajo /etc un archivo con susparámetros:

 Para las demás interfaces copiamos, pero cambiamos ifconfig.wmx, donde x es 1 y 2, luego reiniciamos el servicio de red.



Ya tenemos listas las interfaces 

 
También recordar que bajo /etc esta nuestro resolfv.conf que contiene los servidores dns, agregamos uno más:

 Ya tenemos todo lo necesario para hacer nuestro router casero que hará que las LANS que estan detras de wm1 y wm2 salgan a internet usando solo una ip de nuestro proveedor, eso es NAT, IPFILTER nos va a ayudar a hacer eso, ipfilter se incluye en la base de NetBSD, es un firewall en software, debe ser muy bueno que aunque ya no se actualiza o exista poca información en internet ORACLE SOLARIS lo usa, sigue vigente y la sintaxis es similar a PF de OpenBSD, a comandos de reglas en routers y switches CISCO, eso pude notar alguna vez.

Asi que ha habilitar y crear lo necesario para hacer NAT y FORWARDING y nuestro clientes de las LANS 192.168.2.0/24 y 192.168.3.0/24, salgan a internet.

NAT y Firewall:
Leemos el archivo que dice /etc/default/rc.conf y buscamos algo a ipfilter y aparece por ahí lo necesario que debemos incluir a /etc/rc.conf, creamos los archivos /etc/ipf.conf  y /etc/ipnat.conf y agregamos unas reglas como en las fotos.


 Escribimos en /etc/rc.conf

Con eso ya inicia los servicios en tiempo de arranque.
Creamos los archivos ipf.conf e ipnat.conf y escribimos como en las fotos, luego habilitamos el forwarding en /etc/sysctl.conf.

Ya todo en lo básico esta listo, reiniciamos el servidor, podrías inciar /etc/rc.d/ipfilter start, /etc/rc.d/ipnat start, pero hay algo raro, ya escribí en /etc/sysctl.conf el forwarding y me dice cuando inicio ipnat que esta en cero, asi que mejor reinicio y todo saldrá bien :), LAN1 y LAN2 ya salen a internet a través de nuestro NetBSD jejeje...



Ahora que de interesante podemos hacer? La respuesta es simple, qué te parece si añadimos un servicio DHCP a NetBSD y hacemos que desde ambas LANS reciban ips, gateway y dns automáticamente? También podemos añadir reglas a ipfilter y restringir tal vez su administración remota, un servidor proxy para caché de páginas web, todo eso con software libre como NetBSD que como dije en networking es implecable, en una pc con recursos aceptables podrías poner un router y firewall en tus entornos LAN, y también se usa en equipos servidores en casos críticos, para eso fue diseñado NetBSD y sus colegas :), espero que te haya gustado el tutorial y que conozcas más sobre administrar servicios desde cero, con software de alto rendimiento :), saludos.


Of course it runs NetBSD

Packet Tracer 9 en fedora 44

 1. INTRODUCCIÓN Y CONTEXTO -------------------------- Cisco distribuye oficialmente Packet Tracer para Linux únicamente en formato  paquete...