-
Acceso Remoto con SSH
Escrito: Septiembre 4th, 2008 No hay comentariosSH (Secure Shell)
SSH (Secure SHell) -intérprete de comandos seguro- es el nombre de un protocolo y del programa que lo implementa, y sirve para acceder a máquinas remotas a través de una red. Permite manejar por completo la computadora mediante un intérprete de comandos, y también puede redirigir el tráfico de X para poder ejecutar programas gráficos si tenemos un Servidor X (en sistemas Unix) corriendo.
Empezaremos instalando el servicio.
sudo aptitude install ssh
Una vez instalado, el demonio se ejecutará automáticamente. Igual que con cualquier otro proceso este se puede parar, arrancar o reiniciar cuando queramos.
sudo /etc/init.d/ssh stop
sudo /etc/init.d/ssh start
sudo /etc/init.d/ssh restart
En este momento y con los parámetros por defecto, el servicio esta listo para ser usado, pero es más que recomendable hacer unos cambios para reforzar nuestra seguridad.
Yo los deje por defecto y en una semana recibí prácticamente a diario ataques provenientes de china y malasia en su mayoría, en los que mediante fuerza bruta intentaban acceder. Como se detecta? pues es simple un simple vistazo a los logs es más que suficientes.
cat /var/log/auth.log |grep ssh
Empezaremos modificando el fichero de configuración.
sudo vim /etc/ssh/sshd_config
Lo primero y mas importante es cambiar el puerto que usa por defecto, de esta forma nos quitaremos la gran mayoría de intentos de intrusión. Esto no nos asegura invulnerabilidad, pero si que hace más difícil la localización del servicio por parte de scripts que atacan dicho puerto.
Buscamos donde pone Port 22 y ponemos el puerto que queramos.
Port 2222
Si salís a internet mediante un router, como es mi caso, lo que haremos será dejar el puerto 22 en el fichero de configuración y redirigir la entrada del puerto 2222 del router hasta el puerto 22 de mi máquina (el mismo proceso que con los puertos del emule, a que ahora si!!). De esta forma, en la Lan el puerto ssh es el 22, pero de cara al exterior es el 2222.
Comprobaremos que el Protocolo este a 2, en caso contrario lo pondremos (el protocolo 1 está en desuso).
Protocol 2
En el apartado Authentication haremos los siguientes cambios.
Tiempo que emplearemos en hacer el login, no poner más de 30, un valor entre 15 y 30 está bien.
LoginGraceTime 30
Muy importante!! No permitiremos que el root pueda hacer login (esto fue lo que evito que los ataques que recibí consiguieran su objetivo).
PermitRootLogin no
También podemos poner el número máximo de reintentos para autentificarse.
MaxAuthTries 3
Agregar al final.
ClientAliveInternal 300
Bueno con esto ya tenemos bastante, guardamos y cerramos, quedándonos ya un servidor ssh más que seguro. Para que los cambios tengan efecto, hace falta reiniciar el servidor.
sudo /etc/init.d/ssh restart
Ingreso a la PC Remota
Bueno, ahora empieza la acción, yo voy a poner los ejemplos de manera local (lan) pero teneis que tener en cuenta que es indiferente y se realiza de la misma manera conectar dos equipos en lan que a través de internet.
ssh 192.168.0.25 (Ingresa como root y al puerto 22)
ssh usuario@192.168.0.25 (Ingresa al puerto 22)
ssh -p puerto usuario@192.168.0.25 (Define el usuario y puerto de acceso)
Luego de conectarse debe cambiar nombre de la PC y reiniciarlo:
- Edita el archivo /etc/hostname y coloca el nombre del equipo que deseas.
- Luego, edita /etc/hosts y asegúrate de que 127.0.0.1 haga referencia a tu equipo:
127.0.0.1 localhost
127.0.1.1 nombre_de_tu_equipo- Reinicia y listo.
# init 6
Configurar el Mensaje de Bienvenida
# gedit /var/run/motd
Ejecucion de Aplicaciones en Modo Grafico
Tenemos que volver al archivo de configuración y indicar de manera expresa que queremos el modo gráfico, por lo que editaremos y buscaremos y modificaremos o añadiremos lo siguiente.
Forwarding yes
ForwardX11Trusted yes
ejecutamos ssh con la opción -X
# ssh -X 192.168.0.25
# nautilus (Abrira Nautilus)
Copiar ficheros
Una vez conectados con el equipo remoto, puede ser interesante querer pasar ficheros del equipo remoto a nuestro equipo, esto lo realizamos con el comando scp.
scp curriculum.odt edgar@192.168.0.25:~/Escritorio/curri.odt
o un directorio entero con
scp -r Exemples edgar@192.168.0.25:~/Escritorio/exemp
Que es todo esto.
-
curriculum.odt o Exemples, es el archivo o directorio que queremos copiar.
-
banyut@192.168.1.100 es el usuario que hace la conexión y la maquina donde queremos guardar el fichero o directorio.
-
:ruta, es la ruta donde lo copiaremos.
El comando scp es independiente de ssh, lo podemos ejecutar aunque no hayamos establecido una conexión ssh.
scp edgar@192.168.0.25:~/Examples/oo-trig.xls ~/Escritorio/oo-trig.xls
Copiamos el archivo ~/Examples/oo-trig.xls de la maquina remota 192.168.1.101 en nuestro escritorio ~/Escritorio/oo-trig.xls.
Bueno, no esta mal no, pensar que aquí no se acaba todo, con scp, podríamos copiar un archivo de un ordenador remoto a otro también remoto.
Daremos un paso más, ssh no se limita solo a la consola, abrir el nautilus (alt+F2 y escribir nautilus) y en la ruta poner.
ssh://edgar@192.168.0.25
Je je je, como se os ha quedado el cuerpo. En este caso si el puerto no fuera el 22, tendríais que indicarlo de la siguiente manera.
ssh://banyut@192.168.1.101:2222
Donde 2222 es el puerto que hemos establecido para nuestro ssh. O también ir directamente a un directorio en concreto.
ssh://banyut@192.168.1.101:2222/home/banyut/Escritorio
Podemos montar nuestra conexión ssh como si de un disco duro se tratase, esto lo haremos mediante sshfs.
sudo aptitude install sshfs fuse-utils
Tenemos que cargar el modulo fuse, para ello teclearemos
sudo modprobe fuse
Si queremos que se carge al inicio lo tenemos que meter en /etc/modules
sudo echo fuse >> /etc/modules
Y por último nuestro usuario tiene que pertenecer al grupo fuse, por lo que añadiremos a el.
sudo addgroup banyut fuse
Pues ya lo tenemos todo listo, ahora solo nos queda montar nuestra conexión.
mkdir /home/banyut/escritorioRemoto
sshfs edgar@192.168.0.25:/home/edgar/Escritorio /home/juan/escritorioRemoto
y ya tenemos nuestro conexión encriptada totalmente montada. para desmontarla lo podemos hacer de la manera habitual.
sudo umount /home/juan/escritorioRemoto
Leave a reply



Comentarios