LinuxParty
En posts anteriores hemos visto cómo crear servicios web seguros utilizando certificados. Los certificados era los por defecto de SSL en Linux o bien generabamos certificados autofirmados para el caso de IIS y el hecho que debíamos solicitar un certificado a una entidad certificadora (CA) para disponer de certificados válidos para operar en Internet. En este enlace teneis una buena descripción de qué es una infraestructura de clave pública o PKI.
En esta ocasión vamos a ver cómo crear nuestra propia entidad de certificación ( sobre un Debian 6, pero el procedimiento es idéntico si empleamos un Ubuntu). Posteriormente, vamos a emplear esta entidad de certificación para generar un certificado de servidor para otra máquina que la empleará para un servicio Apache. Esta situación puede ser útil si queremos desplegar en una intranet un sistema de certificados, tanto para equipos como para usuarios.
Te interesará conocer:
Generar fichero CSR en Linux
En primer lugar vamos a crear la entidad certificadora, para ello editamos el archivo /etc/ssl/openssl.cnf del equipo que se convertirá en autoridad de certificación y realizaremos las siguientes modificaciones:
Estamos indicando donde se va a crear la infraestructura de nuestra entidad de certificación, recorriendo el archivo podemos editar otras características, como por ejemplo la duración por defecto de los certificados ( 365 días es el valor inicial), la longitud de la clave, etc.
El siguiente paso, es crear la estructura de carpetas de la entidad de certificación y crear los archivos de gestión de los certificados creados, el archivo serial y el index.txt.
Ahora vamos a crear el certificado para la entidad certificadora, este certificado será el que después se deberá exportar a los diferentes servidores que vayan a utilizar sus certificados:
Ya tenemos creada nuestra entidad certificadora. Ahora vamos a una segunda máquina, en este caso un Ubuntu Desktop que hará las funciones de un servidor web que va a solicitar un certificado, para ello creamos una petición .csr y una clave privada micert.key. Para evitar el problema que la clave privada utilice una contraseña, que nos obligaría a introducirla cada vez que reiniciemos el servicio, se emplea el parámetro -nodes.
En la petición se nos requiere la información relativa al equipo o dominio para el que se va a solicitar el certificado:
Ahora deberíamos enviar este archivo .csr al servidor de la entidad certificadora, una vez que ésta lo recibe, generaremos el certificado a partir de él:
Como resultado de este comando, no sale un mensaje con la información del certificado generado y nos pide la confirmación de si queremos firmarlo.
Ahora deberíamos enviar al que será nuestro servidor web y lo deberíamos copiar en /etc/ssl/certs. Así mismo comprobamos la presencia de la clave privada del servidor.
Ahora tenemos que convertir nuestra entidad certificadora, en una entidad certificadora de confianza para el servidor web. Para ello enviamos el certificado de la CA (lo he renombrado como waytoit.pem para facilitar su localización) y lo copiamos en /etc/ssl/certs. Ahora hay que hacer un paso adicional para que funcione, tenemos que ver su hash y crear un enlace al certificado que tenga como nombre su número de hash.0.
Podéis comprobar como para los diferentes certificados que ya están instalados, existe dicho enlace.
Comprobamos ahora el certificado que hemos solicitado:
Si no nos da ningún error, editamos el archivo de configuración de nuestra página segura para utilizar nuestro flamante certificado:
Por último, comprobamos desde el navegador las características de nuestro certificado:


-
Seguridad
- Utilizar ssh sin contraseña con ssh-keygen y ssh-copy-id
- Configuración paso a paso de una NAT con los iptables
- Snort para Windows, detección de Intrusos y seguridad.
- Detectar ROOTKITS en Linux
- 20 Ejemplos IPTables para nuevos Administradores de Sistemas
- IPTABLES para evitar ataques de Denegación de Servicio (DDoS)
- mod_security y mod_evasive en Linux para CentOS / RedHat
- Un Windows XP sin protección y conectado a Internet: el experimento que demuestra por qué no deberías hacerlo
- Contraseñas Aleatorias en Internet: Cómo Crear Claves Seguras Sin Complicarte
- DuckDuckGo ahora te permite ocultar imágenes generadas por IA en los resultados de búsqueda
- El analizador de protocolos de red de código abierto Wireshark 4.4.8 actualiza la compatibilidad de protocolos
- GNU Screen para los que les gustan la Paranoia del logeo.



