Category Archives: Linux

Cómo resetear la contraseña del root en linux debian

1- Al iniciar pulsar la letra e para editar el grub.

2-En la ventana de edición, donde pone
linux /boot/vmlinuz-3.2.0-4-686-pae root=UUID=04064ae3XXXXXXXX ro quiet
agregamos al final: init=/bin/bash

3-Pulsar F10 para que siga la carga del sistema escribiremos:
mount -o remount –rw /

4-Y entonces cambiamos la contraseña de root con:
passwd root

Y el sistema nos indicará que la contraseña se ha cambiado bien (password update successfully)

5- Reiniciamos y ya la pass del root será la nueva.

Seguridad a tu aplicación web – Certificado digital

Para poder dar mayor seguridad a tu aplicación web la idea es que todos los datos que se envíen vayan cifrados. Para ello vamos a configurar el protocolo SSL con apache que usa certificados digitales para establecer comunicaciones seguras a través de Internet. Permite confiar información personal a sitios web, porque los datos se ocultan a través de métodos criptográficos mientras navegas. Se suele usar en tiendas online, pasarelas bancarias y cualquier tipo de servicio web donde se envíen datos personales o contraseñas.

Al cifrar los datos se transforma la información para que sólo el poseedor de la clave pueda entenderla. Existen un dos “llaves” pública y privada y están asociadas a una persona o entidad y generadas mediante métodos criptográficos. La llave pública es usada para cifrar la información y la llave privada se usa para descifrar y sólo la posee la persona autorizada.

Lo que vamos a hacer es crear un certificado digital SSL autofirmado, el cual, el navegador no reconocerá mostrando una advertencia al usuario y este certificado es enviado a el cliente por el servidor con quien vamos a establecer una conexión segura vía HTTPS.

El certificado digital garantiza la vinculación entre una persona o entidad con su llave pública. Contiene el nombre de su propietario, dirección, correo electrónico, organización a la que pertenece y su llave pública, e información del certificado: periodo de validez, número de serie único, nombre de la AC que emitió, firma digital de la AC cifrada con su llave privada..

Lo normal es que este certificado lo genere una Autoridad Certificadora (Verisign, Thawte, Comodo, etc…) que es una entidad confiable que se encarga de garantizar que el poseedor de un certificado digital sea quien dice ser, bridando confianza a ambas partes de una comunicación segura SSL/TLS.

IDEA:

1) El navegador solicida al servidor que se identifique
2) El servidor presenta un certificado digital para identificarse
3) Para que el navegador confíe en el servidor realiza unas pruebas verificando la validez del certificado
4) Un vez que comprueba que es válido establece la comunicación cifrada.

CONFIGURACIÓN:

1) Instalar OpenSSL

apt-get install openssl

2) Generar una clave privada

La clave o llave privada es útil para generar el certificado. Una vez creado, el certificado SSL dependerá de esta clave para la implementación del mismo en cualquier servicio que requiera una conexión segura. Vamos a crear una clave privada RSA de 1024 bits usando triple DES:

opnessl genrsa -des3 -out servidor.key 1024

Quitamos la contraseña para que no la pida por si reiniciamos apache.

mv servidor.key servidor.key.old
openssl rsa -in servidor.key.old -out servidor.key

Enter pass phrase for servidor.old.key:
writing RSA key

3) Crear un CSR (Certificate Signing Request)

Un CSR es la base para un certificado SSL, en el se definen datos como el dominio, organización, ubicación, información de contacto, entre otros.

openssl req -new -key servidor.key -out servidor.csr

Enter pass phrase for server.key:
You are about to be asked to enter information that will be incorporated into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) AU:ES
State or Province Name (full name) Some-State:Madrid
Locality Name (eg, city) []:Madrid
Organization Name (eg, company) Internet Widgits Pty Ltd:
Organizational Unit Name (eg, section) []:
Common Name (eg, YOUR name) []:
Email Address []:
#No pongas nada en lo siguiente
Please enter the following 'extra' attributes to be sent with your certificate request
A challenge password []:
An optional company name []:

4) Generar el certificado SSL:

Para generar el certificado SSL vamos a necesitar tanto la llave privada como el CSR que acabamos de crear.

openssl x509 -req -days 365 -in servidor.csr -signkey servidor.key -out servidor.crt

Creamos la carpeta /etc/apache2/ssl y copiamos los ficheros allí.

Copiamos los archivos a la carpeta en /etc/apache2/ssl o en /etc/ssl/certs (aquí están todos los certificados).

cp servidor.crt /etc/apache2/ssl/servidor.crt
cp servidor.key /etc/apache2/ssl/servidor.key

5) Configurar el certificado SSL en Apache:

Habilitamos el módulo de SSL en Apache:

a2enmod ssl

Revisar que este descomentado la entrada que hace referencia el puerto 443 en el fichero “/etc/apache2/ports.conf”

Editar el fichero “/etc/apache2/sites-available/default-ssl” , y configurar según tu instalación y añades el apartado “configuración ssl”:

# Configuracion SSL
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/servidor.crt
SSLCertificateKeyFile /etc/apache2/ssl/servidor.key
#Fin configuracion SSL

(No olvides sustituir www.example.com por tu dominio.)

Una vez configurado el certificado lo habilitamos:

a2ensite default-ssl

Para que la configuración surja efecto reiniciamos el servicio:

service apache2 reload

Ya debería estar el certificado SSL configurado y funcionando.

Si hay algún error de puede ver en /var/log/apache2/error.log.

Espero que os haya ayudado… 😉

Actualizar repositorios Linux / Actualizar

1) Inicialmente podemos ver en que version está un programa actual:

pe. openssl version

2) apt-get update

Es para actualizar los repositorios, actualiza la lista de todos los paquetes, con la dirección de dónde obtenerlos para que al buscar la descarga sea más rápida.

3) apt-get upgrade
apt-get upgrade [paquete]  -> por si solo queremos un paquete en concreto

Es para actualizar nuestro sistema con todas las posibles actualizaciones que haya, actualiza el sistema operativo y las aplicaciones de los repositorios.

4) Con la instrucción siguiente veremos que sigue en la misma versión pero que el paquete ha variado ya que pondrá al final de la version -2… que indica que ha cambiado respecto al inicial. Para eso lo vemos así:

dpkg -l openssl

 

5) en /var/log/apt/history.log se ven las actualizaciones recientes

Desactivar / Activar interface grafica de Debian

Si tras montar una máquina Linux no queremos usar la interfaz gráfica se puede deshabilitar.

Editar inittab:  vi /etc/inittab
– Cambiar el 2 por 3: id:2:initdefault  -> id:3:initdefault
Ir a la carpeta  cd /etc/rc3.d
Buscar el archivo S20gdm que es el encargado de iniciar el modo gráfico y renombrarlo: mv S20gdm3 K20gdm3

Reiniciar la máquina y ya está en modo texto.

Si quisieramos activarlo de nuevo ejecutar: /etc/init.d/gdm3 start