Archivo de la categoría: Internet

Deshabilitar ipv6 en GNU/Linux

Si no usáis actualmente IPv6 y queréis deshabilitarla completamente en vuestro equipo (*) con GNU/Linux es muy sencillo. Simplemente hay que pasarle al cargador de arranque un parámetro, en concreto, éste:

ipv6.disable=1

Para que el cambio esté presente siempre que arranquéis, debéis meter el parámetro en /etc/default/grub, en la línea GRUB_CMDLINE_LINUX_DEFAULT, que quedaría así:

GRUB_CMDLINE_LINUX_DEFAULT="ipv6.disable=1"

A continuación, ejecutamos:

# grub-mkconfig -o /boot/grub/grub.cfg

Aquí hemos visto cómo hacerlo en GRUB, que será el cargador que casi con toda segurdiad usará vuestra distro. Si usáis otros y/o queréis ampliar la información podéis hacerlo aquí y aquí.

Mil gracias a mi amigo Salvi, pozo de sabiduría linuxera, por comentármelo 😉

 

(*) Por defecto, IPv6 suele venir habilitado en las distros Linux.

Google no permite automatizar el posteo en Google+

Tal y como comentaba en el anterior post, es posible automatizar ciertas acciones con determinados servicios.

Yo tengo activadas, entre otras, unas recetas IFTTT que permiten automatizar la publicación en las redes sociales de los artículos que aparecen semana tras semana (cada domingo a las 22:00, para mayor exactitud) en mi blog.

Esto funciona perfectamente tanto para Twitter como para Facebook, de forma que no tengo que hacerlo manualmente -como hacía en un principio-.

El problema viene a la hora de publicarlo en Google+ y es que Google no permite que se publiquen artículos vía e-mail (que el método que usan normalmente las recetas IFTTT para realizar esta función). ¿Por qué? Porque no les da la gana.

Es de esas cosas que te sorprenden. La mayoría de los servicios de Google son cojonudos y yo, en particular, los uso bastante en mi vida cotidiana. Sin embargo, tienen detalles como éste que ensucian la marca Google (en mi opinión). Sus motivos tendrán pero personalmente a mí me tocan las narices, porque tengo que seguir publicando a mano el enlace a mi artículo en dicha red social.

Existen formas de salvar esto. Una, por ejemplo, es haciendo uso de una cuenta de Google Voice, como comentan aquí.

Sin embargo, como veis, es bastante pesado de realizar y yo paso totalmente de hacerlo. Si alguien conoce alguna forma sencilla de realizar esto soy todo oídos.

Automatizando con IFTTT

IFTTT es un servicio que nos permite automatizar cosas de forma muy sencilla y efectiva. ¿Qué cosas puede automatizar? Pues casi cualquier cosa relacionada con los servicios usuales que se usan a diario, como facebook, wordpress, twitter, muchos eventos de nuestros móviles Android e incluso sistemas de domótica.

Lo vemos más claramente con unos ejemplos:

  • Ejemplo 1. Si marco como favorito un tweet que se me envíe por correo electrónico, o que se añada una nota a mi evernote.
  • Ejemplo 2. Cada vez que se publique un artículo en mi blog que se cree un tweet o una entrada en facebook para compartirlo.
  • Ejemplo 3. Cuando me llame cierta persona, que se registre en una hoja de cálculo una línea por cada llamada indicando hora, duración, etc. para tener un registro de todas las llamadas.

El funcionamiento es sencillo: tenemos canales (facebook, twitter, instagram, wordpress…) y tenemos recetas (recipes en ingleś).

Lo que tenemos que hacer es seleccionar un canal y especificar que cuando ocurra tal evento en dicho canal (por ejemplo, que publique un artículo en WordPress), que se realice una acción en otro canal (por ejemplo, que se publique en facebook una entrada anunciando dicho artículo). En otras palabras, IF This Then That, es decir, si ocurre esto entonces haz esto otro.

Esto es para crear nuestras propias recetas pero lo más fácil es usar recetas que ya han creado. Hay un explorador de recetas aquí.

Los canales que tenemos disponibles (para hacernos una idea de las cosas que podemos hacer) los tenéis aquí.

También puede ser útil echar un vistazo a las múltiples webs donde recogen las que -a su juicio- son las mejores recetas de IFTTT, como pueden ser:

Para los fan de la manzana también hay cositas interesantes, por ejemplo:

Espero que os sea útil.

 

Ventajas de usar Dropbox

Existen muchas empresas que ofrecen almacenamiento en la nube, como Dropbox, Google (Google Drive), Microsoft (Skydrive) y otras más. Además, para los más celosos de su intimidad, existen soluciones que cifran todo en el cliente como spideroak e incluso soluciones de tipo «móntatelo tú mismo» como ownclowd.

Yo uso Dropbox desde hace ya varios años (bastantes). No tengo mucho espacio (unos 6 GB aprox.), pero no necesito más. Allí tengo todos los archivos de configuración, documentos, plantillas, etc., que uso en mi día a día. Lo tengo configurado en todos mis equipos, de forma que si actualizo un archivo en uno de ellos (con la comodidad de hacerlo directamente desde el propio sistema operativo, sin necesidad de hacerlo obligatoriamente desde la web), lo tengo actualizado en todos.

Os recomiendo este sistema por 5 razones fundamentalmente:

1.- Existe un cliente para casi cualquier plataforma. En particular, en windows funciona, en linux también (yo sólo uso éste), en Android también… (aunque aquí no se sincroniza sino que se descargan los archivos conforme los necesitamos por ahorrar ancho de banda -pero es más que suficiente-).

2.- Funciona perfectamente. No da problemas. Lo instalas, se sincroniza y a correr.

3.- Es una copia de seguridad en sí misma (la tienes en varios PCs y la nube).

4.- Si borras un archivo puedes recuperarlo. Hay como una «papelera» interna que desde la web podéis usar para recuperar archivos. Yo la he usado en un par de ocasiones y me ha salvado la vida.

5.- Tiene un control de todas las versiones de un archivo, es decir, creas un archivo dentro de tu directorio de dropbox, luego editas y grabas, luego vuelves a editar y grabas de nuevo, vuelves a editarlo y vuelves a guardar… si en la última edición, por ejemplo, te has cargado el contenido, puedes recuperar todas y cada una de las versiones anteriores. A mí esto me ha salvado también hace poco de una bastante gorda. De hecho, no concibo editar archivos fuera de Dropbox. Así es prácticamente imposible que se pierdan, no sólo los archivos totalmente sino los cambios entre versiones. Es, simplemente, fantástico.

La pega que tiene es que, como cualquier servicio de almacenamiento en la nube, los datos están en servidores de empresas privadas. Así que si no os gusta que otras empresas «husmeen» en vuestros archivos, no lo uséis. En este caso, mejor usad cosas como spideroak, ownclowd o, mejor aún, no uséis servicios en la nube. Mejor incluso, no uséis internet (¡toda precaución es poca!). En mi caso, prefiero disfrutar de los servicios gratuitos y de calidad que me ofrecen sabiendo que la publicidad que me aparece va en función de mis gustos personales, los cuáles Google ha obtenido gracias a husmear en mis cosas, pero vamos, puedo vivir con ello, oye.

Hacer copias de seguridad usando gmail II

En el anterior artículo vimos que podemos exprimir un poco más nuestra cuenta de correo en la nube (gmail en este caso) y aprovechar los muchos megas que nos ofrecen gratis para salvaguardar no sólo mails sino también archivos.

Ahora vamos un paso más allá para agilizar este proceso. Con lo visto hasta ahora, si queremos hacer un backup de un archivo usando gmail tenenos que abrir gmail en el navegador, darle a «Redactar», crear el mensaje, rellenarlo, incluir el adjunto y enviar… Esto es sencillo pero lo cierto es que nos quita tiempo, ese recurso tan importante y escaso. Podemos hacerlo más rápido con un script. Veamos cómo.

En un artículo anterior vimos cómo enviar mails desde nuestra cuenta de gmail usando la línea de comandos. Vamos a hacer uso de esto para agilizar la copia de seguridad de archivos. Os muestro un ejemplo de script que realizaría esta tarea:

#!/bin/bash

echo -n "Subject: "
read SUBJECT
SUBJECT="-backup- $SUBJECT"

echo -n "Body: "
read BODY

echo -n "Enviando mail..."
echo $SUBJECT > /tmp/subject
echo $BODY > /tmp/body
/usr/local/bin/send_gmail /tmp/subject /tmp/body $1
echo "OK"

Este script hace uso del script que vimos en dicho artículo (send_gmai), script que hemos dejado en /usr/local/bin para poder ejecutarlo desde la línea de comandos de forma habitual sin necesidad de incluir la ruta (aunque en el script de arriba sí que lo hacemos para asegurarnos de que funciona siempre independientemente del valor de la variable de entorno PATH).

Lo que hace es pedirnos el subject y meterle luego la cadena -backup- para que no tengamos de preocuparnos de meterla nosotros manualmente. Esta palabra es la que, como dijimos en el artículo anterior, usamos para hacer el filtro. Podríamos crearnos distintos scripts para distintos tipos de backups si quisiéramos y cambiar aquí -backup- por otra cosa en cada uno. Posibilidades hay mil.

También nos pide el cuerpo del mensaje. Si no lo necesitáis podéis obviar esto y meter siempre algo como «backup» y váis más rápidos.

Para finalizar, llama al script send_gmail, el cuál envía el correo electrónico con el adjunto que pasamos como único parámetro al script en cuestión, el cuál llamaremos, por ejemplo, backup_file. Así pues, suponiendo que queremos hacer un backup de un archivo llamado proyecto.odt que tenemos en el directorio actual, lo llamaríamos así:

backup_file proyecto.odt

Como digo, las posibilidades son muchas. Podéis automatizar el backup de un directorio entero, por ejemplo. Podéis añadir también automáticamente la fecha en el subject o el cuerpo del mensaje para tenerlo mejor clasificado (aunque esto ya se ve en la fecha y hora del propio mail). Podéis quitar los read y meter algo estático y luego meter el script en el crontab para que haga backup de cierto archivo o directorio cada hora, por ejemplo…

Alguien dirá que para esto ya está Dropbox, Google Drive, etc. Sí, pero a mí me gusta usar este método también porque estos archivos de backup son versiones de un fichero y, una vez finalizado, ya no las necesitaré aunque no viene de más tenerlas en una especie de cajón desastre que puedo consultar el día de mañana. Digamos que no quiero ver esos ficheros «temporales» en mis directorios de Dropbox ni GDrive, sino que prefiero almacenarlos en algún lugar que, aunque seguro, es menos accesible (*), porque además, el hecho de tener muchas versiones de un archivo en un directorio y no tener un control luego puede ser un caos.

(*) Lo cuál es cómodo desde un punto de vista organizativo.

Hacer copias de seguridad usando gmail I

Existen muchos mecanismos para hacer copias de seguridad (backups), como pendrives, cd-roms, dvds, almacenamiento en la nube (dropbox, google drive…), pero existe uno muy sencillo que podéis usar en cualquier momento para salvaguardar datos que queréis tener replicados (es decir, queréis tener alguna que otra copia de respaldo por si se pierde/estropea la original) y es usando vuestro correo electrónico.

Evidentemente, me estoy refiriendo a mail en la nube, esto es, gmail, hotmail, o cualquier otro que tengáis con un proveedor y que consultéis y almacenéis en la red. Si lo descargáis con pop3 no os va a servir. Yo voy dar unas ideas basándome en gmail, que es el que uso, pero podéis aplicarlo al que queráis (siempre que tengáis los datos de configuración del servidor de salida -smtp-).

En Gmail podéis crear «etiquetas», que vendría ser algo parecido o que da un resultado similar a «carpetas». En definitiva, no es más que una forma de clasificar vuestro correo. Si además usáis los filtros para que los mails vayan a las etiquetas correspondientes automáticamente, pues ya tenéis un sistema de correo más ordenadito y limpio, que es lo suyo (*).

Una forma obvia es enviar un mail desde vuestra cuenta a vuestra misma cuenta y guardar manualmente el mail en su etiqueta correspondiente. Si ponéis el filtro esto se hará automáticamente, moviendo el mail a una etiqueta llamada, por ejemplo, backup. Para poner el filtro, podéis hacerlo en función del asunto del mail, que podría contener la palabra «backup». Así, «le estáis diciendo» que los mails con origen «mi propia dirección» y cuyo asunto contenga la palabra «backup» que los envíe directamente a la etiqueta «backup». Yo lo tengo así. De hecho, como esa etiqueta la tengo «simplemente» para almacenamiento y no la consulto prácticamente nunca, la pongo al final de todas, ¿cómo? -fácil: nombrándola así «z__backup».

A veces hay archivos e incluso los propios mails que recibimos que queremos tenerlos guardados en algún sitio por si algún día nos hicieran falta. Yo, en estos casos, no creo etiquetas para cada tipo de mail a guardar o para cada tipo de archivo, lo que uso es una etiqueta llamada «0__mi_papelera» en la que meto todos estos mails que puede que un día me puedan hacer falta, donde envío los archivos de copias de seguridad que no creo que necesite pero nunca se sabe…

La llamo «0__mi_papelera» para que aparezca la primera. Así, cuando recibo un mail que quiero enviar a dicha etiqueta, al pulsa en el botón «Mover» de gmail, me aparece la primera y es mucho más rápido.

Hasta aquí, lo que he dicho no tiene mucho misterio, simplemente son formas de sacarle un poco más de partido a gmail. En el siguiente artículo os cuento una forma muy cómoda de enviar archivos que queréis guardar como copia de seguridad.
(*) Yo creo «es lo suyo» pero está claro que es sólo mi opinión. Para mí lo es, porque prefiero tener la bandeja de entrada limpia y los mails almacenados en su lugar correspondiente una vez «procesados». Esto no se aplica a la gente que prefiere tener 2430 emails en la bandeja de entrada (donde intentan convivir correos del banco, de la novia, etc., con otros cientos de mails de publicidad). Es lo bueno del correo electrónico: cada uno tiene una cuenta personal y hace con ella lo que quiere. Es como el que tiene el escritorio de su sistema operativo repleto de iconos en una pantalla de 24 pulgadas de alta definición (o sea, con una densidad de 5 iconos por centímetro ;-P). Estas cosas molan, supongo, porque es como jugar a «dónde está Wally» cada vez que tienes que buscar un documento o acceso directo. Supongo que eso mola (a veces soy un aburrido).

 

Enviando un mail de gmail desde la línea de comandos

Enviar mails desde la línea de comandos de Linux es bastante sencillo. Hay un comando llamado «mail» que hace esto sin problemas. Si nos instalamos un servidor de correo SMTP como postfix, ya lo tendremos.

El problema es que estaremos enviando mails desde un servidor de correo cuyo dominio (el que hayamos puesto nosotros, algo como «micasa.com») o bien no existe o si lo hace no está a nuestro nombre. Si enviáis unos pocos e-mails al día puede que todo vaya bien pero, si enviáis más correos, esto puede ocasionar problemas (por ejemplo, vuestro proveedor de servicio a Internet os pegaría un toque por posible SPAM).

Lo mejor es hacer las cosas bien hechas para evitar problemas (*); en este caso, lo suyo es enviar correos legítimos, desde una cuenta «oficial», de un dominio «oficial» (registrado, vamos). Vamos, que si enviamos un correo desde loquesea@gmail.com, ese correo debería partir del servidor gmail.com, es decir, el servidor de correo de Google.

Para hacer esto desde línea de comandos os recomiendo el comando «mailx», que además nos permite enviar adjuntos.

Vamos a ver cómo usarlo para enviar un mail desde nuestra cuenta de gmail. Lo que vamos a ver es cómo usar mailx para enviar correos desde la línea de comandos usando nuestra cuenta de gmail (a través, por supuesto, de los servidores de Google).

Lo que tenemos que hacer es especificar los distintos parámetros (servidor, puerto, usuario, password…) con la opción -S. Nos quedaría algo así:

mailx -v -s "ASUNTO" -S smtp=smtp.gmail.com:587 -S smtp-auth-user=VUESTRO_USUARIO_DE_GOOGLE@gmail.com -S smtp-use-starttls -S smtp-auth-password=VUESTRO_PASSWORD -S from=VUESTRO_USUARIO_DE_GOOGLE@gmail.com MAIL_DESTINO

Al ejecutar esto os dejará escribir el cuerpo del mensaje. Para finalizar el mail, dar un par de veces a Intro, escribid un punto y darle de nuevo a Intro (es la forma de decirle a mailx que habéis terminado de redactar el mail).

Si queréis hacerlo menos interactivo podéis pasarle el cuerpo del mensaje así:

echo «CUERPO DEL MENSAJE…» | mailx -v -s «ASUNTO»…

Si queréis un cuerpo más completo, con intros y demás, podéis pasarle un archivo (tanto como cuerpo de mensaje como de asunto). También podéis registrar los logs de salida y error por si algo fallara poder estudiar cuál ha sido el problema. Un script que contemple ambas cosas podría quedar así:

DATE=`date +%Y-%m-%d--%H-%M`
if [ $# = '0' ]; then
     echo send_gmail FILE_SUBJECT FILE_BODY \[ FILE_ATTACH \]
elif [ $# > '1' ]; then
     SUBJECT=`cat $1`
     if [ $2 ]; then
        BODY=`cat $2`
     else
        BODY="."
     fi
     ATTACH=$3
     if [ $ATTACH ]; then
        echo $BODY | mailx -v -s $SUBJECT -a $ATTACH -S smtp=smtp.gmail.com:587 -S smtp-auth-user=VUESTRO_USUARIO_DE_GOOGLE@gmail.com -S smtp-use-starttls -S smtp-auth-password=VUESTRO_PASSWORD -S from=VUESTRO_USUARIO_DE_GOOGLE@gmail.com MAIL_DESTINO >/tmp/mail_$DATE.log 2>/tmp/mail_$DATE.err
     else
        echo $BODY | mailx -v -s $SUBJECT -S smtp=smtp.gmail.com:587 -S smtp-auth-user=VUESTRO_USUARIO_DE_GOOGLE@gmail.com -S smtp-use-starttls -S smtp-auth-password=VUESTRO_PASSWORD -S from=VUESTRO_USUARIO_DE_GOOGLE@gmail.com MAIL_DESTINO >/tmp/mail_$DATE.log 2>/tmp/mail_$DATE.err
     fi
fi

Lo he hecho rápidamente, así que se puede mejorar mucho a la hora de tratar los parámetros. De todas formas, así es perfectamente válido (doy fe ;-). A continuación explico cómo funciona.

Lo que hace el script es coger la fecha del sistema (en la variable DATE) para que nuestros archivos de log la tengan incorporada en el nombre de archivo (así es más fácil identificar de cuándo son).

Después, si el número de parámetros es 0 muestro un mensaje de uso correcto del script (cuyo nombre es «send_gmail» en este ejemplo), que básicamente es, el nombre del script, el fichero que lleva el subject del mensaje, el fichero que lleva el cuerpo del mensaje y, opcionalmente, el archivo que queremos adjuntar.

Si el número de parámetros es mayor que 1 (**) el asunto del mensaje (SUBJECT) es el contenido del primer argumento. Si existe un segundo parámetro sería el fichero que contendría el cuerpo del mensaje. Si no existe segundo parámetro se pone un «.» (podemos poner un espacio o una palabra por defecto) porque si no ponemos nada fallará el script.

Si hay un tercer argumento ejecutaremos el comando que hemos visto antes con la opción «-a $ATTACH», que incluirá dicho archivo como adjunto.

Esto os puede venir de perlas para cosas como enviar mails al iniciar el equipo para indicar que está operativo (como vimos en el artículo anterior «Ejecutar scripts al inicio de Linux»), para enviar mails de notificación desde nagios o, como veremos en un artículo posterior, para hacer backups de archivos rápida y cómodamente.

(*) Esto se debería aplicar a todos los aspectos de la vida. Si todo el mundo lo hiciera… irían mejor las cosas, nor?
(**) como mínimo hemos introducido subject y body; si introducimos 3, el tercero es el fichero a adjuntar; a partir del tercer parámetro se ignoran si los hubiera.

Exportar followers y following en Twitter fácilmente

En un momento dado quería hacer un backup de la gente que me seguía (followers, en terminología Twitter) y, sobre todo, de la gente a la que yo seguía (followings).

Hay webs en Internet que te permiten esto (*) y mucho más, como por ejemplo export.ly o socialbro.com, pero son la mayoría de pago.

En cualquier caso, yo buscaba algo más simple. Al final he hecho lo más obvio y fácil, pero que me ha servido perfectamente. A continuación lo explico.

Lo que he hecho es mostrar la lista de followings entera (es decir, voy bajando hasta que se muestren todos). Selecciono con ratón y copio.

Abro LibreOffice Writer y pego el contenido sin formato. Para ello, en lugar de la opción usual de pegar (Control+V), en el menú edición selecciono «pegado especial». En la lista que se muestra, selecciono la opción que pone «texto sin formato» (unformatted text, si como yo tenéis la versión en inglés).

Una vez pegado, borráis las líneas «Acción del usuario» y «Siguiendo». Para ello, nada más fácil: Edición–> Buscar y Reemplazar –> y ahí indicáis que esa frase la reemplace con nada (texto en blanco).

Al final tendréis una lista así:

Nombre de Usuario @nombredeusuario
Descripción del usuario en Twitter
Nombre de Usuario @nombredeusuario
Descripción del usuario en Twitter
Nombre de Usuario @nombredeusuario
Descripción del usuario en Twitter

Guardamos como fichero de texto y ya lo tenemos. Luego, con este fichero podemos hacer lo que queramos. Por ejemplo, podríamos quedarnos sólo con los nombres de usuario de Twitter (@nombredeusuario) si nos hiciera falta (por citar un ejemplo).

Es una chorradilla pero a mí me ha resultado muy útil y es muy fácil de llevar a cabo.

 

(*) No hay opción en el cliente web de twitter ni en ningún otro que yo conozca que te permita exportar las listas de personas a las que sigues, de los que te siguen o incluso de los tweets.