BSD


Uno de los ISP’s mas grandes de Mexico en este mes ha empezado a bloquear el puerto 25 en los servicios de DSL, el argumento de esta accion fue que es para combatir el spam.

Las consignas y gritos de monopolio no se han hecho esperar…

La verdad se me hace una medida monopólica es cierto que hay mucho Spam, pero deberian dejar que los usuarios decidan y no bloquear a las empresas que utilizan el correo para su comunicacion empresarial.

La medida no detendra el spam que te llega, a mi percepcion, La medida es para frenar a todos los spammers que contrataban/robaban cuentas para mandar spam desde ellas, actualmente los blooques de IPs de este servicio estan mas negras que la conciencia de Echeverria, en mi trabajo anterior me tocaron ataques de spam distribuidos desde varias cuantas de DSL, si bien es cierto que esta medida les viene a dar en la madre a los que tenian su mailserver a travez de un servicio DSL con dns dinamico (que de seguro medio funcionaba con lo quemados que estan los bloques de ips), si lo que se necesita es poder contactar a su servidor de mail corporativo desde oficinas remotas via DSL, la siguiente es posible solucion.

En el caso de que el server tenga una direccion valida y usas un server basado en Linux/BSD, usando jumpgate se crea una redireccion en el mailserver que recibe la conexion en un puerto no estandar en el SMTP y redirecciona la conexion al puerto 25

jumpgate -b x.x.x.x -l 2525 -a x.x.x.x -r 25

Donde x.x.x.x es la ip valida del server.

En el caso de usar NAT, es mas facil, solo se crea un mapeo adicional en el nat a un puerto no estandar.

El siguiente paso es configurar los clientes de correo para que el SMTP lo usen en el nuevo puerto (2525 en este ejemplo)..

Esta es una medida al vapor, hay otras formas de utilizar smtp desde clientes remotos como lo es el uso de un VPN, o el uso de SMTP seguro.

CASH: Niurka, mil gracias por darnos unos pocos de tus grandes conocimientos, donde aprendiste tanto…

NIURKA: Gracias a ti papi, pues no solo he tenido amantes en la farandula, todo esto lo he aprendido con relaciones anteriores tanto con un macho CCSP y un negrote friki que es Open-Be-esedero esos que odian a los linuxeros…

n1
Niurka, siempre tan femenina y segura, como un firewall bsd o cisco

CASH: OK, para empezar, cual de los 2 es mejor?

NIURKA: Ambos productos son muy buenos sin embargo la forma en la que aplican los criterios de seguridad son muy diferentes

En las soluciones firewall Cisco se manejan “niveles de seguridad” los cuales son aplicados en las interfaces y todo trafico de un mayor nivel transitando a un nivel menor es permitido, la interfaz publica debe tener nivel 0 , ya todo trafico que traspase de una zona de menor a si desea bloquear trafico saliente de interfaces de mayor seguridad a una menor, estos deben de definirse en listas de acceso y aplicarlas en la interface pertinente, en cambio pf todo tipo de trafico necesita ser tomado en cuenta, es decir, no supone que traficos deberian ser permitidos, es decil mi negro que el disenio de Cisco supone mas pol el hombre que lo esta configurando y es mas dificil defecarla feo por olvidos asi como la defeque to cuando me case con aquel ploductol de telenovelas que nomas me hizo suflil.

CASH: Cual es la ventaja de estos firewalls en comparativa a los “firewalls viejitos” de filtrado de paquetes?

NIURKA: En cisco se hace mucho incapie de que es un firewall ’stateful’ es decir, que cuando checa la politica del primer paquete de una conexion se crea una sesion y todos los paquetes y conexiones relacionadas a ese primer paquete son permitidas sin revisar las listas de acceso, en PF hay tambien seguimiento de estado usando el flag ‘keep state’ y ‘modulate state’ ambos soportan seguimiento de estado tanto para TCP como para UDP, en palabras que entiendas cash, una ves que identificas que no eres peligroso puedes pasar como juan por su casa sin aplicar todas las reglas…

n1
Este homble no podia tener el “state” ni con viagra

CASH: Otras cosas similares entre ambos?

NIURKA: Ambos permiten hacer grupos de hosts para aplicar las reglas, en Cisco se llama “object-group” y en pf “Variable expansion”

CASH: Que hay de seguridad a nivel de capa aplicacion

NIURKA:
En el control de navegacion, existe un mecanismo de accesar las paginas web a travez de un servidor proxy sin necesdad que el usuario haga ningun cambio en su pc, al recibie una peticion en el puerto web el firewall, reenvia la peticion al servidor proxy el cual hace la conexion para bajar la pagina y entregar el resultado al usuario interno es posible crear filtros por contenido, urls, restriccion de ancho de banda usado ,el proxy es posible instalarlo en el mismo firewall teniendo en cuenta que se etan agregando una posible vulnerabilidad mas sobre la cual estar encima, en otras palabras se recomienda ponerlo en otro host.

Cisco NO soporta transparente, el unico soporte es el uso de autorizacion de direcciones a travez de un servidor externo de websense un producto comercial y es necesario comprarlo por separado, ofrecida por una empresa que tiene miles de gentes navegando y clasificaqndo las paginas de internet, y al recibir la peticion el firewall manda el url al servidor ese y el dice si pasa o no….

n1
Con ambas soluciones puedes bloqueal de diferentes formas la pagina de playboy y las viejas cochinas que salen ahi

CASH: Que hay de acceso remoto desde el internet y medios inseguros?

NIURKA: En el sentido de VPN pf no hace ipsec pero BSD (cualquiera) tiene soporte a crear tuneles, tanto ipsec, pptp, openvpn, si bien no traen por default una interfaz grafica en si pero existen distribuciones que crean interfaz de administracion para estos servicios, Cisco tiene un limite de tuneles por licencia, en BSD es ilimitado y el limite lo dara la capacidad del hardware, como dicen los frikis, LOS FIERROS (sin albur).

En cuanto a accesos temporales a ciertas aplicaciones la contraparte a web-vpn esta authpf, en la cual un usuario remoto crea una sesion SSH y se autentifica, mientras este abierta la ventana de esa sesion SSH las reglas aplicadas a esa seccion se aplicaran a esa ip origen, asi nuestros datos siguen limpios y sin mancha como mi cu-cu.

CASH: Y algo sobre Virtualizacion y Respaldo?

NIURKA: Ambos equipos cuentan con sistemas de esquemas de reslpaldo y virtualizacion, la virtualizacion en PF es a nivel sistema operativo BSD y el esquema de respaldo es por medio de un sistema llamado carp, asi no te carga pifas cuando te truena el chikistriki.

CASH: huh?

NIURKA: El fairwall mi cash, el fairwall, asi le llamamos los conocedores…

CASH: Y al ser cisco, pues debe ser chingon pal ruteo no?

NIURKA: Pues Pix/asa no tiene funciones de ruteo avanzado (como los route-maps y esas madres de los routers) BSD tiene soporte a todos los protocolos de ruteo abiertos, apoyado en programas como Zebra y OpenBGP y lar reglas de PF permiten agregar decisiones de ruteo con clausulas como el route-to y reply-to, asi que si quieres echarte unas fumadas, usando un asa tendras que hacerlas en un dispositivo antes o despues de el.

CASH: Y que hay respecto a las pantallitas amigables pa configurarlos?

NIURKA: Cisco cuenta con entornos graficos de administracion basados en applets de java, un neofito es capaz de medio configurar un firewall y dejarlo jalando con este gui, sin necesariamente saber que chingados hizo, en el lado de pf existen distribuciones enfocadas a crear firewalls basados en FreeBSD/PF, la que mas aceptacion ha tenido es PFSense y ambos tienen la adorable interfaz de configuracion via Texto, que esa es para hombres como lo dijo un friki del Gulp! de esos hombres me gustan!

n1
mi siguente homble sera un lector de este blog, el que deje el comentario mas inseguro y/o configure totalmente un firegual me modo testo

CASH: Algunas Otras monerias?

NIURKA: Opcionalmente los appliance de seguridad Cisco tienen Modulos y servicios auxiliares para inspeccion de paquetes a bajo nivel (revisar el payload del paquete), estos van desde IPS, Antivirus, Entre otros

CASH: Ok, tus conclusiones…

NIURKA: Finalizalizando, hablando de seguridad y estabilidad, ambas soluciones son buenas y confiables, podras decidir cual usar basado en tu presupuesto y planeacion deseas hacer…

n1
Niurka concluye: Ambas solucionesle dicen ALTO a las conexiones indeseadas.

Esta entrevista fue hecha via e-mail a niurkamarkos@hotmail.com, no pudimos comprobar si realmente la respondio Niurka

Siempre es recomenndable apoyar el proyecto de OpenBSD comprando los CDs originales, pues asi se apoya el proyecto, pero si en una emergencia es necesario crear un CD botable de la instalacion solo hay que…

1: - Bajar los archivos de la version de:

ftp://ftp.openbsd.com/pub/OpenBSD/4.1/i386

Como recomendacion Incluye los tarballs de ports.tar.gz y de src.tar.gz en

ftp://ftp.openbsd.com/pub/OpenBSD/4.1/

2:- Crea el archivo iso

mkisofs -v -r -l -L -T -J -V “OpenBSD-4.1″ -A “OpenBSD v4.1 Release, Custom ISO” -b i386/cdrom41.fs -c boot.catalog -o openbsd-i386-4.1.iso -x openbsd-i386-4.1.iso /4.1/

3: - Quema el archivo openbsd-i386-4.1.iso

4: -Bota el CD e instala

Viendo como hacer unas mexicanadas el otro dia necesite crear algunas ips secundarias en una tarjeta de un OpenBSD, sin poner la configuracion en el archivo RC.CONF para crear una ip secundaria desde shell se usa:

ifconfig fxp0 alias 192.168.1.102 netmask 255.255.255.0

Donde fxp0 es el device de la tarjeta de red y el nombre cambia dependiendo del hardware usado, pues cada driver le da un nombre distinto, es decir las tarjetas intel fast etherner se llaman fxp0,fxp1 etc, las 3com xl0,xl1 las Realtek rl0,rl1 y asi cada marca.

Igualmente para quitar la ip despues de haberla usado sin reiniciar se usa el comando…

ifconfig fxp0 -alias 192.168.1.102

Siempre he sido un fan de Slackware en los servers que reciben mucha carrilla y estan expuestos, Slack fue mi primera distro, desde la 2.0 hasta hoy, sin embargo el domingo pasado tuve que prescindir de el, a pesar de sus grandes ventajas en su simplicidad, me vi en la encrucijada de ver la necesidad de usar autenticacion comun via LDAP en algunos servicios, Slackware no trae soporte para PAM, es posible pero es necesario compilar el soporte completo a patin y no tuve el tiempo, pues me esperaba otro tirito con la integracion del LDAP y las aplicaciones, asi que ese dia baje 3 Isos, primero el de Slack, al ver que el soporte a pam iba a ser medio cochinon, pues baje el CentOS el cual esta basado en RedHat y en mi chamba anterior ya habia trabajado con el interactuando con LDAP, ya cuando lo iba acabando opte mejor por bajar e instalar el FreeBSD, el cual tambien trae soporte a PAM, pues nunca he sido muy fan de RedHat en servidores expuestos a Internet.

Para los que digan “WTF is pam?” lo traducen módulo de autenticación enchufable (sin albur), aqui esta una definicion pirateada de HP

El módulo de autenticación enchufable (PAM - Pluggable Authentication Module) es un marco de autenticación estándar del sector.

El PAM aporta a los administradores de sistema flexibilidad para elegir cualquier servicio de autenticación disponible en el sistema a fin de llevar a cabo la autenticación. El marco PAM también permite enchufar y poner en funcionamiento módulos de servicio de autenticación nuevos sin modificar las aplicaciones.

Por ejemplo, un sistema puede utilizar cualquier método de autenticación de usuarios, como el archivo /etc/passwd, el NIS, el NIS+ o un sistema de confianza. Los programas que exigen la autenticación del usuario transmiten las solicitudes al PAM, el cual determina el método de comprobación correcto y remite la respuesta apropiada. Los programas no tienen por qué saber el método de autenticación que se utiliza.

Una de las bondades de los BSD es el sistema de “ports” el cual es un arbol de informacion de que paquetes se pueden instalar, incluyendo tambien dependencias y posibilidad de pasarle opciones especiales de compilacion.

En veces la compilacion puede ser bastante larga, es por esto que en dado caso de necesitar instalar rapidamente (de emergencia pues) un paquete (es mas recomendable desde los ports) se puede hacer, algo parecido a lo que es el apt-get en linux con pkg_add…

Este instalara el programa y las dependencias no instaladas…


#pkg_add -r mrtg
Fetching ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-6.2-release/Latest/mrtg.tbz… Done.
Fetching ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-6.2-release/All/png-1.2.12_1.tbz… Done.
Fetching ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-6.2-release/All/pkg-config-0.21.tbz… Done.
Fetching ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-6.2-release/All/perl-5.8.8.tbz… Done.

Cuando llegas a un lugar publico con wireless y prendes tu lap y por arte de magia empiezas a navegar, es gracias a una cosa llamada DHCP, que configura tu pc para que pueda tener acceso a la red, pero hay chistositos en lugares publicos que ponen sus propios servidores de DHCP para empezar a dar informacion falsa, y hacer que el reso anden valineando, si se tienen switches Cisco, hay una chingadera que se llama DHCP Snooping, que lo que hace es solo dejar pasar las ofertas de los puertos del switch en las que se sabe hay servidores DHCP autorizados, y cualquier otro server lo ignora como una chica fresa a un naco.

El DHCP puede ser ofrecido por muchos dispositivos, se puede configurar en routers o switches capa 3 cisco, o bien en unix o guindoz, en linux el server dhcp mas comun es el dhcpd, se instala:

sudo apt-get install dhcp3-server

y se configura editando /etc/dhcp3/dhcpd.conf

Ya configurado el dhcp en el linux… siguen los switches

en modo global de configuracion se activa:


dhcp snooping
dhcp snooping vlan X

En la interface (numero de puerto) donde se conecta el linux

int fast 0/Y
ip dhcp snooping trusted

y si hay switches cascadeados es importante


ip dhcp relay information trusted

A la interface VLAN donde esta el servidor DHCP, si no el pinche suichi no hara relay de los paquetes de DHCP.

Y adios ociosos, se les acabo la diversion…

Uno que es neofito para esto de la programacion y que va empezando en esto del perl, es util buscar las funciones disponibles para la instalacion de perl en el sistema, funciones en la instalacion de Perl como las que se accesan como modulos, para ello se cuenta con el programa perldoc, el cual corre en modo texto, muy parecido a lo que es el man para los comandos en unix/linux

En Ubuntu/Debian:

jhonny@cash:~$ sudo apt-get install perldoc

PERLDOC(1) User Contributed Perl Documentation PERLDOC(1)

NAME
perldoc - Look up Perl documentation in Pod format.

SYNOPSIS
perldoc [-h] [-v] [-t] [-u] [-m] [-l] [-F] [-i] [-V] [-T] [-r] [-ddes‐
tination_file] [-oformatname] [-MFormatterClassName] [-wformatterop‐
tion:value] [-nnroff-replacement] [-X] PageName|ModuleName|ProgramName

perldoc -f BuiltinFunction

perldoc -q FAQ Keyword

See below for more description of the switches.

Y si son amantes de que se vea en ventanita, esta el podbrowser

se instala en Ubuntu/Debian:

jhonny@cash:~$ sudo apt-get install podbrowser

Photobucket - Video and Image Hosting

Como veran muestra la funcion/modulo y al seleccionarla se puede navegar en la introduccion, metodos, uso y funciones similares o relacionadas.

Eres mas malo que el veneno para la guitarra y quieres mejorar?

Pues ya llego Frets on Fire, El juego recomendado ampliamente por el Menyx, que dice que ya saca la de Iron man de Sabath completita…

Asi se juega:

El enter es como quien dice la uña y F1 al F5 las cuerdas…

Y asi se ve…

Obviamente no trae rolas comrciales por defecto, pero hay foros para bajar musica de muchas canciones conocidas… se ve peladita pero no lo es, la unica que pude medio seguir es la de “i wanna be sedated” de los ramones :S

Frets on Fire esta hecho en python para correr en Linux, hay ports para osx, bsd y windows, de preferencia con un acelerador de video, obiamentew 100% libre de costo, como todo el buen software. :D

http://kempele.fi/~skyostil/uv/fretsonfire

Desde que empece a usar ubuntu, el VI le da la chiripiorca al pegar una linea con un # al principio, la siguiente linea indenta y le pone otro #, y asi para cada linea, de manera que si pegas un chingo de codigo se hace un desmadre…

                # shflash
                #                 $telnet->expect($timeout, "\#");
                #                                 $telnet->send(shflashn);
                #                                                 $telnet->expect($timeout, "\#");
                #                                                                 $shint = $telnet->before();
                #                                                                                 # shmemsum
                #                                                                                                 $telnet->expect($timeout, "\#");
                #

Coregirlo deshabilitando “auto indent” con:

:set paste
o
:h pt

en modo comando

                # shflash
                $telnet->expect($timeout, "\#");
                $telnet->send(shflashn);
                $telnet->expect($timeout, "\#");
                $shint = $telnet->before();

Un completo analisis de las protecciones de hardware de audio y video, me atrevo a decir que solos estan cavando su propia tumba…

Say you’ve just bought Pink Floyd’s “The Dark Side of the Moon”, released as a Super Audio CD (SACD) in its 30th anniversary edition in 2003, and you want to play it under Vista. Since the S/PDIF link to your amplifier/speakers is regarded as insecure, Vista disables it, and you end up hearing a performance by Marcel Marceau Rebels instead of Pink Floyd.

http://www.cs.auckland.ac.nz/~pgut001/pubs/vista_cost.txt

Hace poco me di cuenta que se puede user Ya sea Linux o algunos BSDs para rutear VLANs usando la encapsulacion IEEE 802.1Q., ya que ISL es propietaria y ya va pa fuera…

Configuracion del puerto Troncal en un Catalyst:

interface FastEthernet0/XX -----> Numero de puerto conectado al Router OpenBSD
 switchport trunk encapsulation dot1q
 switchport trunk allowed vlan 2-8
 switchport mode trunk
 no cdp enable

Configuracion de los hosts de la vlan 2, en el mismo Catalyst

interface FastEthernet0/2
 switchport access vlan 2
 no cdp enable

Configuracion del Router OpenBSD Archivo /etc/hostname.vlan0

inet 192.168.0.1 255.255.255.0 NONE vlan 2 vlandev fxp1

Parametros a conocer
192.168.0.1 = IP en la VLAN2
255.255.255.0 = MASCARA
vlan 2 = Vlan a la que pertenece
fxp1 = Interfaz fisica a la que esta amarrada, el nombre cambia dependiendo de la marca de la tarjeta de red

Lo mismo para el resto de las VLANS, con esta configuracion y el ip forwarding activado en el BSD, podran reenviar paquetes entre vlans en switches capa 2


Photobucket - Video and Image Hosting

Photobucket - Video and Image Hosting

http://www.openbsd.org/40.html#new

El otro dia me llego este mail en la lista de misc@OpenBSD

My question is simple- I’m a relative newbie at BSD so please bear with me.
I’m trying to launch the internet; so I open a terminal and go “percent sign
‘Internet’” at the prompt

ie: >%internet

and it doesn’t work. What gives??!!

Also “percent sign ‘Print’” doesn’t work and neither does “percent sign
‘word processor’”

How would I launch the internet, the word processor and print a document?

any help would be appreciated

Si, quiza algo sin chiste (por no decir tonta) la pregunta, estas fueron algunas de las respuestas que genero…

Thanks for teh question.
Hmmm, I think the proper command to “launch the internet” is:

rm -r \*

Creo que en todos lados hay un negrito en el arroz, pero este tipo de actitudes no tienen razon de ser, NO estoy diciendo que se deben responder este tipo de preguntas, a mi pinchurrienta forma de ver lo que se debe hacer con estos mensajes es:

- ignorar el mensaje como offtopic
- darle UN SOLO MENSAJE explicandole como esta el rollo, que debe primero googlear un poco antes de preguntar.

Pero no mofarse de ellos, de seguro ellos nacieron sabiendo, o la lista es para pura mente elevada…

El fin de semana pasado me di a la tarea de probar el paquete bandwidthd en un server con openbsd, el programa es un reporteador de trafico de red, la interfaz es web y clama de no comer muchos recursos, si bien dice que corre sobre openbsd, al no haber un port, se tuvieron que hacer bastantes mexicanadas…

1.- Se baja el source de http://bandwidthd.sourceforge.net/
2.- Se descomprime
3.- Se corre ./configure, aqui la primer tronada:

checking for png_read_info in -lpng… no
configure: error: Bandwidthd requires but cannot libpng

Bueno, googleando halle que se resuelve con….

# ./configure CFLAGS=-lz

Pero ahora…

checking for gdImageCreate in -lgd… no
configure: error: Bandwidthd requires but cannot find libgd

Pots, bueno, a gooooglear, y el gooogle no dejo nada, tonces como todo buen mexican curios, edite el script Configure y me brinque ese check…

cambie

echo “$as_me: error: Bandwidthd requires but cannot find libgd” >&2;}
{ (exit 1); exit 1; }; }

por

echo “$as_me: error: Bandwidthd requires but cannot find libgd” >&2;}
{ (pwd); pwd; }; }

Y el script configure jalo completo, pero al momento de dar make, me salieron un resto de….

graph.o(.text+0×140b): In function `GraphIp’:
: undefined reference to `gdImageCreate’

Como ora si que no C nada de C, le pregunte a un Gulpeador que si le mueve y me ilumino

cambiando en el Makefile:

LDFLAGS = -L/usr/X11R6/lib -L/usr/local/lib -lpq -lpcap -lpng -liconv -lm -lresolv

por

LDFLAGS = -L/usr/X11R6/lib -L/usr/local/lib -lttf -ljpeg -lgd -lpq -lpcap -lpng -liconv -lm -lresolv

voala, ora si compilo….

Solo faltaba la configuracion de apache…

Como el apache corre chrooteado en /var/www movi los archivos html y cree un link simbolico desde /usr/local

# cd /usr/local
# mv bandwidthd /var/www/
ln -s /var/www/bandwidthd/ .

Ora a crear el alias en la config de Apache

Alias /band/ “/var/www/bandwidthd/htdocs/”

directory “/var/www/bandwidthd/htdocs/”

Options Indexes MultiViews
AllowOverride None
Order allow,deny
Allow from all

/directory

Se reinicia apache, se edita bandwidthd.conf donde se le pone la interfaz de red donde va a monitorear y se arranca finalmente el programa bandwidthd…

band