oriolrius.cat

Des del 2000 compartiendo sobre…

Category: Networking and Internet

APT protocol o AptURL – instal·lant soft des del browser

Reading time: < 1 minute

AptURL o APT protocol plateja una idea molt interessant. Per exemple, quan estem mirant una pàgina web i aquesta ens parla d’un aplicatiu per Debian/Ubuntu la idea seria clicar a un enllaç del tipus: apt:exampleapp i això llençaria el gestor d’aplicacions (package manager) del sistema APT que instal·laria aquesta applicació en el nostre sistema.
Per tal de fer això possible hi ha una serie d’extencions per diversos navegadors: firefox, crhome, konqueror, opera, etc. si voleu més informació podeu consultar el wiki d’ubuntu on parla de AptURL.

Notes sobre balanceig de càrrega i alta disponibilitat (load-balancig and HA)

Reading time: < 1 minute Al wiki fa uns dies vaig començar una secció referedia a temes de balanceig de càrrega i alta disponibilitat en linux, en escència són fruit de la recol·lecció d'informació que vaig fer per preparar un projecte que estic montant i que requereix aquestes funcionalitats. Així doncs, per donar-li rellevancia aquestes notes malgrat no estan acabades ni tenen un ordre i idioma depurats les adjunto aquí.

byobu – screen molt millorat

Reading time: 2 – 2 minutes

A aquestes altures tothom coneix screen i a quin més qui menos li ha solucionat més d’un problema. Pels que no el coneixeu, podeu donar un cop d’ull als posts que vaig fer sobre el tema:

Per començar un screenshot de l’eina:
byobu screenshot

Pel que fa a les funcionalitats hereda tota la potència i accessos ràpids que té screen, a més d’un entorn basat en ncurses per configurar l’aspecte de les pantalles i comportament de l’eina. És genial amb un cop d’ull poder saber les consoles que tenim obertes i monitoritzar el sistema des de la shell. A més també permet instal·lar-se al ~/.profile de l’usuari de forma senzilla (byobu-launcher-install) perquè al fer un login o un ssh tinguem la sessió directament dintre del byobu.

A la Ubuntu Lucid (10.04) i a Fedora 14 ja he trobat el paquet, pel que fa a MeeGo aquest no estava disponible però m’he baixat el tar.gz i compilar-lo ha estat 1s.

La pàgina web de: byobu.

Algunes referències interessants de les tecles d’screen:

wbinfo: Windbind information

Reading time: 1 – 2 minutes

Mai ho havia necessitat fins avui, tenia un samba que accedia a un AD per saber quins eren els seus usuaris i grups d’usuaris. Així doncs, el problema que tenia era com podia saber quins usuaris tenia i quins grups. Es veu que tot això es fa a través de la comanda wbinfo.

A continuació poso una petita referència dels paràmetres que més bé m’han anat:

# llista usuaris
wbinfo -u
# llista grups
wbinfo -g
# info d'un usuari
wbinfo -i DOMINI+username
# grups que té l'usuari
wbinfo -r DOMINI+username
# informació d'un grup a partir del GID
wbinfo --gid-info=GID
# obtenir el GID a partir del nom del grup
wbinfo --group-info=DOMINI+groupname
# informació d'un usuari a partir del UID
wbinfo --uid-info=UID

Referència completa de la comanda: wbinfo

Zeroconf – quatre apunts que poden ser útils

Reading time: < 1 minute No tenia gaire frescos els mecanismes que usava Zeroconf per treballar, així doncs, arran d'un comentari fet pel Marcos he decidit invertir-hi una estoneta per fer-me uns petits apunts sobre el tema. Són quatre notes que he posat al wiki i que enllaço a continuació espero que ús siguin útils.

QNAP TS-439 Pro II – Servidor NAS

Reading time: 2 – 3 minutes

Després de que aquest mes d’agost caigués un llamp a casa del veï he hagut de canviar forces coses que tenia per casa, una d’elles és el servidor de NAS que tenia fins ara, es tractava d’un HP ML110 G4 que amb 6 discs durs i amb el software appliance d’OpenFiler m’havia fet una molt bona feina els últims temps, però entre els problemes de hardware deguts al llamp i que fa molt de temps que OpenFiler no s’actualitza, al final m’he decidit a comprar un QNAP TS-439 Pro II TurboNAS. De moment he de dir que no podia haver fet millor compra, malgrat no hi ha res perfecte en aquest món he de dir que tot i ser un producte força car les seva infinitat de funcionalitats i simplicitat d’ús ja m’han estalviat més calers dels que val. Per cert, suposo que no cal dir que té un cor Linux, oi?
TS-439ProII
Per donar fer de la gran quanitat de funcionalitats que té en destacaré unes quantes, ja aviso que no les diré totes perquè això faria que això fos un post inmens.

  • file server (SAMBA)
  • FTP server
  • printer server
  • web server
  • Windows AD support
  • WebDAV
  • Share Folder Aggregation (also known as DFS)
  • IPv6 and IPv4 dual-stack
  • Wake on LAN
  • schedule power on/ off
  • HDD S.M.A.R.T
  • comprehensive log systems
  • policy-based unauthorized IP blocking
  • VMWare vSphere4 (ESX 4.0 and above) certified
  • iSCSI
  • multiple LUNs management
  • Secure IP SAN (CHAP auth and ACL)
  • SPC-3 clustered environment
  • MPIO for failover and load balancing
  • VDD (Virtual Disk Drive)
  • Encrypted remote replication
  • Backup button and complete backup solution
  • RAID 0,1,5,5+hot spare, 6 and JBOD
  • Dual LAN: failover, load balancing and multi-IP setting
  • Alerts via SMS and email
  • SNMP
  • Shared folder agregation
  • QPKG: Joola, mldonkey, asterisk, etc.
  • NTFS, FAT32, EXT3, EXT4
  • SMB, AFP, NFS
  • ISO mount
  • UPnP and DLNA server
  • Web Multimedia center, really powerful
  • DDNS
  • Hot-SWAP
  • etc

Malgrat sembli que la llista és llarguíssima, com deia abans m’estic deixant de posar moltíssimes coses, així doncs, ús el recomano moltíssim.

Prey – rastrejar el portàtil i el lladre

Reading time: 2 – 4 minutes

prey logoQuan ens roben el portàtil l’únic que ens queda fer és resar perquè siguem realistes, és molt poc provable que la policia el trobi. Així doncs, el que preten fer prey és enviar-nos tota la informació possible del portàtil després de que ens l’hagin robat.

El seu funcionament és força simple, però al mateix temps s’ha de dir que la idea sembla força eficient. En la versió per linux es tracta d’un script fet amb perl que es col·loca al crontab, de forma que cada x’s minuts es connecta a una URL del servidor de prey o del nostre propi servidor. Aquest URL sovint respon dient que tot va bé, és a dir, que el portàtil no ha estat marcat com a robat. En cas contrari, el servidor respon via HTTP dient que el dispositiu ha estat robat. En aquest moment és quan l’script es posa a treballar i es posa a recollir tot tipus d’informació per reportar-la a la pàgina web:

  • geolocalització per GPS o Wifi, si no disposem de GPS. He provat la localització per wifi i va força bé.
  • fa fotos amb la webcam del portàtil i captures de pantalla
  • reporta tota la informació que pot sobre processos que hi ha corrent al sistema, rutes, informació de les wifis veïnes, etc.
  • també podem fer sonar alarmes, borrar informació remotament, que ens enviï alguns arxius abans de ser borrats,etc.
  • a més els reports que es van reben queden arxivats en una interficie força amigable i molt senzilla d’usar
  • a més el software d’auto-actualitza

La compte gratuïta que ofereix la pàgina web permet tracejar fins a 3 dispositius, obviament si usem el nostre propi servidor HTTP podrem tracejar tots els dispositius que volem. Si volem usar més dispositius haurem d’adquirir una compte professional que tampoc sembla massa cara: per exemple, la més econòmica és la de 12€/mes que permet controlar fins a 10 dispositius amb un màxim de 25 informes per cada dispositiu.

Jo he provat la versió de Windows i la de Linux i ambdues m’han funcionat força bé a la primera, però pel que posa a la web també tenen la versió de Mac i la d’Android. Aquest última diria que és molt nova. Malgrat això en els meus dos Androids no uso prey sinó que uso WaveSecure. Pensat especialment per a dispostius mòbils, ja que tenen versions per: Blackberry, Symbian, Windows phone, Java i Android, és clar.

supervisord – hang on to your processes

Reading time: 3 – 4 minutes

supervisord logoSempre he estat un gran defensor del monit com a complement al sistema de control de serveis de Linux: rc.d scripts. Monit permet a través d’una interficie de gestió web controlar i delegar a usuaris sense coneixements de Linux el control bàsic dels serveis d’una màquina. Per tal de supervisar si un servei esta corrent es basa en el PID del procés i la seva existència, cosa que la veritat en molts casos és una mica pobre. Però té una gran capacitat de poder configurar accions en base a carregues de memòria, CPU, etc.

Supervisord és un software que en certa forma ens dona una solució integrada i força més eficient en alguns aspectes que no pas monit+rc.d, per exemple, la vigilància dels processos és molt més efectiva que no pas amb monit perquè aquests es llencen com a fills del supervisord. Això li permet al pare poder comprovar si realment el fill és viu o no. A més, quan un fill mor el pare ràpidament ho sap i pot reiniciar-lo si és això el que volem. Mentre que monit per fer això el que fa és un procés de polling cada x’s segons preguntant l’estat dels processos.

Monit disposa d’interficie web i control via CLI del sistema, al igual que supervisord. Malgrat monit mostra algunes informacions sobre càrrega del sistema que no és capaç de mostrar supervisord. Per altre banda supervisord al llençar els processos ell de forma nativa permet redirigir les sortides d’aquests (stdout, stderr, etc).

Fora d’aquestes petites avantatges que he comentat fins ara de monit sobre supervisord, per la resta de coses podriem dir que supervisord li dona mil voltes a monit, començant pel concepte. Així doncs, a partir d’ara en l’article em centraré en explicar les funcionalitats que té sense comprar-les:

  • http server gestió dels processos via web
  • supervisorctl gestió via CLI, és una interficie interactiva de gestió no la propia CLI del sistema.
  • program permet parametritzar el llençament i control d’un servei amb directori de treball, umask, prioritat, autostart, autorestart, retries, usuari, redirecció de les sortides estàndard i error cap a fitxers de configuració, variables d’entorn, etc.
  • group es poden agrupar els serveis per tal de tractar-los com a una unitat.
  • fcgi interface permet controlar grups de serveis llençats via FastCGI. Evitant que aquesta tasca la faci, per exemple, Apache i oferint una gestió de concurrència molt més eficient.
  • events es defineixen un conjunt d’events a partir dels quals podem definir una serie d’scripts per capturar-los i donar un tractament del mateix de forma controlada. Per exemple, l’estat d’un procés canvia i volem que quan això passi es reinici el mateix procés.
  • rpcinterface també disposa d’una interficie XML-RPC a través de la qual podem connectar-hi aplicacions de tercers. Per exemple, una aplicació pot connectar via RPC per saber si un servei esta funcionant.

Properament he de fer la migració d’uns sistemes, així doncs, si no hi ha cap novetat usaré supervisord per controlar HAProxy, keepalived, entre d’altres moltes eines. Espero poder-ho anar documentant poc a poc.

PAM (Pluggable Authentication Modules)

Reading time: 2 – 2 minutes

Amb les quatre notes que adjunto en aquest article es preten tenir una guia per tal de poder seguir i entendre els fitxers de configuració associats a PAM.

Quan PAM va associat a un servei aquest té un fitxer de configuració dins de /etc/pam.d sovint amb el mateix nom del servei o quelcom que ens el recorda. Dins de cada fitxer d’aquests es defineixen quatre categories pel procés d’autenticació:

  • auth – autenticació
  • account – gestió d’accés
  • password – quan i com es pot canviar la paraula de pas
  • session – entorn de configuració de l’usuari, accés al seu perfil

No és obligatori definir les quatre categories per tots els serveis, hi ha serveis que amb la categoria auth, en tenen prou. O d’altres que les requereixen totes.
PAM té una selecció de diferents models per cada categoria que s’organitzen en una pila. Cada mòdul esta etiquetat amb el que s’anomena una bandera de control. A través d’aquestes eines és com l’administrador controla el procés d’autenticació dels usuaris sobre els serveis.

Les banderes de control suportades per PAM són:

  • required
  • requisite
  • sufficient
  • optional

Si un mòdul marcat amb required, requisite o sufficient respon de forma negativa es deté l’execusió de la pila de forma inmediata.
Si la resposta és positiva en un mòdul: required, requisite o optional llavors PAM seguirà examinant la resta de mòduls.
Si un mòdul sufficient respon positivament es considera positiva la resposta a tota la categoria que s’esta examinant.

Quins processos consumeixen més SWAP en un linux?

Reading time: < 1 minute Tan senzill com llençar un top i un cop dins l’interficie premer O (majúscula) i seguidament p, amb un intro tornem a la pantalla del top i apareix una nova columna anomenada SWAP que ens diu quantes pàgines de memòria consumeix un procés, a més la llista de processos que es poden veure estan ordenats per ordre descendent segons el que més memòria SWAP ocupa.

Aprofitant l’article adjunto una referència interessant: Controlling your linux processes via linux.com.