jueves, 15 de octubre de 2009

Instalar servidor SSH en linux

ubuntu / debian

Para instalar un servidor SSH procederemos:

Instalar openssh a la máquina cliente:

# aptitude install openssh-server



Una vez instalado pasaremos a configurarlo:

Hacemos una copia de seguridad del fichero de configuración ssh:

# cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak

Editamos el fichero de configuración:

# nano /etc/ssh/sshd_config

Cambiaremos en el fichero las siguientes líneas y las dejaremos así:

Si queremos cambiar el puerto de escucha por defecto de nuestro servidor SSH (por defecto viene el 22, podemos cambiarlo por ejemplo por el 4558):

Port 4558

Si queremos cambiar el tiempo que tiene el usuario para loguearse (p.ej: 30 seg.):

LoginGraceTime 30

Por seguridad, deshabilitaremos los login con el usuario root:

PermitRootLogin no

Para restringuir  el número de logins fallidos por conexión:

MaxAuthTries 3

Para definir el número de conexiones ssh simultáneas por usuario:

MaxStartups 3


Si queremos que nuestro servidor ssh tenga un banner cuando nos conectemos (eliminaremos la almohadilla (#)):

Banner /etc/issue.net

Para restringuir acceso solo a usuarios autorizados, por ejemplo tuusuario, añadiremos al final del fichero:

AllowUsers tuusuario


(se entiende que tuusuario será el nombre de tuusuario o del usuario que quieras que tenga acceso, p.ejemplo: lincat)

Ahora guardaremos el fichero Ctrl > o y saldremos Ctrl > x

Si habiamos elegido que nuestro servidor nos mostrara un banner al conectar editaremos el fichero /etc/issue.net y le pondremos el contenido que queremos que salga al banner:

# nano /etc/issue.net

Guardaremos los cambios hechos al fichero.

Si queremos que nuestro servidor nos muestre un mensaje de bienvenida editaremos el contenido del fichero /etc/motd :

# nano /etc/motd

Guardaremos los cambios hechos al fichero.

Reiniciaremos el servidor ssh para que cargue la nueva configuración:

# service ssh restart

ó

# /etc/init.d/ssh restart


Ahora provaremos de acceder al servidor:

Acceso desde red interna:

Necesitaremos saber la ip interna de nuestro servidor, para ello ejecutaremos en la máquina servidor:

# ifconfig

Nos mostrara un mensaje similar a:

eth0   Link encap:Ethernet  HWaddr xx:xx:xx:xx:xx:xx 
          inet addr:192.168.1.6  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: 111111111111111 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1


Dónde eth0 en este caso es mi interfaz de red, y tiene una ip interna 192.168.1.6

Iremos a la máquina que se conectara al servidor y provamos:

ssh tuusuario@192.168.1.6 -p 4558

Dependera de la configuración que le hayas asignado, dónde tuusuario es el usuario que existe en la máquina servidor y que además tiene acceso permitido por la configuración del ssh. La ip 192.168.1.6 puede variar (casi seguro), dónde se pondrá la obtenida por ifconfig. El puerto 4558 será el que esté a la configuración anteriormente explicada.

Acceso desde Internet:

Tendremos que saber cual es la ip externa del sevidor, p.ej:

lynx www.cualesmiip.es

O visitando www.cualesmiip.es

Lo único que cambiara ahora será:

ssh tuusuario@ip_externa -p 4558


Nota: Tener un rotuer/firewall configurado, puede darnos problemas a la hora de acceder por el puerto ssh. Más adelante escribire como configurar iptables y daré referencias a la gestión de puertos del router.

No hay comentarios:

Publicar un comentario