Académique Documents
Professionnel Documents
Culture Documents
Esta es la primera parte del tutorial, con la instalacin y configuracin bsicas. Luego vendr una segunda
parte con "Cosas guapas que hacer con SSH".
SSH, siglas de Secure SHell, es un protocolo que nos permite realizar una conexin segura y encriptada a la
Shell del equipo que actua como servidor.
Esto nos permitir administrar nuestros servidores de forma remota y segura, as como enrutar el trafico a
travs de tneles SSH para todo tipo de conexiones (VNC, FTP, Samba...) y as hacerlas ms seguras de lo que
son de por si.
Pues bien, vamor por partes:
1. Instalacin
Fcil y tpico:
2. Configuracin
Cuando instalamos SSH viene con una configuracin por defecto, una configuracin standard que como suele
pasar, no es nada recomendable dejar tal cual. Aqui veremos algunos parametros interesantes de modificar
para aumentar la seguridad.
Antes que nada abrimos el archivo de consifuracin de SSH con un editor, por ejemplo VIM.
port 8756
PROTOCOL:
Hay dos versiones del protocolo SSH, y la primera ya est en desuso. En este apartado simplemente nos
tenemos que asegurar que estamos utilizando el protocolo 2, as pues la linea correspondiente debe figurar
as:
Protocol 2
LOGINGRACETIME:
Aqui le podemos indicar el tiempo que tiene un usuario para hacer login correctamente antes de que se le
cierre automticamente la sesin. Yo normalmente lo pongo a 15 segundos. En principio lo podis poner como
queris (cuanto ms bajo mejor) teniendo en cuenta que os de tiempo de hacer login si conectis a travs de
conexiones lentas.
Si, me ha pasado de configurarlo "to flipao" a 5 segundos y luego no hay manera de acceder en remoto a
traves de internet... As que mejor:
LoginGraceTime 20
MAXAUTHTRIES:
Esta opcin nos permite introducir un numero mximo de intentos de login antes de que el servidor le de una
patada y cierre la conexin. Esto nos permitir aumentar nuestras defensas ante posibles ataques por fuerza
bruta, ya sean scripts automatizados o algn hacker juguetn. Que valor poner ya depende de cada uno. Para
que sea realmente efectivo yo no pondra ms de 2 intentos.
MaxAuthTries 2
MAXSTARTUPS:
Esta opcin nos permite indicar cuantas sesiones puede haber conectadas simultneamente por SSH. Esto ya
depende de las necesidades de cada uno, si por ejemplo solo tienes que entrar t, puedes poner "2", de
manera que si una sesin se te queda colgada tengas la posibilidad de entrar, y no te eche continuamente
porque se ha alcanzado el limite de conexiones.
MaxStartups 2
PERMITROOTLOGIN:
Esta opcin como bien indica su nombre, sirve para indicar si se permite o no el acceso remoto al usuario root.
Una vez superadas las barreras que hemos puesto hasta ahora, un atacante necesitara saber un usuario y
contrasea para entrar. Si permitimos el acceso al usuario root, le hacemos la mitad del trabajo, descubrir el
nombre de usuario. As pues, para mayor seguridad:
PermitRootLogin no
ALLOWUSERS:
Ahora viene cuando lo matan. Con esta opcin no solo podemos decir que usuarios tendrn acceso, sino
tambin desde que IP podrn conectar (descartando las otras) sea pblica o privada. En el ejemplo estaramos
dando acceso al usuario "admin" desde "cualquier lugar", al usuario "local" solamente si conecta desde la IP
192.168.1.151 (LAN) y al usuario "remote" solamente desde la ip 85.46.127.23 (WAN)
Obviamente no es necesaria una contrasea tan larga, pero cunto ms mejor, de entrada recomendara que
fuese de no menos de 7 caracteres y que contenga maysculas, minsculas y nmeros.
Finalmente ejecutamos la siguiente orden para reiniciar el servidor SSH y aplicar los cambios.
SEGUNDA OPCION
El servidor de shell seguro o SSH (Secure SHell) es un servicio muy similar al servicio telnet ya que
permite que un usuario acceda de forma remota a un sistema Linux pero con la particularidad de
que, al contrario que telnet, las comunicaciones entre el cliente y servidor viajan cifradas desde el
primer momento de forma que si un usuario malintencionado intercepta los paquetes de datos
entre el cliente y el servidor, ser muy dificil que pueda extraer la informacin ya que se utilizan
sofisticados algoritmos de cifrado.
La popularidad de ssh ha llegado a tal punto que el servicio telnet prcticamente no se utiliza. Se
recomienda
no
utilizar
nunca
telnet
utilizar
ssh
en
su
lugar.
Para que un usuario se conecte a un sistema mediante ssh, deber disponer de un cliente ssh.
Durante el proceso de autentificacin, cuando el usuario proporciona el nombre y la contrasea, se
utiliza cifrado asimtrico pero en el resto de la sesin se utiliza cifrado simtrico por su menor
necesidad
de
procesamiento.
Para instalar el servidor y el cliente ssh debemos instalar mediante apt-get el paquete ssh que
contiene tanto la aplicacin servidora como la aplicacin cliente:
//
Instalacin
de
servidor
ssh
cliente
ssh
Iniciar
Reiniciar
/etc/init.d/ssh
el
servidor
ssh
restart
//
Parar
el
servidor
ssh
servicios
al
iniciar
el
sistema.
Conexin
por
jessica@cliente:~$
The
authenticity
RSA
Are
ssh
of
key
you
Warning:
host
'192.168.1.239
fingerprint
is
sure
you
Permanently
Password:
ssh
want
added
//
192.168.1.239
(192.168.1.239)'
can't
be
established.
51:70:3f:9c:ac:49:52:74:88:f5:45:a6:ae:f0:9c:8a.
to
'192.168.1.239'
Introducir
continue
connecting
(RSA)
to
the
list
of
contrasea
(yes/no)?
yes
known
hosts.
de
jessica
Conexin
por
jessica@cliente:~$
Password:
//
ssh
como
ssh
Introducir
contrasea
otro
usuario
miguel@192.168.1.239
de
miguel
en
el
servidor
Desde PCs con Windows es posible conectarse por ssh a servidores Linux mediante el programa
Putty. Se trata de un cliente ssh para Windows que permite acceder en modo texto al sistema
Linux
desde
sistemas
Windows.
Servicios adicionales
El paquete ssh no solamente nos proporciona conexin remota sino que proporciona otros
servicios como ejecucin remota de aplicaciones grficas, servidor ftp seguro o copia remota de
archivos.
El resultado ser que desde nuestro Linux sin gimp estamos manejando el gimp que se est
ejecutando en el PC remoto:
Ejecucin
remota
de
la
aplicacin
grfica
El
Gimp
Desde PCs con Windows es posible conectarse por ssh a servidores Linux de forma grfica
mediante Cygwin. Se trata de un conjunto de programas libres que simulan un 'Unix para Windows'
con servidor grfico X y cliente ssh para Windows entre otras cosas, que permite acceder en modo
grfico al sistema Linux desde sistemas Windows. Otros servidores X gratuitos para Windows son
Xming
Mocha.
El cliente ftp seguro es el comando sftp que funciona igual que el comando ftp. Tambin podemos
utilizarlo desde el navegador Nautilus escribiendo sftp://nombre-del-usuario@nombre-del-servidor
por ejemplo en la url: sftp://profesor@miservidor
Desde PCs con Windows es posible utilizar el programa WinSCP que permite copiar archivos
desde y hacia el servidor. Se trata de un cliente que utiliza el protocolo ssh para acceder al sistema
de archivos del servidor Linux desde sistemas Windows.