Você está na página 1de 6

Desarrollo de Software Libre I

Criptografa asimtrica como medio de autenticacin para SSH.

Ing. William Alexander Ventura

Objetivo: Instalar y configurar SSH para que utilice criptografa asimtrica como mecanismo control
de acceso seguro:

Requerimientos:

Descargar GitBash tambin disponible en clases Virtuales o en la URL siguiente.


http://git-scm.com/download/win
Conexin exitosa entre GNU/Linux y Windows y viceversa. (Conexin solo anfitrin)
Repositorios configurados correctamente.
Conexin a Internet (Interfaz en modo NAT)

Parte I
Conectividad y generacin de claves asimtricas a travs de la aplicacin ssh-keygen.

1. Comprobar la conexin entre la computador anfitriona (Fsica) y la computador virtual


(Servidor deban Virtualbox).
En el servidor como usuario root emitimos el comando ifconfig eth1

2. Una vez emitido el comando verificamos la IP de la mquina virtual en la propiedad inet


192.168.56.2 identificada la IP abrimos la consola de WINDOWS y emitimos el comando ping
para probar la conectividad esto nos devolver algo como lo siguiente:
3. Una vez comprobada la conexin entre la maquina anfitriona y la instalaremos en nuestro
servidor instalaremos el openssh-server para lo cual emitimos el siguiente comando:

4. Una vez instalado ssh nos pasaremos a ser un usuario normal en mi caso allexiusw como lo
puedes observar en el indicador de la consola, evita estar como root:

Soy el usuario allexiusw y estoy como un usuario normal

5. Ahora generaremos un par de llaves criptogrficas asimtricas cuya funcin es que a travs de
un algoritmo encriptar informacin con la llave privada y desencriptarla con la llave publica o
viceversa, adems se puede matemticamente comprobar si una llave privada se corresponde
con una llave publica en cuestin, esta ltima caracterstica permite que pueda ser utilizada
como una tcnica de control de acceso robusta y potente para el protocolo ssh y otros.

Emitimos el siguiente comando:

1. Nos notifica que se guardara en la carpeta /home/allexiusw/.ssh/id_rsa la llave


privada presionamos enter
2. No asociamos ninguna frase de encriptacin a la llave privada solo presionamos enter
y luego un enter ms.
3. La llave privada es de uso personal del usuario allexiusw en cuestin, y es la que le
permitir hacer loggin.
4. Luego nos notifica que en la carpeta /home/allexiusw/.ssh/id_rsa.pub se guard la
clave pblica que es la que se almacenara en el servidor.

6. Ahora pasamos a ser usuario root como lo ves en el indicador de la consola:

7. Ahora vamos a copiar la llave publica generada al fichero


/home/allexiusw/.ssh/authorized_keys esto indicara que el usuario allexiusw puede ingresar
con llave privada que matemticamente se corresponde con dicha llave publica autorizada
para ello emitimos el siguiente comando:

Recuerda que allexiusw debes sustituirlo por tu usuario.

PARTE II
Copiado de clave privada hacia maquina anfitriona utilizando el comando scp.

1. Ahora nos trasportamos a WINDOWS abrimos Gitbash y emitimos el siguiente comando:

El comando es cd y nos ubica en la carpeta del usuario de la pc que estamos utilizando.

2. Crearemos ahora una carpeta llamada key como sigue:

Con el comando anterior hemos creado dentro de la carpeta Documents una carpeta llamada
key donde se guardar la llave privada que nos permitir identificarnos en el momento que
deseemos acceder al servidor va SSH.
3. Ahora con el comando scp copiaremos la llave privada que est en el servidor deban hacia el
directorio creado anteriormente como sigue:

Con el comando le decimos a git que copie la clave privada almacenada en el servidor al
directorio key local que previamente creamos.
Presionamos yes para agregar el host a lista de conocidos y luego introducimos la contrasea
del usuario root en este apartado utilizar el usuario root ya que es el que tiene permiso para
lectura de los archivos que se transfieren.

4. Ahora comprobamos que la llave privada haya sido copia de manera local como sigue:

Como podemos apreciar al hacer un ls de los archivos contenidos en la carpeta


Documents/key se puede ver la clave copiada

PARTE III
Configuracin de SSH para solo pemitir accesos basados en criptografa asimtrica

1. Iniciamos una sesin ssh como root desde Gitbash

Nos pedir la contrasea y nos dar la bienvenida.

2. Abrimos el archivo de configuracin de ssh llamado sshd_conf como sigue:

3. Modificamos los siguientes parmetros:


Asociaremos el servico ssh a una sola IP, esto puede notablemente incrementar la
seguridad del servicio si los usuarios web se manejan desde otra direccin IP.

Bloqueamos el acceso de root.


Deshabilitamos la autenticacin por contraseas.

Des comentamos el archivo issue.net cuya finalidad es mostrar una advertencia que no
debe continuar si no posee los permisos de acceso requeridos:

Una vez hechas estas configuraciones guardamos y salimos de nano.

4. Ahora editaremos el archivo ubicado en /etc/issue.net y configuraremos el mensaje de


advertencia en el que se indique que solo el personal autorizado puede acceder al sistema y
que si no es un usuario autorizado podr ser procesado legalmente:

Configuras el mensaje y completas guardando y cerrando en nano.

5. Ahora reiniciamos el servicio ssh para que tome las configuraciones realizadas:

6. Salimos de la sesin ssh:

Ahora nos encontramos nuevamente en Gitbash en nuestra PC con WINDOWS.

PARTE IV
Obtener acceso utilizando llave privada de allexiusw

7. Iniciaremos sesin en ssh ubicndonos en la consola Gitbash como sigue:

-i toma como parmetro la ruta en donde esta almacenada la llave privada que
corresponde al usuario allexiusw.
Como podemos apreciar el inicio de sesin ha sido exitoso y el acceso de hoy en adelante solo
lo puede realizar el usuario que cuente con la llave privada de allexiusw.

8. Salimos de la sesin emitiendo el comando exit:

9. Intentemos autenticarnos como root:

Nos indica que el acceso ha sido denegado por que la llave pblica no coincide con el
parmetro, pues en este caso no hemos referenciado una llave privada.

10. Ahora intentemos ingresar con el usuario root y llave privada de allexiusw:

Siempre nos generar denegara el acceso pues esa llave privada solo es vlida para el usuario
allexiusw.

11. Ahora intentaremos entrar como allexiusw pero sin llave privada:

Como apreciamos el acceso ha sido nuevamente denegado.

FIN.

Você também pode gostar