Arxiu de l'autor: benetj

Com usar iptables-persistent en sistemes Debian

Què és iptables-persistent?

Iptables-persistent és un servei que ens simplificarà la vida al configurar el tallafocs iptables a un sistema basat en Debian.

NOTA: És necessari un usuari root o membre del grup sudoers per dur a terme aquestes configuracions.

Advertiment: Alerta amb el que fas amb la configuració de iptables. Una mala configuració pot dur a que deixis de tenir accés al servidor, així que alerta amb el que fas! No m’en faig responsable!

Instal·lació de iptables-persistent

La seva instal·lació és molt simple:

apt-get install iptables-persistent

Perfecte, la instal·lació ens crearà dos fitxers amb les regles de IPv4 i de IPv6 i ens demanarà on volem desar-los. Per defecte els posarà a /etc/iptables/rules.v4 i /etc/iptables/rules.v6.

Si ja teniem iptables-persistent instal·lat, podem crear-los de la següent forma:

iptables-save > /etc/iptables/rules.v4
ip6tables-save > /etc/iptables/rules.v6

Modificació de les regles d’iptables

Quan necessitem modificar regles de iptables hem de modificar els fitxers anteriorment esmentats, segons pertoqui.

nano /etc/iptables/rules.v4

Un cop modificats, per desar la configuració a iptables, només hem de reiniciar el servei de iptables-persistent

service iptables-persistent restart

Per veure si les nostres modificacions han tingut efecte, podem executar

iptables -L -n

fonts:

Resum del 2013

L’any que està apunt d’acabar, pobre 2013, ha estat, en global, un any negre. Ja va començar amb el propi número 13, gafat a tot el món occidental, carregat de supersitcions, infundades (?), vaja que, pràcticament, a ningú li agrada aquest número.

Docs, mira per on, a mi aquest any ha estat, en global, per a mi, positiu, i tant!!!!
Comencem pel Gener, perfecte, vaig entregar el treball final de carrera i aprovat. Soc Enginyer tècnic amb informàtica de gestió, títol rimbombant per dir que se programar, ara amb un títol.
Llavors va venir el Febrer, principis, la taca negra, l’empresa allà on feia feina na Magda, s’envà a norris, tanquen, problemes, atur, val “no passa res”.
Be seguim, tirant a finals, més precisament, el dia 25 en concret, a les 12:17h, va ser un canvi radical a la nostra vida. Colega soc pare! Va venir al món en Jaume, el nostre fillet que, el dia de Nadal va fer 10 mesets! joer quins 10 mesos tu!

Tot el mes de Març entre la baixa paternal i dies que me quedaren de l’any anterior, me vaig passar tot el mes a casa. Badocant en Jaume i a sa mare. Passejant-lo damunt el braç, dormint-lo damunt el meu pit, passejant amb la maxi-cosi…
Aquest fou el millor regal que poden fer, a més a més, el mes de Març tant jo, dia 11, com na Magda dia 22, feim l’aniversari. Jaja, genial! un regal per a tota la vida!
Fotos i més fotos, tenim el disc dur amb un munt de fotos, els mòbils a també, ja no fa falta dur una foto seva dins la cartera, si pots dur tot un album i gran quantitat de videos de les diferents cosetes que fa cada dia, per mostrar a tothom que coneixes, als companys de feina, etc …

A partir d’aquí tot és en Jaume, abans era monotema informàtica, web, internet en general. Ara, tot això ha quedat relegat a segon lloc, ara és tot Jaume, Jaume, i lo molt que babejam amb ell i per ell.
Els padrins, les padrines, les re-padrines, i en general tots els dels nostres voltants, van fora corda amb en Jaume. Sobretot a la meva part que és el primer net. Es total veure els teus pares que van fora corda i que quan venen no tenen cap mania en dir que venen a veure el seu net, be no només els pares, si no els companys nostres, el primer que te diuen es “com està en Jaumet”, “que fa en Jaumet” … es normal i ja ens hi hem acostumat.

Ja no me surten més paraules, només gràcies per aquest 2013 i esper que el 2014 sigui, al manco, igual o millor, i plé de bones experiències. I a tota la gent que m’envolta, sobre tot a na Magda i també en Jaume, moltes gràcies per tot.

Una abraçada i una besada digital.

Fix ubuntu: una ajuda per millorar la privacitat a l’ubuntu

Ubuntu, té un petit problema de privacitat. Per defecte, quan usam el Dash (cercador de l’ubuntu) envia els termes de cerca cap a diferents llocs. Fixau-vos-hi, quan cercau algun fitxer vos surten recomanacions de llibres i música que no teniu a l’ordinador, cert?. Envien els termes cap a amazon, ebay i d’altres, per això ens torna els suggeriments.

Aquest problema de privacitat, sols resideix al usar l’escriptori Unity, el per defecte d’Ubuntu. Si uses algun altre, com Gnome, KDE … o un altre sabor d’Ubuntu, com son Xubuntu, Kubuntu o linux Mint, no tendras aquest problema.

Com solucionar-ho, molt fàcil, copiant la següent línia, aferrar-la al terminal, posar la contrasenya i ja està arreglat

Aquí mateix teniu el còdi amb una sola línia.

V=`/usr/bin/lsb_release -rs`; if [ $V \< 12.10 ]; then echo "Good news! Your version of Ubuntu doesn't invade your privacy."; else gsettings set com.canonical.Unity.Lenses remote-content-search none; if [ $V \< 13.10 ]; then sudo apt-get remove -y unity-lens-shopping; else gsettings set com.canonical.Unity.Lenses disabled-scopes "['more_suggestions-amazon.scope', 'more_suggestions-u1ms.scope', 'more_suggestions-populartracks.scope', 'music-musicstore.scope', 'more_suggestions-ebay.scope', 'more_suggestions-ubuntushop.scope', 'more_suggestions-skimlinks.scope']"; fi; if ! grep -q productsearch.ubuntu.com /etc/hosts; then echo -e "\n127.0.0.1 productsearch.ubuntu.com" | sudo tee -a /etc/hosts >/dev/null; fi; echo "All done. Enjoy your privacy."; fi

Aquí, exactament, el códi anterior, explicat

#!/bin/bash
 
# Recupera i desa a la variable V, la versió d'Ubuntu que s'està executant
V=`/usr/bin/lsb_release -rs`
 
# Els problemes de privacitat comencen a la 12.10, per tant en versions 
# antigues no serà necessari fer res de res
if [ $V \< 12.10 ]; then
  echo "Good news! Your version of Ubuntu doesn't invade your privacy."
else

  # Deshabilitam "Remote Search", per tant els térmes de búsqueda del 
  # Dash no s'enviaran a través d'internet
  gsettings set com.canonical.Unity.Lenses remote-content-search none
 
  # Si estàs usant una versió inferior a 13.10, desinstalam unity-lens-shopping
  if [ $V \< 13.10 ]; then
    sudo apt-get remove -y unity-lens-shopping
 
  # Si estàs usant una versió superior, deshabilitam els punts remots
  else
    gsettings set com.canonical.Unity.Lenses disabled-scopes \
      "['more_suggestions-amazon.scope', 'more_suggestions-u1ms.scope',
      'more_suggestions-populartracks.scope', 'music-musicstore.scope',
      'more_suggestions-ebay.scope', 'more_suggestions-ubuntushop.scope',
      'more_suggestions-skimlinks.scope']"
  fi;
 
  # Bloqueig de connexions a servidores de publicitat d'Ubuntu, per si s'escau.
  if ! grep -q productsearch.ubuntu.com /etc/hosts; then
    echo -e "\n127.0.0.1 productsearch.ubuntu.com" | sudo tee -a /etc/hosts >/dev/null
  fi
 
  echo "All done. Enjoy your privacy."
fi

Vist a Fixubuntu.com

Prevenir la compartició de fotos a pinterest

Pinterest es una de les plataformes de compartició que més està creixent a internet.

A vegades no ens interessa que sigui fàcil que algú comparteixi una de les nostres fotografies a Pinterest, per les raons que siguin.

Doncs tenim una forma de fer-ho un poc més difícil, que no imposible.

Per evitar-ho simplement afegirem a la página, entre les etiquetes <head></head>:

<meta name="pinterest" content="nopin" />

Si volem modificar el missatge, simplement fem el següent:

<meta name="pinterest" content="nopin" description="Uep!, me sap greu però no pots compartir això" />

Si no vols evitar la compartició de totes les imatges, simplement només unes quantes, has de posar aquest atribut a l’etiqueta img que vulguis protegir:

<img src="imatge.jpg" nopin="nopin" />

Com he comentat abans, no és impossible la compartició, però ja ho posam més difícil.

font: Prevent pinning from your site | Pinterest

Crear icones de pantalla de windows 8 per una web

A la nova versió de windows, la 8, el primer que veu l’usuari es un panell amb les icones dels programes.

Microsoft, ha posat fàcil, als desenvolupadors web, la forma de crear aquestes icones. Si en volem tenir una per a la nostra web, tan sols s’han d’afegir aquestes dues etiquetes entre els tags <head></head>

<meta name="msapplication-TileColor" content="#123456"/>

<meta name="msapplication-TileImage" content="logo.png"/>

La primera, serà per asignar el color de fons, on #123456 serà el color RGB en anotació hexadecimal, l’altre serà el camí cap a la icona de la nostra web, que sortirà damunt del color que prèviament hem configurat.

 

Microsoft posa fàcil el testeig amb diferents Internet Explorer

Tantes son les versions de Internet Explorer, que per la gent que ens dedicam a la programació web, és un gran maldecap.

No en parlem si ja ens obliguen a que es vegi i funcioni bé amb Internet Explorer 6, un navegador que no segueix cap estàndar web i a més que ja te els seus anys.

Darrerament la política de Microsoft en vers als estandars web, pareix que está donant un canvi, i pareix que és cap a bò.

Ells saben que la gent que ens dedicam a la programació web, tenim el mal de cap de haver de provar amb vàries versions del seu producte, per això han creat una web amb diferents recursos que podem utilitzar per facilitar-nos la tasca de prova.Aquesta web es modern.IE, podem trobar desde analitzadors sintàctics online, com a imatges de màquines virtuals tant de windows XP, windows Vista, Windows 7 i Windows 8 amb les seves corresponents instal·lacions de Internet Explorer.

Per tant, per dur a terme les proves sols ens hem d’instal·lar el Virtual Box i baixar les diferents imatges de windows. Un cop instal·lat el virtual box, tenim a disposició un tutorial en pdf de com configurar les diferents màquines virtuals i els usuaris i contrasenyes que s’han configurat.

Fixau-vos el que deia que esta canviant la política de Microsoft, que posen solucions fins i tot per a gnu/Linux.

Com instal·lar Adobe Brackets a Ubuntu 13.04 Raring Ringtail

Un company de feina em va recomanar l’editor Adobe Brackets per editar HTML, CSS, JS de una forma cómoda i ràpida. Brackets és part d’Adobe, però és un projecte lliure hostejat a github.

Volia provar-lo, però como es d’esperar sols està per a Windows i per a Mac OS X. En el pc de casa sols hi tenc Ubuntu 13.04, ja pensava que no tendria versió per a gnu/linux. Pero Tatxaaan! la té!

Com se instal·la?

Molt fàcil, seguint les passes de la wiki del repositori d’Adobe Brackets a github. Sols hem de tenir en compte dues coses:

La següent explicació és per a una instal·lació de 32bits, si tiens instal·lada una versió de 64bits, simplement canvia el 32 per un 64 🙂 fàcil, eh? i l’altre que has de tenir instal·lat git a la teva màquina per poder descarregar-te el còdi de github.

mkdir ~/brackets && cd ~/brackets
git clone https://github.com/adobe/brackets.git
cd brackets
git submodule update --init
cd ..
wget https://github.com/downloads/pritambaral/brackets-shell/Brackets-shell-32.tar.bz2
tar xf Brackets-shell-32.tar.bz2 && rm Brackets-shell-32.tar.bz2
ln -s brackets/src www
ln -s brackets/samples ./samples
./Brackets

Espero que ho disfrutis.

Com Instal·lar Oracle Java 7 o Oracle Java 8 a Ubuntu via PPA

Necessitava instal·lar Oracle Java a la meva màquina de feina amb Ubuntu, actualitzada a la darrera versió 12.10 Quantal Quetzal. Després de googlejar un ratet m’he topat amb una bona i fàcil solució.

El grup Webupd8 ha creat un repositori a launchpad amb els binaris de l’Oracle Java, tant de la versió 7 como la versió 8.

Per poder instalar-lo, seguirem les següents passes:

Obrim un terminal i teclejam:

terminal:~$sudo add-apt-repository ppa:webupd8team/java 
terminal:~$sudo apt-get update 
terminal:~$sudo apt-get install oracle-java7-installer 
terminal:~$sudo echo oracle-java7-installer shared/accepted-oracle-license-v1-1 select true | sudo /usr/bin/debconf-set-selections

 

La darrera passa és per acceptar els termes de la llicència d’Oracle Java.

Llest!. Per assegurar-nos que tenim la versió desitjada:

 

terminal:~$java -version

 

I ens ha de mostrar alguna cosa similar a:

java version "1.7.0_09" 
Java(TM) SE Runtime Environment (build 1.7.0_09-b05)
Java HotSpot(TM) Server VM (build 23.5-b02, mixed mode)

 

Si per algun motiu el java -version no es el desitjat teclejam:

terminal:~$sudo update-java-alternatives -s java-7-oracle

 

Per eliminar el paquete

terminal:~$sudo apt-get remove oracle-java7-installer

 

Com usar Piwik amb Amazon CloudFront com a CDN

Aquesta entrada l’escric ja que m’he trobat en que hi ha poca informació de com usar l’Amazon CloudFront com a CDN de tipus Origin Pull (mirall).

Per tot el que he trobat sobre el CloudFront per internet era per usar conjuntament amb el servei de S3, que per el cas que el necessitava, no me servia per res. Fins i tot la documentació del CloudFront, t’explica com usar-lo juntament amb S3 (que nooo, que no és això que vull!!) Jo volia usar-lo per servir de manera ràpida el codi javascript d’analítica web Piwik, el qual tenc instal·lat a un servidor pròpi. Si, val, ho reconec, es una pijada 🙂

Que necessitem:

  • Una instal·lació de Piwik en un servidor accessible des d’internet (important, està clar).
  • Un compte de Amazon Web Services, validada.

Un cop tenim tot el que necessitem, ens donem d’alta al servei de CloudFront i pas a pas fem el següent:

Descàrrega de responsabilitats: Aquesta és la configuració que a mi m’ha anat be. No significa que pel teu cas sigui aquesta que hagis de seguir! No me faig responsable de cap mal funcionament!

  • Anem a la AWS Management Console i seleccionem el servei CloudFront.
  • Click al botó “Create distribution
  • Passa 1: Seleccionem el mètode d’entrega (Delivery Method). Per el nostre cas usarem el mètode Download.
  • Passa 2: Creació de la distribució (Create distribution).
  • Origin settings -> Origin Domain Name: Aquí posem la url de la instal·lació de Piwik del nostre servidor. (per Ex. piwik.domini.com) Origin ID -> s’auto completarà a partir de l’anterior camp. Després és editable. És un camp purament administratiu.
  • Default Cache Behavior Settings: Viewer Protocol Policy ->HTTP and HTTPS, Object Caching -> Use Origin Cache Headers, Forward Cookies -> All, Forward Query Strings -> Yes
  • Distribution Settings: Price Class -> Use All Edge Locations, Alternate Domain Names (CNAMEs) -> Aquí podem posar els diferents CNAMEs que creem a la nostra zona de DNS apuntant a la URL que, un cop finalitzada la configuració, ens proporcionaran, Podem crear-ne fins a un màxim de 10 (per exemple cdn1.piwik.domini.com), Default Root Object ->(buid), Logging -> Off, Comment -> (buid), Distribution State -> Enabled
Just a la dreta de cada un dels camps hi ha una icona d’informació, que si la pitjam, ens mostrarà per a que serveix cada camp i podrem triar el valor més adequat.

Un cop editats tots els camps, pitjem el botó “Create distribution” i ja ho tendrem. Seguidament ens mostrarà la consola de CloudFront amb les diferents distribucions que tinguem configurades. Cal dir que tarda uns minuts en estar actiu, ja que s’ha de desplegar per tota la xarxa de servidors de AWS.

Veurem que ens faciliten un nom de domini, un tant mal de recordar, del tipus [numeros-i-lletres].cloudfront.net, per això ens donen la oportunitat de crear àlies (CNAMEs), com l’exemple que hem posat cdn1.piwik.domini.com.

Com crear els CNAMEs?

Fàcil, s’ha d’accedir al panell de control de la zona de DNS, pot ser no tenguis a questa opció. Si no la tens, t’has de posar en contacte amb l’administrador del teu servei i demanar-li que els crei a la zona que li indiquis.

Posem un exemple:

Tenim el domini piwik.domini.com aquest és el domini de la instal·lació del piwik i el domini que ens han proporcionat per usar el CloudFront [numeros-i-lletres].cloudfront.net

A la zona de DNS creem noves entrades de tipus CNAME, per exemple

cdn1.piwik CNAME [numeros-i-lletres].cloudfront.net.

cdn2.piwik CNAME [numeros-i-lletres].cloudfront.net.

cdn3.piwik CNAME [numeros-i-lletres].cloudfront.net.

Podem crear tantes CNAME com volguem, però el CloudFront només n’accepta un màxim de 10.

Noteu el punt final després de cloudfront.net, es important posar-lo, si no la url vos quedaria [numeros-i-lletres].cloudfront.net.domini.com. per tant no funcionaria correctament.

Un cop finalitzada la configuració de la zona, s’ha de deixar propagar els DNS i posar els CNAME a la configuració del CloudFront. Important aquesta passa, ja que si no les tenim afegides a la configuració del CloudFront, no funcionarà l’invent.

Com hem vist, jo també :D, és molt fàcil de configurar.

Els pros i contres del JavaScript i jQuery

Anem a definir, amb poques paraules, el que és JavaScript, d’on ve i que podem fer amb ell.
JavaScript és un llenguatge interpretat pels navegadors, que s’usa per a la programació web (validació de dades per part de la capa client, millora de l’experiència d’usuari, …). Inicialment, es va anomenar LiveScript i fou inventat per enginyers de Netscape, més endavant es va re-anomenar a JavaScript. Molta gent deu pensar, o pensa, que el nom de JavaScript te a veure amb el llenguatge de programació Java, però, sincerament, només tenen de parescut el nom, res més.

Durant els darrers anys JavaScript s’ha tornat molt popular entre els programadors web.

Quins usos li podem donar al JavaScript? doncs, com hem començat a introduïr-ho més amunt. Passarem a enumerar unes quantes:

  • El podem fer servir per validar dades
  • Per millorar l’experiència d’usuari (cosetes que es mouen per la pàgina, efectes xulixaxis 😀 ).
  • També per el tan anomenat AJAX, que, no és més que, enviar dades a un servidor i pintar-les, o no, per pantalla.
  • Detecció del navegador que s’està usant
  • Manipulació de cookies
  • Analítica web,…

Ara que sabem el que podem fer, anam a llistar els Pros i Contres del Javascript

Pros:

  • Rendiment: El JavaScript s’executa íntegrament en el navegador del client salvant temps de peticions i d’amplada de banda del servidor web.
  • És un llenguatge d'”scripting” lleuger i relativament fàcil d’aprendre.
  • Com hem dit abans, s’executa al navegador del client, per això el resultat i el procés es relativament ràpid.
  • Es poden usar extensions de tercers per comprobar els fragments de codi.

Contres:

  • En temes de seguretat, executant codi JavaScript maliciós, podria fer-se servir per aprofitar errades del navegador i fer-se amb el control de l’ordinador.
  • En temes d’interpretació, cada navegador interpreta el JavaScript d’una manera diferent.

Ara passem a definir el que és jQuery. jQuery és una llibreria dissenyada per simplificar la programació de JavaScript. El programador que usa aquesta llibreria, usa menys quantitat de codi sense que la funcionalitat es vegi alterada.

Cal dir que a part de jQuery hi ha altres llibreries que ens poden ajudar a la programació amb JavaScript, tals com Mootools, Dojo, Prototype, … Unes més orientades a efectes visuals i d’altres més orientades a manipulació de la página.

Anem a posar un exemple de codi de Javascript i jQuery, que fan exactament el mateix. Volem el valor d’un element:

JavaScript:

document.getElementById('idElement').value;

jQuery:

jQuery('#idElement').val();

A vegades podem trobar-ho escrit de la següent forma, ambdues fan el mateix:

$('#idElement').val();

Com podem veure, amb el jQuery escrivim menys i és més fàcil de recordar. Podem dir que el jQuery ens ofereix un “Syntactic Sugar” per a la programació JavaScript.

Anem a citar els Pros i Contres del jQuery:

Pros:

  • Amb jQuery ens oblidam de les compatibilitats entre navegadors. Amb un sol codi escrit, sabem que funcionarà a tots els navegadors suportats per la versió de jQuery que usem.
  • jQuery és fàcil d’usar en comparació amb altres llibreries i, es clar, que amb el propi JavaScript.
  • jQuery te una extensa llista de llibreries/funcions
  • jQuery te molt bona documentació i una gran comunitat.
  • jQuery suporta la funcionalitat AJAX. El JavaScript també, però hauriem d’escriure la funcionalitat per a cada navegador. jQuery amb un codi es suficient per fer-lo anar amb tots els navegadors.

Contres:

  • Ja no escriurem codi nadiu JavaScript, ens hem de limitar a usar les funcions de la llibreria.
  • Es necessari incloure un fitxer per poder usar la funcionalitat.

En resum, no hi ha res que sigui bò o dolent, simplement és diferent.

Com a opinió personal, usar jQuery facilita molt la tasca de programació i a més, per la gran comunitat que té, es molt fàcil trobar com fer una acció desitjada.

Article traduït lliurament de The Pros and Cons of JavaScript and jQuery | JavaLobby DZone.