La web no fue diseñada pensando en la seguridad, es decir, la comunicación se realiza de forma plana y cualquiera que pueda pinchar la línea puede ver los mensajes que pasan, el origen y el destino, y no hace falta ser un crack, sólo instalar un programa como Wireshark. Afortunadamente ahora tenemos HTTPS, es el mismo protocolo web, pero utilizando una capa de seguridad que cifra la comunicación entre las dos partes (nuestro navegador y el servidor) y hace que sea muy complicado que alguien que pueda interceptar la comunicación sepa qué estamos hablando.… Leer artículo completo
Pasa tu web a HTTPS utilizando Let’s encrypt manual o automáticamente, tú decides
Cómo crear una API RESTful en C++ y usarlo como queramos. [ Con código fuente y ejemplo disponible ]
Las aplicaciones en Internet crecen a un ritmo frenético. Y para que éstas crezcan es necesario que unos sistemas se comuniquen con otros. Dentro de la misma aplicación, existe una comunicación con una base de datos, con un sistema de cachés con un servidor de correo, etc. Incluso dentro de una misma plataforma, existe una comunicación entre la capa de datos y la capa de interfaz de usuario (podemos verlo en aplicaciones móviles que acceden a datos alojados en un servidor web).… Leer artículo completo
Cómo cifrar archivos con OpenSSL y con par de claves pública y privada. Varios métodos, paso a paso
Si queremos aumentar la seguridad del cifrado de archivos con OpenSSL. En lugar de utilizar una contraseña plana como se indica en el post anterior podemos utilizar un par de claves pública y privada para este cifrado. De estar forma, por un lado podemos ahorrarnos (si queremos) el tener que recordar una contraseña segura, y por otro ganar en seguridad, ya que las contraseñas, al fin y al cabo terminan siendo poca cosa.… Leer artículo completo
Certificados de seguridad para nuestra web. Opciones y recomendaciones.
Es muy importante proporcionar una navegación segura a nuestros visitantes. De hecho cada día está más de moda hacerlo; más y más webs proporcionan una versión segura, y otras imponen esa seguridad. Por ejemplo, si tenemos una tienda online, es importante que los datos sensibles, como el pago, o los datos de nuestros clientes se transmitan por canales seguros. Incluso si tenemos un sistema de usuarios, es recomendable que la contraseña de ese usuario viaje por un canal seguro.… Leer artículo completo
Cómo añadir un nuevo certificado raíz a nivel de sistema
Es muy común si montamos algún servicio privado (como instalar un Owncloud para un grupo de amigos, una pequeña empresa), un correo personal, o cualquier cosa que se nos ocurra, utilizar https para las conexiones y, con ello, habilitar cifrado, aumentar la seguridad, y todas esas cosas.
Pero claro, una vez montamos nuestro servicio con nuestros certificados (autofirmados), nos damos cuenta de que los navegadores (y ya no hablamos de curl, wget y otros comandos…) no paran de quejarse porque los certificados están firmados por una entidad no reconocida y que no es de confianza.… Leer artículo completo
Servidor web seguro (HTTPS) en C usando openSSL (pruebas)
Hace unos días veíamos un ejemplo de un cliente web SSL con ayuda de openSSL. Ahora vamos a hacer un servidor al que se pueda conectar. Se trata sólo de una prueba de concepto, nada que podamos utilizar en el mundo real, pero está bien para ver cómo funciona la biblioteca.
Creando un certificado auto-firmado
Lo primero que vamos a hacer es crear una llave y un certificado para utilizarlos.… Leer artículo completo
Conexión segura a un servidor web (HTTPS) en C usando openSSL
Bueno, el código no tiene mucha más explicación. El objetivo es poder conectar a un servidor web a través de un protocolo seguro y recibir datos, pero también que podamos ver si hay algún problema con el certificado, verificar el algoritmo de cifrado y los datos del certificado, verificar los certificados intermedios, etc.
Si ignoramos SSL, lo que tenemos que hacer es conectar con un servidor a través de un puerto determinado (como estamos en web, sería el puerto 80, por defecto), y mandarle una serie de datos:
GET / HTTP/1.1[CRLF]
Host: openssl.org[CRLF]
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:37.0) Gecko/20100101 Firefox/37.0[CRLF]
[CRLF]Por ejemplo.… Leer artículo completo
Últimos comentarios