SPAM. SPiced HAM

Cambiar el correo en commits de un repositorio en GitHub

Si tienes un repositorio de GitHub de hace años, es probable que alguna vez, sea por error o intencional, hayas puesto tu correo personal en el mensaje de commit. A pesar que GitHub se esfuerza porque el correo no se publique directamente a través de su web, cualquier spammer puede hacerse con el consultando el API o bien clonando el repositorio y mirando los mensajes del log.

GitHub da además una dirección de tipo: USUARIO@users.noreply.github.com.

Esto puede ayudar un poco con el spam, sobre todo si quieres cambiar de correo y no poner el nuevo en los commits.

En este caso vamos a ver como hacerlo con todos los commits o sólo con algunos en concreto.

Leer más
Cifrado de archivos PDF

¿Es seguro proteger un PDF con el número (y letra) del DNI?

Spoiler: Es absolutamente seguro que se descifra en menos de 5 minutos con un ordenador lento.

Tengo un correo de GMail con un nombre sencillo, por lo que es bastante común que la gente dé mi correo en vez del suyo. A este correo me han llegado cosas que ni imaginaríais que se «pueden» enviar por email.

La sorprendente lista de cosas que me llegan:

Así, que recuerde de forma rápida, lo más sorprendente ha sido: bases de datos corruptas de hoteles, listados de teléfonos, categorías profesionales (y creo que salarios) de un servicio de policía de un país latinoamericano, expediente disciplinario a una policía del mismo país, los planos del edificio Torrespaña para hacer una reforma a los platós del ¿telediario?, extractos bancarios y de tarjetas de crédito, contratos con compañías eléctricas…

Evidentemente procuro borrar todo cuanto antes y avisar al destinatario o a la persona implicada, pero a veces lo ponen bastante complicado con direcciones de tipo noreply / noresponder (no supervisadas) o si llamo a la empresa, me dicen que no van a buscar por email (sic) y que voy a seguir recibiéndolos.

La última con una dirección de no-reply ha sido Mapfre, que prudentemente y antes de enviar la documentación para la renovación, la cifra con contraseña. Pero no todo es oro lo que reluce y como bien ponen:

Sin más pistas y dado que tengo nombre compuesto y habían acertado con él (no especificaban apellidos) miré si era para mi, dado que había pedido un presupuesto hacía poco a esta compañía. Al ver que no se abre y por si acaso se hubiesen confundido (o de email con otro cliente o escribiendo mi DNI y fuese realmente para mi) busco como descifrar un PDF.

Un archivo PDF puede tener dos tipos de claves: Una de usuario (user) necesaria para abrir el archivo, ya que lo cifra y lo protege y otra de propietario (owner) para proteger sus propiedades: copiar, imprimir… que básicamente no sirve de nada salvo molestar.

No voy a entrar en la longitud y tipo de cifrado, si es un PDF nuevo, debería estar protegido con un cifrado AES-256 al menos, este artículo es menos técnico, simplemente me centro en claves inseguras.

Las herramientas necesarias para descifrar PDF

Leer más
Distribución del teclado

Distribución del teclado en español. Cambio desde consola

Hay varias maneras de cambiar el «layout» del teclado o la distribución de teclado a español en GNU/Linux dependiendo de que paquetes tengamos instalados.

¿El teclado te cambia la ñ por ;? ¿No escribe bien alguna de las letras que necesitas? Necesitas cambiar la disposición, distribución o layout para indicarle qué teclado tienes.

Diferentes distribuciones de teclado: Idiomas y disposiciones

Hay diferentes distribuciones de teclado: Dvorak, QWERTY, etc que no hacen más que reordenar las letras. Además podemos tener teclados en diferentes idiomas: Inglés, español, ruso, chino, coreano, etc que también pueden recolocar algunas letras, como por ejemplo el teclado francés o el alemán.

En caso que cambien los caracteres como en el idioma ruso, lo habitual es mantener varias distribuciones una para el teclado latino y otra para el cirílico. En idiomas que las letras pueden ser idiogramas, varias teclas son necesarias para conforman un símbolo, habitualmente suele teclearse el «sonido» y el programa puede dar a elegir las diferentes opciones, como en el teclado predictivo de un móvil.

Cambio de distribución del teclado por comandos

Opción 1: Con servidor de X activo

Tendrás que configurar el acceso desde consola:

export DISPLAY=:0.0
xhost LOCAL:

Y posteriormente establecer el cambio de distribución de teclado mediante el comando:

setxkbmap es

Si no se encuentra el comando, habrá que buscar e instalar el paquete correspondiente

Opción 2: En sistemas con systemd

En estos sistemas contamos con el comando localectl, que permite cambios en los ajustes de la localización del equipo.

localectl set-keymap es
localectl set-x11-keymap es
localectl status

Opción 3: Distribución del teclado en consola (sin servidor X)

Por último, en sistemas de solo consola, como puede ser un GNU/Linux Alpine ampliamente utilizado en dockers, nos queda recurrir al comando loadkeys.

loadkeys es

Más información:

¿Qué es una distribución de teclado? https://es.wikipedia.org/wiki/Distribuci%C3%B3n_del_teclado

Quizás te interesen estos otros artículos sobre comandos de consola en GNU/Linux:

Foto de: Denny Müller

Ordenador

Creando un blog o sitio estático

Una alternativa, bastante segura, rápida y que consume menos recursos del servidor web es crear tu sitio web o blog con HTML estático.

En el caso de blogs, esto suele ser más complejo ya que cuentan con RSS, índices y distintas organizaciones con sus enlaces.

Existen varios programas que permiten crear un blog estático (y que podremos publicar gratuitamente a través de Github). He encontrado varios:

LUKS con Cryptsetup y dm-crypt rápido para gente sin tiempo

Cryptsetup nos permite cifrar nuestro disco duro, algo muy recomendable para portátiles viajeros.

LUKS (Linux Unified Key Setup) es una especificación estándar de cifrado de disco. Anteriormente cada software de cifrado implementaban una versión y casi ninguna estaba correctamente documentada y en muchas ocasiones, esta documentación ni si quiera llegaba a estar disponible de forma pública.

Mediante el programa cryptsetup y con la ayuda del subsistema de cifrado/descifrado dm-crypt, que internamente hace uso de la cryptoAPI del kernel de Linux 2.6, nos permite cifrar por bloques dispositivos como: discos, particiones, archivos, etc.

Aunque originalmente es un estándar hecho para GNU/Linux, el programa FreeOTFE puede abrir dispositivos formateados con LUKS en Microsoft Windows.

Leer más

LVM rápido para gente sin tiempo

LVM es el acrónimo de Logical Volume Manager. El administrador de volúmenes lógicos en GNU/Linux.

/!\ Este artículo sobre LVM está un tanto deslabazado, son comandos de ejemplo para futuras referencias mías, si no lo entiendes es NORMAL, está escrito con prisa.

Consta de 3 partes (en paréntesis con que comenzará el comando de administración de cada uno):

  • Physical Volume (pv): Volumen físico, por ejemplo las particiones tipo LVM en los discos físicos.
  • Logical Volume (lv): Volumen lógico, las particiones que podemos montar en nuestro sistema.
  • Volume Group (vg): Grupo de volumen, el contenedor de volúmenes lógicos y físicos. Los volúmenes físicos (pv) deben ser añadidos a un Volume Group (vg) para poder ser utilizados.
Leer más
VirtualBox

Liberar espacio en VirtualBox de discos con reserva dinámica que han crecido con el tiempo

Reducir espacio de archivos de disco en VirtualBox

Si has trabajado con VirtualBox, tendrás máquinas virtuales que después de un tiempo han sufrido: actualizaciones, copias y borrados de archivos, uso de navegador y de programas.

Estas máquinas, por defecto emplean una reserva dinámica del espacio en disco, por lo que inicialmente ocupan poco.

Aunque su espacio ocupado dentro de la máquina virtual no es tanto, el archivo de disco donde se guardan habrá crecido hasta cerca del máximo del tamaño.

Esto se produce porque, a pesar de ir limpiando la máquina virtual, archivos temporales, etc se ha ido reservando el espacio poco a poco y VirtualBox, una vez asignado un espacio, «no sabe» si el sistema operativo lo está usando o no.

¿Sabes por qué trabajar con una máquina virtual hace que se vaya reclamando espacio en disco?

  • Cuando se baja una actualización, se escribe al disco, se descomprimen sus archivos y luego se borra el archivo.
  • El navegador escribe a disco las páginas web a su caché, para poder mostrarlas más rápido.
  • Los programas van escribiendo archivos de trabajo y temporales para poder funcionar.

Todo esto produce escrituras y borrados en el disco que provocan que, poco a poco, vayamos reclamando espacio al disco.

Una vez se ha reclamado espacio, este queda asignado, aunque se borren los archivos contenidos en él.

Con suerte, ese espacio será reutilizado la siguiente vez, pero para liberarlo de verdad en VirtualBox, debemos emplear la herramienta VBoxManage.

Crear otra máquina virtual y borrar la antigua para solucionarlo, es matar moscas a cañonazos. Si quieres saber porqué se produce este efecto y cómo solucionarlo, sigue leyendo.

Leer más
VirtualBox

Arranque por USB en VirtualBox para GNU/Linux

Arrancar desde una memoria USB en VirtualBox para GNU/Linux es un proceso sencillo. Si quieres hacerlo, tan sólo debes tener algunas cosas en cuenta.

Primero, necesitamos instalar el Extension Pack correspondiente a nuestra versión de VirtualBox. Y a partir de aquí, seguimos los pasos:

  1. Debemos pertenecer a los grupos disk y vboxusers:
    • sudo usermod -a -G disk,vboxusers $USER
  2. Crea un VMDK asociado a la partición de la memoria USB (o dispositivo) desde el que queramos arrancar:
    1. Averigua la partición de la memoria USB (cualquiera de los dos comandos):
      • lsblk
      • fdisk -l
    2. Crea el vmdk asociado al dispositivo o partición:
      • sudo VBoxManage internalcommands createrawvmdk -filename usb.vmdk -rawdisk /dev/DISPOSITIVO
  3. Introduce, en el primer SATA, el nuevo dispositivo de almacenamiento VMDK que hemos creado: Máquina -> Configuración -> Almacenamiento -> Controlador SATA -> Añadir -> Añadir. ¡Atención! no crees uno nuevo, sino que debes seleccionar el archivo creado antes con el comando VBoxManage.

Con esto tendremos el arranque por USB en VirtualBox, o más bien en una de las máquinas virtuales de este contenedor.

Leer más