SlideShare une entreprise Scribd logo
1  sur  6
Télécharger pour lire hors ligne
openSSH                                                            http://www.splitcc.net/Documents/TutorialOpenS...




         openSSH
         Alvaro Marín Illera alvaro at rigel.deusto.es

         Instalación, configuración y manejo de openSSH

         Introducción
         OpenSSH (desarrollada por openBSD) es la versión libre (licencia BSD) del protocolo SSH.
         Permite entre otras cosas, la conexión remota a una máquina, para poder ejecutar comandos sobre
         ella, al igual que telnet o rlogin, pero con la ventaja respecto a los anteriores programas de que la
         información va cifrada. Esto es, en el caso de que alguien de la misma red en la que nos
         encontramos, esté usando un sniffer para "capturar" las contraseñas para conectarnos a un ftp o a
         una sesión telnet, con ssh, estará perdiendo el tiempo ya que van cifradas.

         Pero además de esto, con ssh podremos establecer sesiones seguras con sevidores X, smtp, pop3...
         mediante túneles SSH.

         Para la autentificación, ssh puede utilizar algoritmo de cifrado como RSA o DSA. Para el envío de
         datos a través de la red, usa 3DES, IDEA, Blowfish...

         Soporta ambas versiones del protocolo ssh, la 1 y la 2. Dependiendo de cuál usemos los métodos de
         autentificación, son distintos:

             ssh v1:
                 si la máquina que se va a conectar está en /etc/hosts.equiv o /etc/shosts.equiv del servidor
                 y el username es igual en ambas máquinas, se permite el login. Luego si .rhosts o .shosts
                 existe en el servidor y contiene una línea con el nombre de usuario del cliente, se permite el
                 login.
                 Este método "en solitario", no es permitido por medidas de seguridad.
                 este segundo método es el anterior junto con autentificación por host mediante claves RSA.
                 Consiste en que si el login es permitido por /etc/hosts.equiv, /etc/shosts.equiv,
                 $HOME/.rhosts o $HOME/.shosts y el servidor puede verificar la "clave de host" del cliente
                 (ver /etc/ssh/ssh_known_hosts y $HOME/.ssh/known_hosts) , será admitida la conexión.
                 el tercer método es autentificación por RSA, es decir, el cliente crea su clave pública y su
                 clave privada; el servidor conocerá la clave pública de cada usuario. El archivo
                 $HOME/.ssh/authorized_keys contiene las claves que son permitidas para el login. Al
                 conectarse, el cliente le dice al servidor con qué pareja /pub/priv quiere autentificarse. El
                 servidor le envia un "desafío" al cliente, y si el cliente lo descifra y envía correctamente la
                 respuesta, se permite el login.
                 El cliente, generará sus claves mediante el programa ssh-keygen y se guardan en
                 $HOME/.ssh/identity (para la clave privada) y $HOME/.ssh/identity.pub. El cliente debe
                 copiar el archivo identity.pub en su home del servidor, más concretamente en HOME/.ssh
                 /authorized_keys . Después de esto, se puede conectar sin necesidad de password.
                 Si fallan, autentificación por contraseña.

             ssh v2:
                 Cuando el cliente se conecta usando el protocolo v2 de ssh, se usan métodos similares de
                 autentificación que en v1.
                 Primeramente se intenta con la autentificación de host, luego por clave pública/privada y
                 finalmente por password.
                 El método que hemos visto en la v1 de autentificación por RSA, cambia un poco en esta



1 de 6                                                                                                   10/11/09 17:41
openSSH                                                           http://www.splitcc.net/Documents/TutorialOpenS...


                 segunda versión, ya que podemos usar tanto RSA como DSA. El cliente tendrá su clave
                 privada $HOME/.ssh/id_dsa o $HOME/.ssh/id_rsa. El servidor también tendrá que
                 comprobar las claves en $HOME/.ssh/authorized_keys.

         Dentro del paquete 'ssh' vienen bastantes programas adicionales, a parte del servidor y el cliente:

             sshd : servidor de ssh
             sftp-server : servidor ftp mediante ssh. Para usarlo, añadir "Subsystem sftp /usr/lib/sftp-server"
             en sshd_config
             ssh : el cliente, con él nos podemos conectar al servidor sshd.
             scp : copia archivos entre máquinas. Sustituto para rcp.
             ssh-keygen : para crear claves públicas y privadas RSA o DSA (host keys y user authentication
             keys).
             ssh-keyscan : utilidad para obtención de claves públicas de hosts
             ssh-copy-id : copia el identify.pub en una máquina remota
             ssh-agent : agente de autentificación. (Usado para manejar RSA keys en la autentificación.)
             ssh-add : para añadir nuevas claves con el agente.
             sftp : cliente ftp mediante ssh


         Configuración del servidor sshd
         Vamos al directorio /etc/ssh. El archivo de configuración del servidor se llama sshd_config. Si existe
         un archivo llamado sshd_not_to_be_run significa que habremos elegido en la instalación la opción de
         no arrancar el demonio para aceptar conexiones. Borrando dicho archivo y reiniciando el ssh,
         tenemos ya el servidor a la escucha en el puerto 22.
         Pasamos a comentar las opciones del fichero de configuración:

         # Definimos el puerto por el que escuchamos las peticiones de conexión del los clientes
         Port 22

         # Especificamos por qué direcciones locales escucharemos.
         # Use these options to restrict which interfaces/protocols sshd will bind to
         #ListenAddress ::
         #ListenAddress 0.0.0.0

         # Especificamos las versiones del protocolo que aceptaremos
         Protocol 2,1

         # Archivos que contienen las llaves privadas de host a usar (solo permisos rw- para root)
         # HostKeys for protocol version 1
         HostKey /etc/ssh/ssh_host_key
         # HostKeys for protocol version 2
         HostKey /etc/ssh/ssh_host_rsa_key
         HostKey /etc/ssh/ssh_host_dsa_key


         # Cada cuantos segundos el servidor regenera las claves, para así evitar el que se puedan
         # descifrar sesiones caputaradas y luego usarse. Nunca es guardada en disco.
         KeyRegenerationInterval 3600

         # Espeficia el nº de bits para la clave del servidor del protocolo v1
         ServerKeyBits 768


         # Tipo de logeo de actividades -> AUTH=>/var/log/auth.log También disponible   DAEMON, USER...
         # Logging
         SyslogFacility AUTH
         LogLevel INFO




2 de 6                                                                                                    10/11/09 17:41
openSSH                                                           http://www.splitcc.net/Documents/TutorialOpenS...



         # Authentication:
         # El servidor desconecta al cliente si no se ha logueado correctamente en 600 segs.
         LoginGraceTime 600
         # Permitimos o no el login del usuario root => poner a no!
         PermitRootLogin no
         # SSH comprobará que los archivos tienen los permisos correctos, para evitar tener archivos con todos
         # los permisos a todos los usuarios
         StrictModes yes


         # Permitimos la autentificación por RSA (solo para v1)
         RSAAuthentication yes

         # Permitimos la autentificación por clave pública (solo para v2)
         PubkeyAuthentication yes

         # Contiene el archivo que contiene las claves para la autentificación
         #AuthorizedKeysFile %h/.ssh/authorized_keys


         # NO usaremos el método de autentificación por rhost (.rhost)
         # rhosts authentication should not be used
         RhostsAuthentication no

         # Don't read the user's ~/.rhosts and ~/.shosts files
         IgnoreRhosts yes
         # For this to work you will also need host keys in /etc/ssh_known_hosts
         RhostsRSAAuthentication no

         # No usamos el protocolo de autentificación por host
         # similar for protocol version 2
         HostbasedAuthentication no

         # Uncomment if you don't trust ~/.ssh/known_hosts for RhostsRSAAuthentication
         #IgnoreUserKnownHosts yes

         # To enable empty passwords, change to yes (NOT RECOMMENDED)
         PermitEmptyPasswords no

         # Uncomment to disable s/key passwords
         #ChallengeResponseAuthentication no


         # HAbilitamos la autentificación "normal" si todo falla
         # To disable tunneled clear text passwords, change to no here!
         PasswordAuthentication yes

         # Use PAM authentication via keyboard-interactive so PAM modules can
         # properly interface with the user
         PAMAuthenticationViaKbdInt yes


         # Opciones para servidor Kerberos
         # To change Kerberos options
         #KerberosAuthentication no
         #KerberosOrLocalPasswd yes
         #AFSTokenPassing no
         #KerberosTicketCleanup no
         # Kerberos TGT Passing does only work with the AFS kaserver
         #KerberosTgtPassing yes




3 de 6                                                                                                10/11/09 17:41
openSSH                                                          http://www.splitcc.net/Documents/TutorialOpenS...


         # En un principio, no permitimos exportar las X
         X11Forwarding no
         # Espeficicamos el primer nº de pantalla disponible para exportar
         X11DisplayOffset 10


         # Si queremos que al hacer login, al usuario le salga /etc/motd
         PrintMotd no

         # Por defecto, enseñaremos los datos del último login
         #PrintLastLog no

         # Para que el servidor pueda "enterarse" de que el cliente ha caido por ej
         KeepAlive yes

         #
         #UseLogin no

         #MaxStartups 10:30:60

         # Si queremos enviar un banner cuando un cliente se conecte
         #Banner /etc/issue.net


         #ReverseMappingCheck yes


         # Servidor ftp por ssh
         Subsystem   sftp /usr/lib/sftp-server




         Autentificación por claves RSA/DSA
         Vamos a configurar ssh para poder acceder al servidor de forma segura y sin password, es decir,
         mediante claves RSA/DSA.

         Debemos asegurarnos que en archivo de configuración del servidor, tenemos la opción:
         PubkeyAuthentication yes

         En el cliente, generamos las claves DSA:

         ssh-genkey -t dsa

         Podemos poner una password, de tal forma que ésta sería la que habría que introducir cada vez que
         queramos conectarnos a la máquina remota. En nuestro caso, la dejaremos en blanco.
         Vamos al directorio .ssh de nuestro home y vemos que nos ha generado dos archivos:
         id_dsa (llave privada)
         id_dsa.pub (llave publica)

         Es la clave pública la que deberemos mandar al servidor, para ello usamos scp:

         $scp archivo_local user@host:archivo_remoto
         scp id_dsa.pub alvaro@intranet:.ssh/id_dsa.pub
         The authenticity of host 'intranet (192.168.200.70)' can't be established.
         RSA key fingerprint is d8:d7:0a:cf:d9:8f:fe:fa:66:f0:76:46:46:fa:b8:1a.
         Are you sure you want to continue connecting (yes/no)?

         Vemos que no puede establecer la autentificación por host, y por tanto nos pedirá la contraseña. El
         fingerprint, es la "firma digital" del servidor. La aceptamos, y se nos copiará en el archivo



4 de 6                                                                                                10/11/09 17:41
openSSH                                                            http://www.splitcc.net/Documents/TutorialOpenS...


         .ssh/know_host de la máquina local. De esta forma, cada vez que nos conectemos al servidor, se
         comprobará que ambas "firmas" coinciden.

         alvaro@intranet's password:
         id_dsa.pub           100% |****************************************************|     605       00:00

         Ya tenemos nuestra clave pública copiada en el servidor, en el directorio .ssh del home del usuario
         Ahora conectandonos al servidor, hacemos los siguiente:

         cd /home/usuario/.ssh/
         cat id_dsa.pub_CLIENTE >> authorized_keys2
         rm id_dsa.pub_CLIENTE

         A partir de este momento, ya podemos hacer desde el cliente, de la forma:

         ssh usuario@servidor

         para conectarnos sin necesidad de password. Debemos asegurarnos que solo nosotros tenemos
         acceso a leer la clave privada, para ello damos al directorio, los permisos siguientes:

         chmod 700 .ssh

         Por otra parte, ssh-agent, es un demonio que se encarga de "cachear" las claves privadas. SSH se
         conectará con ssh-agent para pedirle la clave privada, así no tendremos que introducir la password
         cada vez que nos conectemos al servidor.
         Para añadir una clave privada a ssh-agent utilizamos el comando ssh-add, de la siguiente forma:

         ssh-add .ssh/id_dsa

         y a partir de ahora, ya no tendremos que poner la pass cada vez.

         Si queremos habilitar esta forma de autentificación, de tal modo que solo las máquinas con su clave
         en el servidor puedan entrar, podemos poner a "no", la línea de PasswordAuthentication.


         SSH Tunneling
         Mediante ssh podemos hacer túneles para poder enviar al información a través de la red, es decir,
         podemos por ejemplo conectarnos al puerto 110 de un servidor para ver nuestro correo, de tal
         forma que los datos van cifrados. Esto se consigue mediante el "port-forwarding". Lógicamente,
         hace falta tener ssh en ambas máquinas.


         ssh   -P -f -L   1234:remoteserver:110 user@remoteserver sleep 25

         Las opciones que hemos indicado a ssh son:

               -L especifica el "redireccionamiento" del puerto 110 de la máquina remota el 1234 de la local.
               -f indica que se ejecute en background
               -P nos permite usar puertos mayores que 1024, de este modo, podemos usar el tunel sin ser
               root sleep 25 indica el tiempo en segundos durante el que el tunel estará activo. Cuando pase
               dicho tiempo, se esperará a que las conexiones existentes acaben.

         Para poder descargar el correo por pop3, bastará conectarnos al puerto 1234 local. Los datos se
         enviarán y recibirán de forma cifrada a través del túnel.
         Para más información sobre el tema, podeis consultar el artículo que hizo Pablo Garaizar:
         http://130.206.100.150/docs/articulo.ssh.html




5 de 6                                                                                                   10/11/09 17:41
openSSH                                 http://www.splitcc.net/Documents/TutorialOpenS...




          Alvaro Marin, 2004. Algunos derechos reservados.
          http://creativecommons.org/licenses/by-nc-sa/2.0/




6 de 6                                                                     10/11/09 17:41

Contenu connexe

Tendances

Seguridad de las Redes Informáticas
Seguridad de las Redes InformáticasSeguridad de las Redes Informáticas
Seguridad de las Redes InformáticasJACQUELINELUZARDO
 
Pecha kuchassh windows
Pecha kuchassh windowsPecha kuchassh windows
Pecha kuchassh windowsJavier Pérez
 
Seg t2 practicas_certificado ssl
Seg t2 practicas_certificado sslSeg t2 practicas_certificado ssl
Seg t2 practicas_certificado sslgarciadebora
 
Manual de hacker 131 trucos elhacker hacking webs, hack msn messenger 7, se...
Manual de hacker   131 trucos elhacker hacking webs, hack msn messenger 7, se...Manual de hacker   131 trucos elhacker hacking webs, hack msn messenger 7, se...
Manual de hacker 131 trucos elhacker hacking webs, hack msn messenger 7, se...kelvinst
 
Manual de squid creado por juanextk
Manual de squid creado por juanextkManual de squid creado por juanextk
Manual de squid creado por juanextkjuanextk
 
Red t4 practica_ftp1
Red t4 practica_ftp1Red t4 practica_ftp1
Red t4 practica_ftp1garciadebora
 
Unidad iii redes presentacion
Unidad iii redes presentacionUnidad iii redes presentacion
Unidad iii redes presentacionJessRangel13
 
Instalación de Servidores GNU/Linux - PROXY SQUID (parte 3)
Instalación de Servidores GNU/Linux - PROXY SQUID (parte 3)Instalación de Servidores GNU/Linux - PROXY SQUID (parte 3)
Instalación de Servidores GNU/Linux - PROXY SQUID (parte 3)Max Morales
 
Sg t3 practica_vpn-ssh
Sg t3 practica_vpn-sshSg t3 practica_vpn-ssh
Sg t3 practica_vpn-sshgarciadebora
 
Utilización de Ssh entre varios servidores.
Utilización de Ssh entre varios servidores.Utilización de Ssh entre varios servidores.
Utilización de Ssh entre varios servidores.Javier Martin Rivero
 
Configuracion de proxy squid en centos
Configuracion de proxy squid en centosConfiguracion de proxy squid en centos
Configuracion de proxy squid en centosmurilloyair
 
gnupg criptografía de llave pública
gnupg criptografía de llave públicagnupg criptografía de llave pública
gnupg criptografía de llave públicamanu betran
 
Servidor SSH en Centos 6
Servidor SSH en Centos 6Servidor SSH en Centos 6
Servidor SSH en Centos 6AngiePalacios03
 

Tendances (20)

Seguridad de las Redes Informáticas
Seguridad de las Redes InformáticasSeguridad de las Redes Informáticas
Seguridad de las Redes Informáticas
 
Pecha kuchassh windows
Pecha kuchassh windowsPecha kuchassh windows
Pecha kuchassh windows
 
Seg t2 practicas_certificado ssl
Seg t2 practicas_certificado sslSeg t2 practicas_certificado ssl
Seg t2 practicas_certificado ssl
 
Manual de hacker 131 trucos elhacker hacking webs, hack msn messenger 7, se...
Manual de hacker   131 trucos elhacker hacking webs, hack msn messenger 7, se...Manual de hacker   131 trucos elhacker hacking webs, hack msn messenger 7, se...
Manual de hacker 131 trucos elhacker hacking webs, hack msn messenger 7, se...
 
Manual de squid creado por juanextk
Manual de squid creado por juanextkManual de squid creado por juanextk
Manual de squid creado por juanextk
 
Practica 16
Practica 16Practica 16
Practica 16
 
Red t4 practica_ftp1
Red t4 practica_ftp1Red t4 practica_ftp1
Red t4 practica_ftp1
 
Unidad iii redes presentacion
Unidad iii redes presentacionUnidad iii redes presentacion
Unidad iii redes presentacion
 
Instalación de Servidores GNU/Linux - PROXY SQUID (parte 3)
Instalación de Servidores GNU/Linux - PROXY SQUID (parte 3)Instalación de Servidores GNU/Linux - PROXY SQUID (parte 3)
Instalación de Servidores GNU/Linux - PROXY SQUID (parte 3)
 
Sg t3 practica_vpn-ssh
Sg t3 practica_vpn-sshSg t3 practica_vpn-ssh
Sg t3 practica_vpn-ssh
 
Utilización de Ssh entre varios servidores.
Utilización de Ssh entre varios servidores.Utilización de Ssh entre varios servidores.
Utilización de Ssh entre varios servidores.
 
Configuracion de proxy squid en centos
Configuracion de proxy squid en centosConfiguracion de proxy squid en centos
Configuracion de proxy squid en centos
 
Manual instalacion svn
Manual instalacion svnManual instalacion svn
Manual instalacion svn
 
CTF Brainpan
CTF BrainpanCTF Brainpan
CTF Brainpan
 
gnupg criptografía de llave pública
gnupg criptografía de llave públicagnupg criptografía de llave pública
gnupg criptografía de llave pública
 
OpenVPN
OpenVPNOpenVPN
OpenVPN
 
Ssh
SshSsh
Ssh
 
Servidor SSH en Centos 6
Servidor SSH en Centos 6Servidor SSH en Centos 6
Servidor SSH en Centos 6
 
Instalación y configuración Servidor FTP y SSH
Instalación y configuración Servidor FTP y SSHInstalación y configuración Servidor FTP y SSH
Instalación y configuración Servidor FTP y SSH
 
Manual FTP, SSH y OpenMedia Vault
Manual FTP, SSH y OpenMedia VaultManual FTP, SSH y OpenMedia Vault
Manual FTP, SSH y OpenMedia Vault
 

En vedette

Servidor ldap-en-debian-6-squeeze
Servidor ldap-en-debian-6-squeezeServidor ldap-en-debian-6-squeeze
Servidor ldap-en-debian-6-squeezeMauricio Arcas H.
 
Autenticación remota y servicios de directorio. LDAP y Kerberos
Autenticación remota y servicios de directorio. LDAP y KerberosAutenticación remota y servicios de directorio. LDAP y Kerberos
Autenticación remota y servicios de directorio. LDAP y Kerberosseguridadelinux
 
Samba como PDC y autentificación LDAP
Samba como PDC y autentificación LDAPSamba como PDC y autentificación LDAP
Samba como PDC y autentificación LDAPiesgrancapitan.org
 
Servidor De Correo
Servidor De CorreoServidor De Correo
Servidor De Correogersmant
 
Administración de un directorio activo (LDAP) en Linux.
Administración de un directorio activo (LDAP) en Linux. Administración de un directorio activo (LDAP) en Linux.
Administración de un directorio activo (LDAP) en Linux. camilaml
 

En vedette (9)

Postfix Internet Site + Sasl
Postfix Internet Site + SaslPostfix Internet Site + Sasl
Postfix Internet Site + Sasl
 
Servidor ldap-en-debian-6-squeeze
Servidor ldap-en-debian-6-squeezeServidor ldap-en-debian-6-squeeze
Servidor ldap-en-debian-6-squeeze
 
Autenticación remota y servicios de directorio. LDAP y Kerberos
Autenticación remota y servicios de directorio. LDAP y KerberosAutenticación remota y servicios de directorio. LDAP y Kerberos
Autenticación remota y servicios de directorio. LDAP y Kerberos
 
Implementación de DNS
Implementación de DNS Implementación de DNS
Implementación de DNS
 
Samba como PDC y autentificación LDAP
Samba como PDC y autentificación LDAPSamba como PDC y autentificación LDAP
Samba como PDC y autentificación LDAP
 
Dhcp+ldap+gosa
Dhcp+ldap+gosaDhcp+ldap+gosa
Dhcp+ldap+gosa
 
GOsa+samba+ldap
GOsa+samba+ldapGOsa+samba+ldap
GOsa+samba+ldap
 
Servidor De Correo
Servidor De CorreoServidor De Correo
Servidor De Correo
 
Administración de un directorio activo (LDAP) en Linux.
Administración de un directorio activo (LDAP) en Linux. Administración de un directorio activo (LDAP) en Linux.
Administración de un directorio activo (LDAP) en Linux.
 

Similaire à openSSH configuración

Sshmarta
SshmartaSshmarta
Sshmartagh02
 
Instalación y Configuración SSH CentOS 6.5 / RHEL 6.2
Instalación y Configuración SSH CentOS 6.5 / RHEL 6.2Instalación y Configuración SSH CentOS 6.5 / RHEL 6.2
Instalación y Configuración SSH CentOS 6.5 / RHEL 6.2cyberleon95
 
El servidor ssh (cap32)
El servidor ssh (cap32)El servidor ssh (cap32)
El servidor ssh (cap32)D'alejo Rave
 
Mejorando la seguridad del servicio SSH - Hardening
Mejorando la seguridad del servicio SSH - HardeningMejorando la seguridad del servicio SSH - Hardening
Mejorando la seguridad del servicio SSH - HardeningAntonio Ognio
 
Apache.http ftp-smtp
Apache.http ftp-smtpApache.http ftp-smtp
Apache.http ftp-smtpgh02
 
Hardening Telnet ssh final
Hardening Telnet ssh finalHardening Telnet ssh final
Hardening Telnet ssh finalJosé Moreno
 
Unidad III: Seguridad de las redes
Unidad III: Seguridad de las redesUnidad III: Seguridad de las redes
Unidad III: Seguridad de las redesJavierRamirez419
 
Administración de llaves SSH para aplicaciones
Administración de llaves SSH para aplicacionesAdministración de llaves SSH para aplicaciones
Administración de llaves SSH para aplicacionesRodolfo Pilas
 
Procedimeintos llaves compartidas ssh Linux
Procedimeintos llaves compartidas ssh LinuxProcedimeintos llaves compartidas ssh Linux
Procedimeintos llaves compartidas ssh LinuxEcatel SRL
 
Fingerprinting en linux con unix_privesc_check
Fingerprinting en linux con  unix_privesc_checkFingerprinting en linux con  unix_privesc_check
Fingerprinting en linux con unix_privesc_checkq3rv0
 
Secpanel ssh y scp linux freddy beltran
Secpanel ssh y scp linux freddy beltranSecpanel ssh y scp linux freddy beltran
Secpanel ssh y scp linux freddy beltranbeppo
 

Similaire à openSSH configuración (20)

Sshmarta
SshmartaSshmarta
Sshmarta
 
Qué es ssh
Qué es sshQué es ssh
Qué es ssh
 
Instalación y Configuración SSH CentOS 6.5 / RHEL 6.2
Instalación y Configuración SSH CentOS 6.5 / RHEL 6.2Instalación y Configuración SSH CentOS 6.5 / RHEL 6.2
Instalación y Configuración SSH CentOS 6.5 / RHEL 6.2
 
El servidor ssh (cap32)
El servidor ssh (cap32)El servidor ssh (cap32)
El servidor ssh (cap32)
 
Práctica 15
Práctica 15Práctica 15
Práctica 15
 
Mejorando la seguridad del servicio SSH - Hardening
Mejorando la seguridad del servicio SSH - HardeningMejorando la seguridad del servicio SSH - Hardening
Mejorando la seguridad del servicio SSH - Hardening
 
Apache.http ftp-smtp
Apache.http ftp-smtpApache.http ftp-smtp
Apache.http ftp-smtp
 
Curso Redes Linex 2
Curso Redes Linex 2Curso Redes Linex 2
Curso Redes Linex 2
 
Curso Redes Linex 2
Curso Redes Linex 2Curso Redes Linex 2
Curso Redes Linex 2
 
18 open ssh
18  open ssh18  open ssh
18 open ssh
 
Ssh
SshSsh
Ssh
 
Hardening Telnet ssh final
Hardening Telnet ssh finalHardening Telnet ssh final
Hardening Telnet ssh final
 
Conexión Segura a un VPS mediante una VPN SSL
Conexión Segura a un VPS mediante una VPN SSLConexión Segura a un VPS mediante una VPN SSL
Conexión Segura a un VPS mediante una VPN SSL
 
Autentificacion sql antonio_hermoso
Autentificacion sql antonio_hermosoAutentificacion sql antonio_hermoso
Autentificacion sql antonio_hermoso
 
Unidad III: Seguridad de las redes
Unidad III: Seguridad de las redesUnidad III: Seguridad de las redes
Unidad III: Seguridad de las redes
 
Administración de llaves SSH para aplicaciones
Administración de llaves SSH para aplicacionesAdministración de llaves SSH para aplicaciones
Administración de llaves SSH para aplicaciones
 
Team.docx
Team.docxTeam.docx
Team.docx
 
Procedimeintos llaves compartidas ssh Linux
Procedimeintos llaves compartidas ssh LinuxProcedimeintos llaves compartidas ssh Linux
Procedimeintos llaves compartidas ssh Linux
 
Fingerprinting en linux con unix_privesc_check
Fingerprinting en linux con  unix_privesc_checkFingerprinting en linux con  unix_privesc_check
Fingerprinting en linux con unix_privesc_check
 
Secpanel ssh y scp linux freddy beltran
Secpanel ssh y scp linux freddy beltranSecpanel ssh y scp linux freddy beltran
Secpanel ssh y scp linux freddy beltran
 

Plus de Alvaro Marin

Seguridad en sistemas_de_correo_electronico
Seguridad en sistemas_de_correo_electronicoSeguridad en sistemas_de_correo_electronico
Seguridad en sistemas_de_correo_electronicoAlvaro Marin
 
Seguridad en sistemas de correo electrónico
Seguridad en sistemas de correo electrónicoSeguridad en sistemas de correo electrónico
Seguridad en sistemas de correo electrónicoAlvaro Marin
 
Seguridad en sistemas de correo electrónico
Seguridad en sistemas de correo electrónicoSeguridad en sistemas de correo electrónico
Seguridad en sistemas de correo electrónicoAlvaro Marin
 
Seguridad en sistemas de correo electrónico
Seguridad en sistemas de correo electrónicoSeguridad en sistemas de correo electrónico
Seguridad en sistemas de correo electrónicoAlvaro Marin
 
SPF - Sender Policy Framework
SPF - Sender Policy FrameworkSPF - Sender Policy Framework
SPF - Sender Policy FrameworkAlvaro Marin
 
Resumen MAAWG 2004
Resumen MAAWG 2004Resumen MAAWG 2004
Resumen MAAWG 2004Alvaro Marin
 
Abuse Reporting Fromat
Abuse Reporting FromatAbuse Reporting Fromat
Abuse Reporting FromatAlvaro Marin
 
e-ghost Revista ESIDE
e-ghost Revista ESIDEe-ghost Revista ESIDE
e-ghost Revista ESIDEAlvaro Marin
 

Plus de Alvaro Marin (11)

Seguridad en sistemas_de_correo_electronico
Seguridad en sistemas_de_correo_electronicoSeguridad en sistemas_de_correo_electronico
Seguridad en sistemas_de_correo_electronico
 
Seguridad en sistemas de correo electrónico
Seguridad en sistemas de correo electrónicoSeguridad en sistemas de correo electrónico
Seguridad en sistemas de correo electrónico
 
Seguridad en sistemas de correo electrónico
Seguridad en sistemas de correo electrónicoSeguridad en sistemas de correo electrónico
Seguridad en sistemas de correo electrónico
 
Mysql
MysqlMysql
Mysql
 
DeCSS
DeCSSDeCSS
DeCSS
 
Seguridad en sistemas de correo electrónico
Seguridad en sistemas de correo electrónicoSeguridad en sistemas de correo electrónico
Seguridad en sistemas de correo electrónico
 
SPF - Sender Policy Framework
SPF - Sender Policy FrameworkSPF - Sender Policy Framework
SPF - Sender Policy Framework
 
Resumen MAAWG 2004
Resumen MAAWG 2004Resumen MAAWG 2004
Resumen MAAWG 2004
 
Abuse Reporting Fromat
Abuse Reporting FromatAbuse Reporting Fromat
Abuse Reporting Fromat
 
Redes Bayesianas
Redes BayesianasRedes Bayesianas
Redes Bayesianas
 
e-ghost Revista ESIDE
e-ghost Revista ESIDEe-ghost Revista ESIDE
e-ghost Revista ESIDE
 

Dernier

Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxAlexander López
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOAREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOnarvaezisabella21
 
Tecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxTecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxGESTECPERUSAC
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxModelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxtjcesar1
 
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúRed Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúCEFERINO DELGADO FLORES
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptJavierHerrera662252
 
Trabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfTrabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfedepmariaperez
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son241514984
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptchaverriemily794
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfjeondanny1997
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx241522327
 
Excel (1) tecnologia.pdf trabajo Excel taller
Excel  (1) tecnologia.pdf trabajo Excel tallerExcel  (1) tecnologia.pdf trabajo Excel taller
Excel (1) tecnologia.pdf trabajo Excel tallerValentinaTabares11
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMidwarHenryLOZAFLORE
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxAlexander López
 

Dernier (20)

Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOAREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
 
Tecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptxTecnologias Starlink para el mundo tec.pptx
Tecnologias Starlink para el mundo tec.pptx
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxModelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
 
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúRed Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
 
Trabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfTrabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdf
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx
 
Excel (1) tecnologia.pdf trabajo Excel taller
Excel  (1) tecnologia.pdf trabajo Excel tallerExcel  (1) tecnologia.pdf trabajo Excel taller
Excel (1) tecnologia.pdf trabajo Excel taller
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptx
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
 

openSSH configuración

  • 1. openSSH http://www.splitcc.net/Documents/TutorialOpenS... openSSH Alvaro Marín Illera alvaro at rigel.deusto.es Instalación, configuración y manejo de openSSH Introducción OpenSSH (desarrollada por openBSD) es la versión libre (licencia BSD) del protocolo SSH. Permite entre otras cosas, la conexión remota a una máquina, para poder ejecutar comandos sobre ella, al igual que telnet o rlogin, pero con la ventaja respecto a los anteriores programas de que la información va cifrada. Esto es, en el caso de que alguien de la misma red en la que nos encontramos, esté usando un sniffer para "capturar" las contraseñas para conectarnos a un ftp o a una sesión telnet, con ssh, estará perdiendo el tiempo ya que van cifradas. Pero además de esto, con ssh podremos establecer sesiones seguras con sevidores X, smtp, pop3... mediante túneles SSH. Para la autentificación, ssh puede utilizar algoritmo de cifrado como RSA o DSA. Para el envío de datos a través de la red, usa 3DES, IDEA, Blowfish... Soporta ambas versiones del protocolo ssh, la 1 y la 2. Dependiendo de cuál usemos los métodos de autentificación, son distintos: ssh v1: si la máquina que se va a conectar está en /etc/hosts.equiv o /etc/shosts.equiv del servidor y el username es igual en ambas máquinas, se permite el login. Luego si .rhosts o .shosts existe en el servidor y contiene una línea con el nombre de usuario del cliente, se permite el login. Este método "en solitario", no es permitido por medidas de seguridad. este segundo método es el anterior junto con autentificación por host mediante claves RSA. Consiste en que si el login es permitido por /etc/hosts.equiv, /etc/shosts.equiv, $HOME/.rhosts o $HOME/.shosts y el servidor puede verificar la "clave de host" del cliente (ver /etc/ssh/ssh_known_hosts y $HOME/.ssh/known_hosts) , será admitida la conexión. el tercer método es autentificación por RSA, es decir, el cliente crea su clave pública y su clave privada; el servidor conocerá la clave pública de cada usuario. El archivo $HOME/.ssh/authorized_keys contiene las claves que son permitidas para el login. Al conectarse, el cliente le dice al servidor con qué pareja /pub/priv quiere autentificarse. El servidor le envia un "desafío" al cliente, y si el cliente lo descifra y envía correctamente la respuesta, se permite el login. El cliente, generará sus claves mediante el programa ssh-keygen y se guardan en $HOME/.ssh/identity (para la clave privada) y $HOME/.ssh/identity.pub. El cliente debe copiar el archivo identity.pub en su home del servidor, más concretamente en HOME/.ssh /authorized_keys . Después de esto, se puede conectar sin necesidad de password. Si fallan, autentificación por contraseña. ssh v2: Cuando el cliente se conecta usando el protocolo v2 de ssh, se usan métodos similares de autentificación que en v1. Primeramente se intenta con la autentificación de host, luego por clave pública/privada y finalmente por password. El método que hemos visto en la v1 de autentificación por RSA, cambia un poco en esta 1 de 6 10/11/09 17:41
  • 2. openSSH http://www.splitcc.net/Documents/TutorialOpenS... segunda versión, ya que podemos usar tanto RSA como DSA. El cliente tendrá su clave privada $HOME/.ssh/id_dsa o $HOME/.ssh/id_rsa. El servidor también tendrá que comprobar las claves en $HOME/.ssh/authorized_keys. Dentro del paquete 'ssh' vienen bastantes programas adicionales, a parte del servidor y el cliente: sshd : servidor de ssh sftp-server : servidor ftp mediante ssh. Para usarlo, añadir "Subsystem sftp /usr/lib/sftp-server" en sshd_config ssh : el cliente, con él nos podemos conectar al servidor sshd. scp : copia archivos entre máquinas. Sustituto para rcp. ssh-keygen : para crear claves públicas y privadas RSA o DSA (host keys y user authentication keys). ssh-keyscan : utilidad para obtención de claves públicas de hosts ssh-copy-id : copia el identify.pub en una máquina remota ssh-agent : agente de autentificación. (Usado para manejar RSA keys en la autentificación.) ssh-add : para añadir nuevas claves con el agente. sftp : cliente ftp mediante ssh Configuración del servidor sshd Vamos al directorio /etc/ssh. El archivo de configuración del servidor se llama sshd_config. Si existe un archivo llamado sshd_not_to_be_run significa que habremos elegido en la instalación la opción de no arrancar el demonio para aceptar conexiones. Borrando dicho archivo y reiniciando el ssh, tenemos ya el servidor a la escucha en el puerto 22. Pasamos a comentar las opciones del fichero de configuración: # Definimos el puerto por el que escuchamos las peticiones de conexión del los clientes Port 22 # Especificamos por qué direcciones locales escucharemos. # Use these options to restrict which interfaces/protocols sshd will bind to #ListenAddress :: #ListenAddress 0.0.0.0 # Especificamos las versiones del protocolo que aceptaremos Protocol 2,1 # Archivos que contienen las llaves privadas de host a usar (solo permisos rw- para root) # HostKeys for protocol version 1 HostKey /etc/ssh/ssh_host_key # HostKeys for protocol version 2 HostKey /etc/ssh/ssh_host_rsa_key HostKey /etc/ssh/ssh_host_dsa_key # Cada cuantos segundos el servidor regenera las claves, para así evitar el que se puedan # descifrar sesiones caputaradas y luego usarse. Nunca es guardada en disco. KeyRegenerationInterval 3600 # Espeficia el nº de bits para la clave del servidor del protocolo v1 ServerKeyBits 768 # Tipo de logeo de actividades -> AUTH=>/var/log/auth.log También disponible DAEMON, USER... # Logging SyslogFacility AUTH LogLevel INFO 2 de 6 10/11/09 17:41
  • 3. openSSH http://www.splitcc.net/Documents/TutorialOpenS... # Authentication: # El servidor desconecta al cliente si no se ha logueado correctamente en 600 segs. LoginGraceTime 600 # Permitimos o no el login del usuario root => poner a no! PermitRootLogin no # SSH comprobará que los archivos tienen los permisos correctos, para evitar tener archivos con todos # los permisos a todos los usuarios StrictModes yes # Permitimos la autentificación por RSA (solo para v1) RSAAuthentication yes # Permitimos la autentificación por clave pública (solo para v2) PubkeyAuthentication yes # Contiene el archivo que contiene las claves para la autentificación #AuthorizedKeysFile %h/.ssh/authorized_keys # NO usaremos el método de autentificación por rhost (.rhost) # rhosts authentication should not be used RhostsAuthentication no # Don't read the user's ~/.rhosts and ~/.shosts files IgnoreRhosts yes # For this to work you will also need host keys in /etc/ssh_known_hosts RhostsRSAAuthentication no # No usamos el protocolo de autentificación por host # similar for protocol version 2 HostbasedAuthentication no # Uncomment if you don't trust ~/.ssh/known_hosts for RhostsRSAAuthentication #IgnoreUserKnownHosts yes # To enable empty passwords, change to yes (NOT RECOMMENDED) PermitEmptyPasswords no # Uncomment to disable s/key passwords #ChallengeResponseAuthentication no # HAbilitamos la autentificación "normal" si todo falla # To disable tunneled clear text passwords, change to no here! PasswordAuthentication yes # Use PAM authentication via keyboard-interactive so PAM modules can # properly interface with the user PAMAuthenticationViaKbdInt yes # Opciones para servidor Kerberos # To change Kerberos options #KerberosAuthentication no #KerberosOrLocalPasswd yes #AFSTokenPassing no #KerberosTicketCleanup no # Kerberos TGT Passing does only work with the AFS kaserver #KerberosTgtPassing yes 3 de 6 10/11/09 17:41
  • 4. openSSH http://www.splitcc.net/Documents/TutorialOpenS... # En un principio, no permitimos exportar las X X11Forwarding no # Espeficicamos el primer nº de pantalla disponible para exportar X11DisplayOffset 10 # Si queremos que al hacer login, al usuario le salga /etc/motd PrintMotd no # Por defecto, enseñaremos los datos del último login #PrintLastLog no # Para que el servidor pueda "enterarse" de que el cliente ha caido por ej KeepAlive yes # #UseLogin no #MaxStartups 10:30:60 # Si queremos enviar un banner cuando un cliente se conecte #Banner /etc/issue.net #ReverseMappingCheck yes # Servidor ftp por ssh Subsystem sftp /usr/lib/sftp-server Autentificación por claves RSA/DSA Vamos a configurar ssh para poder acceder al servidor de forma segura y sin password, es decir, mediante claves RSA/DSA. Debemos asegurarnos que en archivo de configuración del servidor, tenemos la opción: PubkeyAuthentication yes En el cliente, generamos las claves DSA: ssh-genkey -t dsa Podemos poner una password, de tal forma que ésta sería la que habría que introducir cada vez que queramos conectarnos a la máquina remota. En nuestro caso, la dejaremos en blanco. Vamos al directorio .ssh de nuestro home y vemos que nos ha generado dos archivos: id_dsa (llave privada) id_dsa.pub (llave publica) Es la clave pública la que deberemos mandar al servidor, para ello usamos scp: $scp archivo_local user@host:archivo_remoto scp id_dsa.pub alvaro@intranet:.ssh/id_dsa.pub The authenticity of host 'intranet (192.168.200.70)' can't be established. RSA key fingerprint is d8:d7:0a:cf:d9:8f:fe:fa:66:f0:76:46:46:fa:b8:1a. Are you sure you want to continue connecting (yes/no)? Vemos que no puede establecer la autentificación por host, y por tanto nos pedirá la contraseña. El fingerprint, es la "firma digital" del servidor. La aceptamos, y se nos copiará en el archivo 4 de 6 10/11/09 17:41
  • 5. openSSH http://www.splitcc.net/Documents/TutorialOpenS... .ssh/know_host de la máquina local. De esta forma, cada vez que nos conectemos al servidor, se comprobará que ambas "firmas" coinciden. alvaro@intranet's password: id_dsa.pub 100% |****************************************************| 605 00:00 Ya tenemos nuestra clave pública copiada en el servidor, en el directorio .ssh del home del usuario Ahora conectandonos al servidor, hacemos los siguiente: cd /home/usuario/.ssh/ cat id_dsa.pub_CLIENTE >> authorized_keys2 rm id_dsa.pub_CLIENTE A partir de este momento, ya podemos hacer desde el cliente, de la forma: ssh usuario@servidor para conectarnos sin necesidad de password. Debemos asegurarnos que solo nosotros tenemos acceso a leer la clave privada, para ello damos al directorio, los permisos siguientes: chmod 700 .ssh Por otra parte, ssh-agent, es un demonio que se encarga de "cachear" las claves privadas. SSH se conectará con ssh-agent para pedirle la clave privada, así no tendremos que introducir la password cada vez que nos conectemos al servidor. Para añadir una clave privada a ssh-agent utilizamos el comando ssh-add, de la siguiente forma: ssh-add .ssh/id_dsa y a partir de ahora, ya no tendremos que poner la pass cada vez. Si queremos habilitar esta forma de autentificación, de tal modo que solo las máquinas con su clave en el servidor puedan entrar, podemos poner a "no", la línea de PasswordAuthentication. SSH Tunneling Mediante ssh podemos hacer túneles para poder enviar al información a través de la red, es decir, podemos por ejemplo conectarnos al puerto 110 de un servidor para ver nuestro correo, de tal forma que los datos van cifrados. Esto se consigue mediante el "port-forwarding". Lógicamente, hace falta tener ssh en ambas máquinas. ssh -P -f -L 1234:remoteserver:110 user@remoteserver sleep 25 Las opciones que hemos indicado a ssh son: -L especifica el "redireccionamiento" del puerto 110 de la máquina remota el 1234 de la local. -f indica que se ejecute en background -P nos permite usar puertos mayores que 1024, de este modo, podemos usar el tunel sin ser root sleep 25 indica el tiempo en segundos durante el que el tunel estará activo. Cuando pase dicho tiempo, se esperará a que las conexiones existentes acaben. Para poder descargar el correo por pop3, bastará conectarnos al puerto 1234 local. Los datos se enviarán y recibirán de forma cifrada a través del túnel. Para más información sobre el tema, podeis consultar el artículo que hizo Pablo Garaizar: http://130.206.100.150/docs/articulo.ssh.html 5 de 6 10/11/09 17:41
  • 6. openSSH http://www.splitcc.net/Documents/TutorialOpenS... Alvaro Marin, 2004. Algunos derechos reservados. http://creativecommons.org/licenses/by-nc-sa/2.0/ 6 de 6 10/11/09 17:41