lunes, 26 de mayo de 2008

OPEN SSH

Openssh (Open Secure Shell) es un codigo abierto y un conjunto de aplicaciones que permite realizar comunicaciones cifradas a traves de una red privada, usando el protocolo ssh.

AUTENTICACION DE OPENSSH
El servidor Openssh se autentica con los usaurios usando
  • clave publica
  • conttraseña.
OpenSSH cifra todo el trafico incluyendo las contraseñas, ademas ofrece posibilidades para la creacion de tuneles seguros aparte de una variable de metodo de autenticacion como RSA o DSA
*Ahora vamos a installar openssh
apt-get install openssh

*Ya que esta instalado entramos al archivo de configuracion que esta en la ruta siguiente:/etc/ssh
lo cual nos muestra tanto la llave publica como la privada y archivos de configuracion.
ssh_host_rsa_key > esta es la llave privada de rsa

ssh_host_rsa_key.pub > esta es la llave publica de rsa

ssh_host_dsa_key > esta es la llave privada de dsa
ssh_host_dsa_key.pub > esta es la llave publica dsa

*Ahora procedemos a crear la llave para el cliente
ssh-keygen -t dsa o rsa "podes escoger cualquier algorutmo de autenticacion que quieras"

*Ahora que ya le creamos el par de llaves al cliente se lo enviamos al servidor por una usb o por scp, pero para enviarla hay en entrar a la ruta donde se guardo por defecto que es:/root/.shh/
ya que estamos dentro de ruta lo enviamos por scp la cual seria asi:
scp ip_dsa.pub root@10.3.9.?:/tmp

*Nos entramos a la ruta del temporar
  • cd /tmp "listamos entonces le damos"
  • cat id_dsa.pub >/root/.ssh/autorized_keys "creamos este archivo para guardar la llave del cliente"
*Ya que el cliente nos a enviado la llave publica en temporal nos vamos hasta ya y lo listamos para ver si el que tenemos es igual a la clave que tiene el cliente
testing-guerra:~/.ssh# cat autorized_keys
ssh-dssAAAAB3NzaC1kc3MAAACBALLFusrkCR41GfrtsOdrEZRCOrb2sxoVfxHNkZsuTI8+EN5m
7CYChbTS38nF9GH0nMYWj6fyCaqTFqNoT7eNfjgvhmTHby1v6pTCCOfJsgk4JG0f67DA3
IgEXkxhCMrrwOrkBoqvZPbfVPRskox1cOZ0FY8kSjR0Aznd22xE8TpBAAAAFQCF3q+iEAL
cKaYvsCSl/6scqDgrTQAAAIByPO9sHt4yX9gSWdqoRV7Gh9l2cIP+2L10LDdeKaOj958itK
Sr6cXQdl0AON61PMb3s2TJxMAT3FxryZqRc/bMZ46nKRaSA1HcmoYfdZkGvZpNm5BRH
LFqu2pQQ86StMN5IRPK4Vc6gTgeOHOChDytbDUzSwY9fh9G5au6smHG9QAAAIA5AjX
njj7aJ9KD0f3OdxmCrhmlFwa5KX7QM6K0FIDxOiZIw4JYloJpVXA4c9Sn5xtnr/x+f5VSGUq
oCOhyQKMNaaKmvDRctMXspbl6jyjkQDwMN19cHUJX6/4Yv5nvlj3+5zRwgqjjsgnrbAiWT
UfmTanNA635e4I5r0dcbHvWBA== root@localhost"

AHORA VAMOS A CONFIGURAR EL SERVIDOR

*entramos a la ruta de openssh
  • cd /etc/ssh
  • pico ssh_config
y descomentamos las siguientes lineas le quitamos el yes y le ponemos un no para activar la autenticacion sin pedir contraseña
PasswordAuthentication no

*Ya nos entramos al archivo sshd_config y comentamos las siguiente lineas
#AuthorizedKeysFile %h/.ssh/authorized_keys
#PasswordAuthentication no

*Ya guardamos el archivo y recargamos el servicio de ssh
/etc/init.d/ssh restart

*Ya que el servicio esta cargado el cliente puede conectarse por ssh asi
ssh 10.3.9.?
el cliente se puede conectar normalmente a la maquina remota

*Pero si decomentamos la siguente linea

PasswordAuthentication no; cargamos el servicio y el cliente se conecta y no lo deja conectar porque necesita la llave publica

*Ya que hemos comentado la linea anterios procedemos a descomentar la siguiente linea AuthorizedKeysFile %h/.ssh/authorized_key para que el cliente cuando se conecte y ahora esta utlizando la llave y puede conectarce a la maquina remota, cargamos el servicio para que coja los cambios.

No hay comentarios: