Solución certificados auto-firmados dando problemas

Después de varias semanas de trabajo intenso puedo aprovechar un rato para explicar que tras integrar nuestro certificado auto-firmado de manera local, las nuevas versiones de Chrome (58+) y Firefox (53+) pueden negar el acceso a las páginas que tengan el certificado sin incluir Subject Alt NameEstas actualizaciones son para evitar que el ataque Punycode haga efecto.

No importa si el certificado está añadido al navegador, ni si lo tenemos agregado al Keychain (Mac OS X) como System o Root configurado en «Confiar siempre». Es una decisión que toman los navegadores.

Importante:

Estos certificados NO son recomendables para ambientes de producción, están pensados para ambientes de desarrollo. La mayoría de los navegadores no reconocerían que este certificado haya sido emitido por una entidad confiable (como Verisign o GoDaddy), e impedirían el acceso a la página.

 

Problema de Chrome v57 con los certificados sin AltName

 

¿Cómo resolver este problema?

La única solución es rehacer los certificados que tengamos incluyendo una configuración especial para cada dominio. Para esto, debemos localizar nuestro archivo de configuración de OpenSSL, llamado openssl.cnfUna vez lo tengamos localizado, es posible que esté bloqueado contra escritura, pero no importa, únicamente tenemos que copiar todo el contenido y crear un nuevo archivo llamado, por ejemplo, openssl_tu-dominio.dev.cnf y guardarlo en la carpeta donde vayamos a generar los archivos del certificado.

Read More

Drag & Drop y redimensionado de imágenes

¡Buenas! En este primer tutorial de 2017, después de más de 2 años con el blog activo, quisiera enseñar cómo crear un drag & drop con HTML, PHP y Javascript.

El tutorial también enseñará a redimensionar y comprimir imágenes cuando estén siendo subidas, creando así miniaturas (thumbnails).

Vista previa del ejemplo:

¿Cómo crear un drag & drop?

Este desarrollo se hizo en local usando XAMPP. El único servicio activo es Apache (no requiero MySQL para este ejemplo).

Read More

Backup de Dropbox con Automator en Mac OS X

¡Hola! Hace aproximadamente un mes se me quemó la motherboard de la notebook donde, entre otras cosas, creaba estos tutoriales. Precisamente por ese motivo no pude realizar un tutorial el mes pasado, y apenas publico este a fin de mes. Quiero agradecer a mi jefe por permitirme el uso de una computadora con Macintosh para realizar este tutorial.

¿Qué traigo esta vez? Hoy traigo una manera de resolver una particularidad del nuevo trabajo donde estoy ahora, y es que en una Macbook estoy como desarrollador y, usando XAMPP como servidor local, necesito hacer backups diarios. Si conoces un poco acerca de este programa, sabrás que todos los documentos se guardan en una carpeta llamada htdocs. Bien, para que otros miembros del equipo de trabajo puedan ver ciertos cambios lo ideal es tener todo actualizado en Dropbox.

Como instalar XAMPP en Dropbox no me pareció muy inteligente (sobre todo por el tamaño máximo de la cuenta), empecé a toquetear Automator. Acá les muestro lo que aprendí.

Comencemos.

Notas iniciales:

En esta ocasión estoy usando OS X El Capitán el cual está en inglés, así que algunas traducciones podrían no ser exactas.

¿Cómo automatizar backups en Macintosh?

Obviamente lo primero que necesitamos es abrir la app de Automator, la cual suele estar en la carpeta Aplicaciones.

Al abrirse nos preguntará qué tipo de documento queremos comenzar. Para que todo sea automático, crearemos un evento en el calendario, aunque podría ser una App sin problemas.

Read More

Convertir fechas de PHP a castellano

¡Muy buenas! Escribo esta entrada el último día de este mes. Estuve bastante ocupado trabajando en un par de proyectos, y recién hoy tengo un día completamente libre.

En esta ocasión traigo un tutorial bastante sencillo, donde voy a enseñar como pasar de una fecha hecha con la función date() a un texto en castellano, conteniendo el nombre del día, el número del mismo, el mes y el año.

Para esto se usa este tipo de fechas:

30-04-2016 04:20:00

Que se crean así:

//Se define el timezone que sea necesario
date_default_timezone_set('America/Argentina/Buenos_Aires');

//Dia-Mes-Año Hora:Minutos:Segundos
$fecha = date('d-m-Y H:i:s');

Y obtendremos como resultado:

Sábado 30 de Abril de 2016

Es importante que los separadores de la fecha sean un guión y no una barra (-, no /). Los guiones definen el sistema de formato europeo, mientras que las barras definen que el formato es «americano» (estadounidense).

¿Cómo pasar la fecha a castellano?

Read More

Lista arrastrable con jQuery, jQuery UI, AJAX, PHP y MySQL

¡Hola! En esta ocasión voy a mostrar como crea una lista que pueda ser ordenada siendo arrastrada. Esto se realiza gracias a la función Sortable de jQuery UI. El orden será enviado a través de la función AJAX de jQuery, procesado a través de PHP y almacenado en MySQL.

El resultado es este:

Notas iniciales:

Para este ejemplo estoy usando una versión custom de jQuery UI (v1.11.4) que únicamente incluye UI Core e Interactions (ver en la web oficial), pero se puede usar la versión completa sin problema. La versión de jQuery es la 2.1.1 minificada.

¿Cómo crear una lista arrastrable?

Read More

Certificado SSL+TLS auto-firmado para XAMPP en Windows

ACTUALIZACIÓN DE ABRIL DE 2017: Solución certificados auto-firmados dando problemas

¡Hola nuevamente! Realizo el segundo tutorial de este mes por la necesidad de explicar cómo generar certificados SSL auto-firmados (self signed SSL certificate) para XAMPP. El proceso será muy detallado, explicando todos los comandos que realizaremos.

Lo cierto es que en los últimos días estuve leyendo un par de tutoriales que no explicaban totalmente porqué se realizaban esos pasos, o cometían fallos respecto al almacenamiento de los certificados y las claves. Por eso, hoy traigo este tutorial, donde enseñaré a crear un certificado SSL para localhost y otro para un virtualhost en Windows utilizando OpenSSL 1.0.2.

Notas iniciales:

Este tutorial se realizó en Windows 7 (64 bits) recién instalado en una máquina virtual (VirtualBox) (esto no hace que varíe nada, es solo un detalle), utilizando un XAMPP (Apache 2.4.18) recién instalado con la versión 3.2.2 (compilado: 12 Noviembre 2015). Para seguir este tutorial es necesaria una cuenta de administrador.

Importante:

Estos certificados NO son recomendables para ambientes de producción, están pensados para ambientes de desarrollo. La mayoría de los navegadores no reconocerían que este certificado haya sido emitido por una entidad confiable (como Verisign o GoDaddy), e impedirían el acceso a la página.

¿Cómo generar un certificado para localhost?

El primer paso es generar una carpeta donde guardaremos nuestros certificados. Esta carpeta debemos crearla en la carpeta conf que está dentro de apache. La ruta, siempre teniendo en cuenta que se haya instalado XAMPP en la ubicación por defecto, sería:

C:\xampp\apache\conf

A esa carpeta yo la llamaré mis_certificados, pero puedes nombrarla como desees.

Dentro de mis_certificados, crearé una carpeta para el certificado de localhost. A esta carpeta la llamaré localhost, aunque puede llamarse de cualquier manera, pero esto lo deja más organizado.

Read More

Paginación con PHP y MySQL

Antes de comenzar con este tutorial, el cual será el último de este año 2015, quisiera agradecer a todos los que han compartido y comentado los tutoriales aquí expuestos. Más de 16.000 visitas avalan la confianza que ustedes, los lectores, tienen en estos textos.

Sin más dilación: pasemos a crear una paginación simple basada en PHP y MySQL.

¿Cómo crear una paginación?

Personalmente seguiré desarrollando en local, utilizando XAMPP (Apache y MySQL con PHPMyAdmin) en Windows.

1 de 3: MySQL

A diferencia de otros tutoriales, esta vez empezaré por la base de datos, pues es de ahí de donde debemos obtener los datos necesarios para proceder. Como siempre, estoy trabajando sobre una base de datos llamada mmv con cotejamiento utf8_spanish_ci. Dentro tengo una tabla llamada mmv004 que tiene tres columnas. El motor de almacenamiento es InnoDB.

  1. id -> INT(5) -> A_I -> primaria
  2. nombre -> varchar(20) -> utf8_spanish_ci
  3. edad -> INT(2)

Read More

Instalar Mountain Lion en VB

Estuve buscando cómo instalar OS X en AMD durante varios días, sin éxito. Aprendí cómo instalar Mountain Lion en VirtualBox y ahora te enseño cómo hacerlo.

Notas iniciales:

En este tutorial voy a mostrarte cómo se instala Mountain Lion en un ordenador Windows – AMD – 64 bits.
También te enseñaré a cambiar la resolución de la pantalla.

Es una gran guía, completa y bien explicada donde se detalla cada paso.
Cualquier duda será bien recibida en los comentarios.

¿Cómo instalar Mountain Lion en VirtualBox?

Para esta tarea vamos a necesitar lo siguiente:

  1. Descargar el ISO de Mac OS X Mountain Lion 10.8.5 por Niresh (aquí).
  2. Descargar e instalar VirtualBox (aquí).

Bien, si ya tenemos todo esto, vamos a empezar.

Read More

Instalar Snow Leopard en VB

Estuve buscando cómo instalar OS X en AMD durante varios días, sin éxito. Aprendí cómo instalar Snow Leopard en VirtualBox y ahora te enseño cómo hacerlo.

Notas iniciales:

En este tutorial voy a mostrarte cómo se instala Snow Leopard en un ordenador Windows – AMD – 64 bits.
También te enseñaré a configurar el teclado, a cambiar la resolución de la pantalla y a cambiar el lenguaje del sistema.

Es una gran guía, completa y bien explicada donde se detalla cada paso.
Cualquier duda será bien recibida en los comentarios.


— Dedicado a Yael —


 

¿Cómo instalar Snow Leopard en VirtualBox?

Para esta tarea vamos a necesitar lo siguiente:

  1. Descargar el ISO de Snow Leopard AMD by Hazard (aquí).
  2. Obviamente, tener la última versión de VirtualBox (aquí).

Bien, si ya tenemos todo esto, vamos a empezar.

Read More

Instalar Kali Linux en VB

Lo cierto es que me hubiese gustado comenzar este blog con este tutorial, pero me topé con una falta de tiempo, recursos y con el maldito error del 80%. Aprendí cómo solucionarlo, y ahora te muestro como instalar eficientemente Kali Linux paso a paso.

Notas iniciales:

En este tutorial voy a mostrarte cómo se instala Kali Linux (1.0.9) en un ordenador Windows – AMD – 64 bits.
También voy a enseñarte a instalar las «Guest Additions«, y a cambiar el idioma del teclado.

Es una gran guía, completa y bien explicada donde se detalla cada paso.
Cualquier duda será bien recibida en los comentarios.


EDITADO 10/FEB/2015:

La gente de Offensive Security ha lanzado Kali Linux 1.1.0. Si ya tienes instalada la v.1.0.9, te recomiendo escribir lo siguiente en una consola para actualizar:

apt-get update
apt-get dist-upgrade

El famoso error cuando va por el 80% de la instalación

¿Cómo instalar Kali Linux en VirtualBox?

Para esta tarea vamos a necesitar lo siguiente:

  1. Descargar el ISO oficial de Kali Linux (aquí) para la versión que tengas (en mi caso, 64 bits). Yo recomiendo hacerlo por Torrent.
  2. Descargar la última versión de VirtualBox (aquí) para nuestro SO (en mi caso, Windows).
  3. Descargar el «Oracle VM VirtualBox Extension Pack» para todas las plataformas. Se descarga desde la misma web de descargas de VirtualBox.

Bien, si ya tenemos todo esto, vamos a empezar.

Read More