dissabte, 23 de febrer del 2008

Apparmor a Opensuse i els problemes amb el syslogd

Per qüestions de monitorització i similitud entre màquines sempre instal·lem el syslogd als servidors enlloc d'utilitzar el més nou syslog-ng (aishh! algun dia ho canviarem).
Doncs en les últimes instal·lacions de la opensuse 10.x desinstalavem el que venia per defecte (syslog-ng) i posàvem el syslogd, canviàvem la configuració del fitxer /etc/syslogd.conf per a que redirigis els logs a on ens interesses, i ens trobàvem que res funcionava. No es generàvem logs i a més el syslogd s'arrancava però immediatament es posava en mode "defunct", fent un ps el podíem veure moribund:

# ps -ef| grep -i syslogd
root 9601 9600 0 11:50 ? 00:00:00 [syslogd]

El problema ara, estava en endevinar que podia passar, i dic endevinar perquè òbviament no tenia cap log on mirar per saber que podia estar passant.. Després de fer strace, de provar de canviar el syslog.conf i tot el que se'm podia acudir, vaig baixar a la consola i em vaig trobar amb uns "simpàtics" missatges que deien algo així com:

type=APPARMOR_DENIED msg=audit(1203504641.685:6): type=1503 operation="file_lock" requested_mask="k" denied_mask="k" name="/var/run/syslogd.pid" pid=9601 profile="/sbin/syslogd"

Així que aquí tenia al culpable, l'aplicació d'Apparmor que ve amb les últimes versions de OpenSuse activada, estava bloquejant que el syslog pogués arrancar correctament. Vaig parar el apparmor (/etc/init.d/boot.apparmor stop) i rearrancar el procés de syslogd, amb el que tot va començar a funcionar correctament. Se'm va passar per la ment la idea de deixar-ho així i seguir treballant en la instal.lació (que ja anem prou carregats de feina), però vaig seguir mirant de què anava el apparmor i perquè podia estar-me fent la punyeta d'aquesta manera.

El apparmor és un desenvolupament fet per Novell que limita el que poden fer els processos en una màquina linux, com per exemple a quin directori poden accedir, que poden fer amb tal fitxer (llegir, escriure,...) de manera molt més concreta del que es podia fer antigament amb els permisos d'execució per usuari. Si voleu més informació podeu llegir a la wikipedia, a l'entrada de l'apparmor.
Em sembla que per contra els de Red Hat utilitzen SELinux.

Bé, indagant una mica més trobo que la configuració del apparmor es troba al /etc/apparmor.d, on per cada un dels processos que es volen definir tenim un fitxer que descriu que poden o no poden fer. Pel syslogd hi ha el fitxer sbin.syslogd, on està la línia de marràs:
/var/run/syslogd.pid lrw,
Al final, trobo que els de OpenSuse tenen reconegut com un bug que el perfil definit pel syslogd a la instal.lació del apparmor està mal definit i aquesta línia deuria ser:
/var/run/syslogd.pid klrw
(com diu al error de la consola requested_mask="k")

Ho canvio i per fi, tot va bé amb apparmor inclòs. Unes quantes hores de feina perdudes per un detall de no res..

dimecres, 20 de febrer del 2008

Nokia i l'EAP-TTLS/PAP

Realment no se que té Nokia en contra de l'EAP-TTLS/PAP per a que no l'implementin a cap dels seus productes. I encara entenc menys que no es pugui fer servir a la seva gama d'internet tablets que si alguna cosa han de tindre es capacitat de connexió amb la varietat de protocols WIFI que existeixen.

Per als que estigueu perduts, us faig un resum ràpid:
Degut a que el protocol WEP (Wired Equivalent Privacy) s'ha demostrat completament insegur, la tendència actual en el mon de les comunicacions sense fils es fer servir protocol WPA (Wifi Protected Access). Aquest protocol és mes segur per definició que el WEP, pero encara té deficiències com la no encriptació del canal de comunicació o la no autenticació de la identitat del servidor de claus. Aquestes dues vulnerabilitats permetrien a un usuari maliciòs capturar el trafic de la xarxa sense fils o inclùs suplantar el servidor de claus per obtenir les claus dels usuaris. Per aquest motiu moltes empreses fan servir EAP (Extensible Authentication Protocol) que permet combinar la seguretat de les claus WPA amb altres mètodes d'autenticació. A la meva feina vem decidir muntar un sistema sense fils basat en WPA + EAP-TTLS (Tunneled Transport Layer Security) per solucionar les dues vulnerabilitats que he mencionat abans, i amb autenticació PAP ja que es la mes compatible amb un sistema de claus basat en linux.

Un cop explicat tot això, tornem al tema que ens ocupa. Nokia fa poc que ha llençat al mercat el seu tercer internet tablet, a més amb sistema operatiu nou (OS2008), amb suport EAP-TTLS/MSCHAPv2 (autenticació basada en claus windows), pero NO funciona amb EAP-TTLS/PAP que és un dels esquemes mes estesos de seguretat sense fils.

Per sort el mon del programari lliure te una comunitat que s'ho curra per a solucionar problemes com aquest, i després de molt buscar vaig trobar una possible sol·lució:
Partim de que si Nokia no dona suport per aquest protocol ha d'haver-hi un altre programa que el dongui. A Linux es fa servir WPA_SUPPLICANT que es programari lliure i per tant tenim el seu codi font. Ara ens cal compilar-lo per a OS2008 i que funcioni. Com que de compilar no en tinc ni idea, vaig recorrer a internet i vaig trobar algú que ho havia fet (enllaç).

Primer vaig instal·lar el WPA_SUPPLICANT i el paquet WIRELESS-TOOLS que pots trobar aqui. Nomès son els binaris empaquetats amb tar i comprimits amb bzip2, aixi que els vaig desempaquetar i els vaig copiar directament al /usr/bin.
Abans de provar si l'invent funcionava em vaig assabentar de que era necessari crear un dummyAP. Aquesta connexió falsa, fa creure als programes que s'està fent servir l'administració de connexions estandard i d'aquesta manera no donen problemes. Be, doncs el vaig crear i em vaig connectar a la connexió DEFAULT corresponent al dummyAP.
Ara ens queda crear el fitxer de configuració del WPA_SUPPLICANT al que direm wpa_supplicant.conf:

eapol_version=1
ap_scan=1
fast_reauth=1

network={
ssid="SSID"
scan_ssid=1
proto=WPA
key_mgmt=WPA-EAP
pairwise=TKIP
group=TKIP
eap=TTLS
#ca_cert="/etc/certs/certificat.pem"
anonymous_identity="anonymous"
phase2="auth=PAP"
identity="username"
password="secret"
}

Com podeu veure la linia que comprova el certificat del servidor està comentada, en el meu cas em donava alguns errors en cridar la comprovació del certificat, crec que es degut al tipus de certificat que faix servir, en altres casos pot funcionar amb la linia sense comentar.

Aqui es on acaben els preparatius i comença el test (tot ho farem com a superusuari):

1.-Fem neteja de configuracions wifi que poguem tindre penjades:

# ifconfig wlan0 down
# ifconfig wlan0 up

2.-Autentiquem amb WPA_SUPPLICANT:

# wpa_supplicant -c wpa_supplicant.conf -i wlan0 &

3.-Reclamem una adreça IP al servidor DHCP:

# udhcpc -i wlan0

En aquest moment hauriem de tindre la nostra connexió EAP-TTLS/PAP funcionant. La meva experiència es que aconsegueixo autenticar i rebo del servidor RADIUS el tant desitjat ACCESS-ACCEPT que ens permet connectar a la xarxa sense fils, pero tinc problemes per rebre IP del servidor DHCP. A més les vegades que he aconseguit connectar he tingut alguns problemes per mantindre la connexió i del handover entre estacions millor no en parlem.

En conclusió, crec que el tema encara està una mica verd. Crec que s'ha de fer un port en condicions del WPA_SUPPLICANT, o millor encara mostrar a Nokia que el PAP existeix i que el fa servir moltisima gent per a que ho incorporin en futures versions del firmware.

Calçotada :D

Com toca per aquestes dates dissabte passat vam organitzar una calçotada, aquest any es feia a casa meva. D'una llista de 15 convidats, entre refredats i compromisos es van presentar 8 mes un servidor que ja estava a casa preparant la logística de la llar de foc (bàsicament improvisant una parrilla).
A mig matí el Jordi i la Eli van aparèixer am 7 llitres de vi, i en vistes de que la gent no arribava, ens vem decidir a fer les compres de materia prima. Despres de visitar un parell de carnisseries i la verduleria del poble aconseguim 150 calçots (els va portar el pagès per nosaltres), un quart de xai i unes quantes butifarres.
En arribar a casa, ens estaven esperant amb butifarres caseres i una escarola. Després de les salutacions pertinents ens vem possar a preparar la teca. Passat el transitori inicial de trobar-li el punt als calçots i a la parrilla, es va assolir un mètode òptim de preparació. En acabar ens els vem cruspir gairebé tots reservant un forat per la carn que encara haviem de cuinar. De carn va quedar molt poca, i es que tot estava bonissim!!

Aqui us deixo una mostra de com va anar tot:



dimarts, 19 de febrer del 2008

Fotografies amb GIMP i Liquid Scale

Fa temps que conec el filtre Liquid Scale i les seves capacitats (Resumint és un redimensionat d'imatge sense perdua de contingut/informació), però no m'hi havia parat a jugar gaire. Buscant la web oficial a google m'he trobat aquesta plana web que ens pot donar una idea ràpida del que s'hi pot fer, i com que suposo que en breu publicarem alguna coseta sobre l'anterior cap de setmana incloent alguna fotografia m'ha semblat un bon moment per fer-ne referència.
Com a curiositat històrica, el filtre és fruit de l'investigació publicada lliure per dos investigadors, el filtre també està disponible per l'omnipresent Photoshop, amb la salvetat de ser de pagament (Si mal no recordo) i que va sortir abans per GIMP 2.4.