viernes, 31 de diciembre de 2004

Dichoso modo Ad-Hoc

La gente de Calibre pasamos la mañana de ayer reunidos en casa de Grex (con refrigerio y comida incluidos). Grex, que siempre se ha caracterizado por su toque moderno y vanguardista, nos comentó que tenia su red wifi configurada en modo Ad-Hoc. Así pues, y tras varios intentos fallidos, me auto recuerdo el flag de wicontrol para futuras visitas a su casa.


wicontrol -p 3


Nota: 3 para Ad-Hoc y 1 para BSS

lunes, 27 de diciembre de 2004

Seguridad arbol de ports FreeBSD

Me gusta tener el árbol de ports (y paquetes instalados) al día. No por 'fardar' de nueva release, que probablemente no sepa qué trae de nuevo, sino por estar seguro que no tenemos fallos de seguridad. Internet es una selva y los 'defaces' (o cosas peores) están a la orden del día.
Una maravilla que hace poco que descubrí es portaudit (security/portaudit). Se trata de una pequeña aplicación que haciendo uso de VuXML Database muestra las vulnerabilidades de las aplicaciones que tenemos instaladas en el sistema. Veamos una sesión con portaudit:



krypton# portaudit -Fda

Receiving auditfile.tbz (17217 bytes): 100%

17217 bytes transferred in 0.2 seconds (86.66 kBps)

database installed.



Affected package: ruby-1.8.2.p2_1

Type of problem: ruby -- CGI DoS.

Reference: http://www.FreeBSD.org/ports/portaudit/d656296b-33ff-11d9-a9e7-0001020eed82.html



Affected package: FreeBSD-502010


Type of problem: multiple vulnerabilities in the cvs server code.

Reference: http://www.FreeBSD.org/ports/portaudit/d2102505-f03d-11d8-81b0-000347a4fa7d.html

Note: To disable this check add the uuid to `portaudit_fixed' in /usr/local/etc/portaudit.conf



1 problem(s) in your installed packages found.



You are advised to update or deinstall the affected package(s) immediately.





Vemos como ha descubierto 2 vulnerabilidades, aunque en realidad ahora veremos que es sólo una. En primer lugar nos avisa que actualicemos ruby (necesario para portupgrade) ya que la versión que tenemos instalada es vulnerable a un ataque DoS. Por otra parte se nos avisa que el CVS server posee un error. Sin embargo estoy seguro que esto ya está solventado (yo mismo lo actualicé a mano) así que edito el fichero /usr/local/etc/portaudit.conf añadiendo:


portaudit_fixed="d2102505-f03d-11d8-81b0-000347a4fa7d"


Una vez actualizado todo volvemos a lanzar portaudit:


krypton# portaudit -Fda


New database installed.

0 problem(s) in your installed packages found.



Por último, si queremos que portaudit trabaje antes de instalar cualquier aplicación vulnerable, podemos usar sysutils/pkg_install-devel. Por ejemplo, problemos a instalar mysql-client en nuestro árbol de ports:


neely:/usr/ports/databases/mysql40-client$ make

===> mysql-client-4.0.18_1 has known vulnerabilities:


>> MySQL insecure temporary file creation (mysqlbug).



>> Please update your ports tree and try again.




Si lo que nos gusta es el masoquismo podemos obligar a que, aún sabiendo que la aplicación tiene vulnerabilidades, lo instale mediante make -DDISABLE_VULNERABILITIES

Parece que (por hoy) podemos dormir un poco mejor :-)

lunes, 20 de diciembre de 2004

OpenBSD install-CD en 3 pasos



cd $HOME && mkdir -p OpenBSD/3.6/i386/ && cd OpenBSD/3.6/i386/

ncftpget ftp://ftp3.usa.openbsd.org/pub/OpenBSD/3.6/i386/*

cd ../../ && mkisofs -vrTJV "OpenBSD36" -b 3.6/i386/cdrom36.fs -c boot.catalog -o OpenBSD36.iso /tmp/


Aunque como siempre, si podeis permitiros ayudar al proyecto comprando CDs, camisetas y demás, podeis hacerlo aquí

martes, 7 de diciembre de 2004

CVSup sources y ports

A petición popular pego el script que uso para tener mi sistema FreeBSD actualizado vía CVS. Realmente no tiene nada del otro mundo y es un refrito de varios que he visto por ahí, pero eso sí, funciona de maravilla ;-)


#!/usr/local/bin/bash



export PORTS_DBDRIVER=bdb1_hash

export SUP_PATH=/usr/local/etc/cvsup/sup/




echo Subject: `hostname` weekly cvsup run output


if SERVER=`fastest_cvsup -q -c uk,ie,fr,de,fi,no,nl`; then

/usr/local/bin/cvsup -g -L 2 -h $SERVER $SUP_PATH/supfile

fi


echo Subject: `hostname` updating database

echo This take a long time. Please, be patient :-)

portsdb -uU






Evidentemente la ruta del supfile debe ser adaptada para que funcione. Además recomiendo lanzar el script bajo una pantalla virtual (screen) y dejar el proecso en background ya que el portsdb tarda bastante.

miércoles, 27 de octubre de 2004

Gnome 2.6 FreeBSD

Finalmente compilé gnome 2.6 entero para FreeBSD. Parace bastante estable, veremos a ver lo que duro con él.

Por otra parte he logrado averiguar (google!) cómo añadir nuevas teclas de acceso de rápido en Gnome. Es un incordio manejar el ratón (odio el ratón!) pudiendo tener el teclado que voy mucho más deprisa

Lanzamos gconf-editor y vamos a apps/metacity:

* global keybindings, las 'claves' "run_command[x]", donde se define la combinación de teclas.
* keybindings_commands, las 'claves' "command_[x]" donde defines el comando.

No es muy cómodo hacerlo así. Además, tienes un número limitado de comandos. Así que lo mejor es usar un programa adicional. A mi me gusta especialmente xbindkeys. En debian existe xbindkeys-configure (o algo asi) para configurarlo muy fácilmente. Lo lanzas al inicio de tu sesión gnome y tan feliz.

lunes, 25 de octubre de 2004

Problemas con Apache y PHP

Acabo de arreglar Apache ya que no mostraba bien páginas basadas en PHP. Tras revisar el /var/log/httpd-errors.log me he dado cuenta de:


PHP Warning: Unknown(): Unable to load dynamic library './gd.so' - Cannot open "./gd.so" in Unknown on line 0
PPHP Warning: Unknown(): Unable to load dynamic library './session.so' - Cannot open "./session.so" in Unknown on line 0
PPHP Warning: Unknown(): Unable to load dynamic library './pcre.so' - Cannot open "./pcre.so" in Unknown on line 0
PPHP Warning: Unknown(): Unable to load dynamic library './xml.so' - Cannot open "./xml.so" in Unknown on line 0
PPHP Warning: Unknown(): Unable to load dynamic library './gettext.so' - Cannot open "./gettext.so" in Unknown on line 0


El otro día actualicé los ports relativos al mod_php y apache por lo que sospecho que se debe a esto. Así que googleando me encuentro con una referencia al /usr/port/UPDATNG en el que dice: "If you have a previous php.ini configuration file, be sure to comment out
the extension_dir parameter, since the correct path is statically
compiled into the PHP binary."


Comentamos la línea extension_dir y vualá! ya funciona!

sábado, 23 de octubre de 2004

Java Strikes Back

He vuelto a reinstalar Java tras el formateo general de la pasada semana:


mv j2sdk-1_4_2_01-linux-i586.bin /usr/local



chmod 755 j2sdk-1_4_2_01-linux-i586.bin


./j2sdk-1_4_2_01-linux-i586.bin


ln -s /usr/local/j2sdk1.4.2_01 /usr/local/jdk




editar /etc/profile


export PATH=$PATH:/usr/local/jdk/bin
export JAVA_HOME=/usr/local/jdk


Mandé esta receta el otro día a la lista del gluem y parece que gustó :-) Supongo que poco a poco iré publicando las cientos de recetas que tengo por aqui en texto plano. Soy muy vago para pasar todo a un pdf como dios manda

Debo montar el servidor de imágenes cuanto antes. Es un horror volver a instalar todo (al menos desde un punto de inicio considerable)

El siguiente paso es comenzar la programación del dichoso sistema distribuido utilizando alguna implementación de CORBA para la asignatura de middelware. Veremos a ver si todo el muerto de java merece realmente la pena.

jueves, 21 de octubre de 2004

x.org bajo FreeBSD

He pasado el dia intentado instalar y configurar x.org bajo FreeBSD 5.2. He probado a instalarlo usando el árbol de ports. La cosa ha ido bastante bien pero me he dado cuenta que no bajaba ni compilaba la aplicación xcompmgr necesaria para sombras y trasparencias, así que decidí volver a intentar usando el repositorio CVS del proyecto. Es bastante fácil:


cvs -d :pserver:anoncvs@cvs.freedesktop.org:/cvs/xorg login
cvs -d :pserver:anoncvs@cvs.freedesktop.org:/cvs/xorg cp -P xc
cd xc && make World && make install


Ahora que ya tenemos la nueva versión instalada, pasemos a construir xcompmgr :-)


cvs -d :pserver:anoncvs@cvs.freedesktop.org:/cvs/xapps login
cvs -d :pserver:anoncvs@cvs.freedesktop.org:/cvs/xapps co xcompmgr

cd xcompmgr && ./augoten.sh ./configure --prefix=/usr && make && make install


Por último, compilemos transset :


cvs -d :pserver:anoncvs@cvs.freedesktop.org:/cvs/xapps co transset
cd transset && make && cp transset /usr/local/bin



Have fun!