Booting my Mind!!

Ernie Rojas Villoslado

Archivo para la categoría "GNU/Linux"

Tuz, un parche para el kernel 2.6.29 de Linux

sin comentarios

Un inusual “patch” se agrego en el kernel 2.6.29, y se llama Tuz, la nueva mascota de Linux, bueno segun dicen sus autores solo para la version de este kernel, ya que posteriormente volvera Tux

Escrito por Ernie Rojas Villoslado

Marzo 25, 2009 a 2:18 pm

Escrito en GNU/Linux

Rutas estaticas en Gentoo

sin comentarios

En nuestro archivo /etc/conf.d/net agregamos las rutas definidas a nuestra interfaz de red de la siguiente manera

config_eth3=( "192.168.15.12 broadcast 192.168.15.255 netmask 255.255.255.0" )
routes_eth3=( "200.48.62.240/28 via 192.168.15.1"
"200.60.110.0/28 via 192.168.15.1"
"200.48.62.48/28 via 192.168.15.3"
"200.48.62.64/28 via 192.168.15.3"

Reiniciamos nuestra interfaz de red: /etc/init.d/net.eth3 restart

Escrito por Ernie Rojas Villoslado

Febrero 17, 2009 a 1:16 am

Escrito en GNU/Linux, Redes

Etiquetado con ,

Gentoo Firewall

sin comentarios

Debido a que en la universidad donde trabajo tiene varios locales independientes y distantes, en chimbote tenemos algo de 5, y ni que decir las sedes que se cuentan a nivel nacional, bueno el punto es que estuve viendo varias soluciones a nivel de firewall como ComixWall, PfSense, IpCop, Endian, Vyatta, Ebox, ClarkConnect cada uno con sus ventajas y desventajas, con software pagado y software libre, quizas la solucion mas cercana que veria era pfsense, pero la desventaja que le vi al igual que la mayoria de estos firewalls es que solo nos limitamos a usar lo que nos proveen estas soluciones ya que si instalamos lago manualemente podemos reomper el sistema o perder configuraciones ya hechas con las herramientas de administracion que nos proveen estas distros. Por lo que me puse a trabajar en mi propio firewall basado en gentoo y generar un stage4 de un sistema base minimo y luego instalar los paqutes precompilados, bueno esto me inpire de comixwall que primero instala un sistema base de openbsd y luego instala las aplicaciones que trae este firewall, llos binarios que ya tengo construidos son los siguientes:

Software:

  • Sistema Operativo: Gentoo Linux
  • Squid
  • Iptables
  • Sarg
  • Calamaris
  • Webmin
  • SquidGuard
  • Samba
  • LDAP
  • OpenVPN
  • Cliente Telnet: netkit-telnetd
  • Apache
  • Bind
  • sudo
  • traceroute
  • net-dns/bind-tools
  • nmap
  • jnettop
  • Lshw
  • mrtg
  • iptraf
  • arpwatch
  • tcpstat
  • sniffit
  • php
  • mysql
  • zabbix
  • LVM

Ya tengo bastante avanzado este firewall al que le he agregado un script en bash que permite instalar el stage4 junto con los paquetes precompilados y configurar el sistema adecuadamente, bueno esto me permitira tener ya preparado un sistema preconstruido a mis necesiades para la instalacion de los firewalls de la ULADECH, espero seguir afinando este firewall y porque no compartirlo con la comunidad mas adelante, por mientras ire pensando en un nombre, quizas GeSense xD

Escrito por Ernie Rojas Villoslado

Febrero 17, 2009 a 12:51 am

Escrito en FLOSS, GNU/Linux, Redes

Mi Radio con icecast en gentoo. parte I

sin comentarios

En la insitiución donde trabajo se viene requiriendo configurar un servidor de streaming para tener una radio en linea, q será alimentado desde una tarjeta de sonido al cual estará conectado el equipo de radio, una arquitectura interesante, por lo que me puse  a investigar y como se dice una imagen vale mas q mil palabras, me encontre con esta imagen que resume todo lo q deseo hacer:

Imagen: http://federicosayd.wordpress.com/2007/10/12/una-radio-en-linux/

Bueno yo ya habia trabajado con shoutcast, el problema es que nunca le encontre un cliente para que alimente al servidor y que corra en linux ademas que no soporta el formato ogg. Por lo que le di una oportunidad a icecast, anteriormente lo habia probado pero tuve problemas para configurarlo, pero esta vez ya me funciona.

En esta parte explicare la configuracion de icecast y de ices, el primero es el servidor y el segundo es el cliente que alimentara a nuestro servidor:

  • Instalamos icecast con los USE flags siguientes: “speex ssl theora yp”

# emerge -va icecast

  • Configuramos icecast en el archivo /etc/icecast2/icecast.xml

<icecast>
<limits>
<clients>100</clients>
<sources>2</sources>
<threadpool>5</threadpool>
<queue-size>524288</queue-size>
<client-timeout>30</client-timeout>
<header-timeout>15</header-timeout>
<source-timeout>10</source-timeout>
<burst-on-connect>1</burst-on-connect>
<burst-size>65535</burst-size>
</limits>
<authentication>
<source-password>123</source-password>
<relay-password>1234</relay-password>
<admin-user>admin</admin-user>
<admin-password>12345</admin-password>
</authentication>
<hostname>localhost</hostname>

<listen-socket>
<port>8000</port>
</listen-socket>

<fileserve>1</fileserve>

<paths>
<basedir>/usr/share/icecast</basedir>

<logdir>/var/log/icecast</logdir>
<webroot>/usr/share/icecast/web</webroot>
<adminroot>/usr/share/icecast/admin</adminroot>
<alias source=”/” dest=”/status.xsl”/>
</paths>

<logging>
<accesslog>access.log</accesslog>
<errorlog>error.log</errorlog>
<loglevel>4</loglevel>
<logsize>10000</logsize>
</logging>

<security>
<chroot>0</chroot>
<changeowner>
<user>icecast</user>
<group>nogroup</group>
</changeowner>
</security>
</icecast>

  • Instalamos ices:

# emerge -va ices

  • Configuramos el archivo: /etc/ices2/ices.xml, si bien es cierto este archivo no se crea por defecto, hacemos una copia del archivo ices-playlist.xml:

# cp ices-playlist.xml ices.xml

<?xml version=”1.0″?>
<ices>
<background>0</background>
<logpath>/var/log/ices</logpath>
<logfile>ices.log</logfile>
<loglevel>4</loglevel>
<consolelog>0</consolelog>

<stream>
<metadata>
<name>Radio Santo Domingo</name>
<genre>Musica Variada</genre>
<description>Aun por definir</description>
</metadata>

<input>
<module>playlist</module>
<param name=”type”>basic</param>
<param name=”file”>/etc/ices2/listado.txt</param>
<param name=”random”>0</param>
<param name=”restart-after-reread”>0</param>
<param name=”once”>0</param>
</input>
<instance>
<hostname>localhost</hostname>
<port>8000</port>
<password>123</password>
<mount>/playlist.ogg</mount>
<reconnectdelay>2</reconnectdelay>
<reconnectattempts>5</reconnectattempts>
<maxqueuelength>80</maxqueuelength>
<encode>
<nominal-bitrate>64000</nominal-bitrate>
<samplerate>44100</samplerate>
<channels>2</channels>
</encode>
</instance>
</stream>
</ices>

  • Creamos el directorio /playlist.ogg y agregamos los archivos ogg que queremos:

# mkdir /playlist.ogg

  • Creamos el listado de los ogg que vamos  a reproducir:

# find /playlist.ogg/ -iname “*.ogg” > /etc/ices2/listado.txt

  • Iniciamos los servicios:

# /etc/init.d/icecast start

# /etc/init.d/ices start

  • Para que arranquen a la hora q inicia nuestro sistema

# rc-update add icecast default

# rc-update add ices default

Para reproducir nuestro streaming desde un navegador vamos a:

http://ip_server:8000/playlist.ogg.m3u

o sino en http://ip_server:8000 nos aparecera un  link hacia ese archivo que lo reproduciremos en mi caso con amarok.

Escrito por Ernie Rojas Villoslado

Diciembre 5, 2008 a 5:52 pm

Escrito en GNU/Linux, Negocios, Python

Etiquetado con , , ,

Canción de Gentoo

sin comentarios

Gentoo for me

Refrain:
I build my kernel and I strip it down,
my programs only do what I need
the tree is at my very core
it’s my whole world and it is my seed.

I came to Gentoo several years ago,
it’s power was my joy and woe,
replaced OSX with a mighty shell,
and learned its ways and learned them well.

(well mostly, and learning at times is a hell)

I rebuilt only 2 times since that day,
for at first I didn’t know my way,
the second one was a lovely bird,
but a new Computer brought the third.

(someday I want a Gentoo GNU/Hurd)

I learned each day and my knowledge grew,
from the wiki and forums it leaped and flew,
information in structure gave power in mind,
and the strongest is what the tutorials bind.

(but read them well, or trouble’s what you find)

A new life came when I met the snake,
I’d been asleep, now I’m awake,
for portage might be quite complex,
but reading Python’s sometimes close to sex.

(go deeper and deeper and the world seems to shift)

Somewhere between some seedlings appeared,
with stuff for special people geared,
sometimes dangerous, but mostly good,
and the tree had grown a little wood.

(but remember where the main trunk stood)

And now the tree has KDE 4,
since that appeared I like it evermore.
All that nifty stuff I missed from my Mac,
usability and beauty and the vision are back.

(and don’t forget power, more than any I knew before)

Together all this is Gentoo for me,
but there sure is more I don’t get or see,
and some parts for which I feel quite strong,
just didn’t fit into this song.

(Gentoo’s much too large to fit into any… )

Fuente: http://draketo.de/english/songs/light/gentoo-for-me

Escrito por Ernie Rojas Villoslado

Noviembre 8, 2008 a 4:01 pm

Escrito en GNU/Linux, General

Etiquetado con ,

Awstats en Gentoo – Parte1

sin comentarios

Awstats es una aplicacion hecha en perl que nos brinda estadisticas de nuestro servidor para nuestro caso un servidor web (apache), aunque puede funcionar con otros servicios, para ponerlo en marcha debemos hacer lo siguiente:

  • Instalamos:

# USE=”apache2″ emerge -va awstats

  • Despues de finalizada la instalación nos muestra informacion de como usar autenticacion en awstats y aparte nos crea un directorio denominado awstats en nuestro directorio de publicacion de apache(/var/www/localhost/htdocs)
  • Agregamos las siguientes lineas a /etc/apache2/httpd.conf

Alias /awstats/classes “/usr/share/webapps/awstats/6.9/htdocs/classes/”
Alias /awstats/css “/usr/share/webapps/awstats/6.9/htdocs/css/”
Alias /awstats/icon “/usr/share/webapps/awstats/6.9/htdocs/icon/”
ScriptAlias /awstats/ “/usr/share/webapps/awstats/6.9/hostroot/cgi-bin/”
ScriptAlias /awstats “/usr/share/webapps/awstats/6.9/hostroot/cgi-bin/awstats.pl”

<Directory “/usr/share/webapps/awstats/6.9/htdocs”>
Options None
AllowOverride None
#    <IfModule mod_access.c>
Order allow,deny
Allow from all
#    </IfModule>
</Directory>

<Directory “/usr/share/webapps/awstats/6.9/hostroot/cgi-bin”>
Options ExecCGI
AllowOverride None
#    <IfModule mod_access.c>
Order allow,deny
Allow from all
#    </IfModule>
</Directory>

  • Reiniciamos apache:

# /etc/init.d/apache2 restart

  • Creamos el archivo de configuracion de awstats para nuestro host:

# cp /etc/awstats/awstats.model.conf /etc/awstats/awstats.NroIPServer.conf

  • Editamos nustro archivo /etc/awstats/awstats.NroIPServer.conf y seteamos algunos parametros

LogFormat=4 (formato de la NCSA)
SiteDomain=”NroIPServer”
Lang=”es”

  • Actualizamos:

/usr/share/webapps/awstats/6.9/hostroot/cgi-bin/awstats.pl -config=NroIPServer -update

  • Programamos para que genera reportes cada hora mediante cron

# crontab -e

y agregamos

0 * * * * /usr/share/webapps/awstats/6.9/hostroot/cgi-bin/awstats.pl -config=NroIPServer -update >/dev/null

Escrito por Ernie Rojas Villoslado

Octubre 29, 2008 a 1:57 am

Escrito en GNU/Linux, Seguridad, apache

Etiquetado con , , ,

Gentoo Perú

sin comentarios

La semana pasada estuve revisando en la red sobre las comunidades de gentoo y vi que hace unos años hubo una inciativa de crear la comunidad de Gentoo Perú, pero que ahora no esta activa por lo que me he propuesto en reactivar esta comunidad.

Por lo pronto he creado un grupo de usuarios en google http://groups.google.com.pe/group/gentoo-peru y un canal no oficial en el IRC en el servidor de Freenode ##gentoo-pe (doble michi).

Desde aqui hago una invitación a todos los interesados en ser parte de este equipo y juntos ir mejorando la comunidad, que desde ya he pensado en algunas actividades como:

  • Creación de una página web.
  • Foros
  • Logo
  • Listas de Correo
  • Dominio propio
  • Hosting
  • Wiki
  • Evento inagural de la comunidad

Bueno espero la respuesta por parte de la comunidad de software libre peruana y personas interesadas en colaborar con los recursos que tengan disponibles.

Grupos de Google
Gentoo Perú
Consultar este grupo

Escrito por Ernie Rojas Villoslado

Octubre 27, 2008 a 4:55 am

Escrito en GNU/Linux

Etiquetado con , , ,

Raid en Gentoo

sin comentarios

Entendemos por raid un conjunto de dispositivos de almacenamiento que puden combinarse entre si en forma de matrices para brindar mayor redundancia, tolerancia a errores, seguridad, etc

En este post vamos a trabajar sobre el Raid 1, el cual nos da como ventaja tener un disco espejo con el que sincronizara los datos que vaya almacenando, la desventaja seria que contariamos con menor cantidad de almacenamiento.

En gentoo contamos con la herramienta mdadm que nos permitira crear los RAID segun el tipo que deseemos.

Con un modprobe -l | grep raid vemos los tipos de raid que tenemos disponibles:

- Raid 0
- Raid 1
- Raid 10
- Raid 456

- Cargamos el modulo para crear raid1: modprobe raid1
Para crear los RAID’s primero deberemos de particionar nuestros discos duros con el tipo de particion “fd” para nuestro caso dos discos duros:

Device Boot Start End Blocks Id System
/dev/sda1 * 1 13 104391 fd Linux raid autodetect
/dev/sda2 14 75 498015 fd Linux raid autodetect
/dev/sda3 76 319 1959930 fd Linux raid autodetect
/dev/sda4 320 652 2674822+ fd Linux raid autodetect

Device Boot Start End Blocks Id System
/dev/sdb1 * 1 13 104391 fd Linux raid autodetect
/dev/sdb2 14 75 498015 fd Linux raid autodetect
/dev/sdb3 76 319 1959930 fd Linux raid autodetect
/dev/sdb4 320 652 2674822+ fd Linux raid autodetect

A continuacion crearemos los nodos y dispositivos:

mknod /dev/md1 b 9 1 –> para /boot
mknod /dev/md2 b 9 2 –> para swap
mknod /dev/md3 b 9 3 –> para /
mknod /dev/md4 b 9 4 –> para LVM

mdadm –create /dev/md1 –level=1 –raid-devices=2 /dev/sda1 /dev/sdb1
mdadm –create /dev/md2 –level=1 –raid-devices=2 /dev/sda2 /dev/sdb2
mdadm –create /dev/md3 –level=1 –raid-devices=2 /dev/sda3 /dev/sdb3
mdadm –create /dev/md4 –level=1 –raid-devices=2 /dev/sda4 /dev/sdb4

Con esto obtendremos los dispositivos:

/dev/md1
/dev/md2
/dev/md3
/dev/md4

que los podremos usar como cualquier dispositivo incluso para crear LVM’s, el cual los veremos en un proximo post.

Escrito por Ernie Rojas Villoslado

Octubre 24, 2008 a 12:40 am

Escrito en GNU/Linux

Etiquetado con , , , ,

PRO/Wireless 3945

sin comentarios

El día de hoy me vi con el siguiente problema, reconfigure mi kernel que habia instalado anteriormente con vanilla-sources por el de gentoo-sources en la version 2.6.27 y al configurar la tarjeta inalambrica de mi laptop me di con la sorpresa que dicho modulo no se encontraba listado

y leyendo por alli me di con la sorpresa que este modulo necesitaba que la opcion “Generic IEEE 802.11 Networking Stack (mac80211)” este activada por lo que pase a habilitar esta opcion

Y con esta ya podia tener listado el modulo para las tarjetas 3945

Y como vemos en esta version del kernel ya viene la opción para habilitar la luz del led.

Escrito por Ernie Rojas Villoslado

Octubre 15, 2008 a 1:33 am

Escrito en GNU/Linux

Etiquetado con , ,

Linux 2.6.27

sin comentarios

Hoy salió a la luz la versión 2.6.27 del kernel linux con muchas caracateristicas nuevas especialmente el soporte para una variedad de webcams, asi como tambien para soporte a dispositivos especificos de las OLPC.

Asi que me di un tiempo y lo instale, bueno en gentoo aun no es estable esta version del kernel por lo q use los vanilla-sources y usando genkernel obtuve un kernel a la medida de mis necesidades sin ningun problema:

genkernel --kernel-config=config --menuconfig --clean --mrproper --mountboot --install --bootloader=grub --lvm2 --loglevel=5 all

Escrito por Ernie Rojas Villoslado

Octubre 11, 2008 a 4:24 am

Escrito en FLOSS, GNU/Linux