servidor SSH bajo debian

Gestión remota usando SSH

Lo primeros que deberemos de hacer sera instalarnos el paquete en el servidor y el cliente :

Por seguridad se suele no permitir la conexión del root al servidor; para ello, se debe modificar el archivo /etc/ssh/sshd_config, y se pone la siguiente opción:

Y reiniciamos el servicio para que se apliquen los cambios :

Conectarse al servidor ssh

Vamos a instalarnos el cliente ssh, para ello:

Para acceder desde el cliente al servidor tecleamos:

Nos abríamos conectado remotamente

Ejecución remota de aplicaciones gráficas

Mediante ssh existe la posibilidad de ejecutar aplicaciones gráficas en el servidor y manejarlas y visualizarlas en el cliente. El servidor ssh deberá tener activada la redirección del protocolo X, es decir, deberá tener el siguiente parámetro en el archivo de configuración /etc/ssh/sshd_config:

En mi caso ya estaba habilitado , si no lo tuviésemos lo cambiamos y reiniciamos el servicio para que se apliquen los cambios . Ahora deberemos de conectarnos con el parámetro -X :

y posteriormente podemos ejecutar cualquier aplicación gráfica, por ejemplo, gedit:

Se nos abrirá el programa gráficamente :

Ahora vemos en el servidor que se ha creado :

Transferir ficheros con ssh

Para copiar un fichero desde el cliente al servidor introducimos el siguiente comando :

Ahora vamos a comprobar si se ha copiado al servidor :

Acceso remoto por cifrado asimetricó

Configuracion del acceso por claves

Vamos a generar nuestras claves desde nuestro cliente :

Ahora vamos a añadirla a nuestro servidor :

Una vez echo esto deshabilitamos el acceso con contraseña en el servidor editando el archivo /etc/ssh/sshd_config :

A continuación solo debemos reiniciar el servicio y al volver a registrarnos, ya estaremos utilizando clave publica :

Si nos intentamos registrar con usuario el cual no tenemos la clave publica nos dirá lo siguiente :

Cambio de puerto

Ahora vamos a editar el fichero de configuración para indicar el puerto :

Y reiniciaremos el servicio :

Ahora si nos intentamos conectar como lo hemos hecho anterior mente , nos dara el siguiente error :

Para conectarnos deberemos de especificar el puerto por el cual nos conectamos con -p :

Conectarnos con un cliente de acceso remoto usando túneles

Usaremos kitty , cuando lo abramos en la primera pantalla introducimos la ip del servidor y el puerto que haya configurado en el servidor para el ssh en mi caso 2222

Ahora añadimos el puerto por el cual nos conectaremos usando el túnel y después la ip seguida de dos puntos y el mismo puerto .

Ahora introducimos nuestro usuario y contraseña y nos habremos conectado :

Si queremos hacer lo mismo pero usando una clave publica desde windows , pulsamos windows +r y escribimos lo siguiente :

Y generamos las claves publicas :

Ahora vamos a la ruta que lo hemos guardado copiamos la clave publica y la introducimos en el servidor , por comodidad la he copiado desde el cliente usando ssh.

Una vez añadida guardamos el archivo :

Vamos a desactivar la autenticación por contraseña y reiniciamos el servicio

Ahora desde el kitty deberemos de irnos al apartado ssh>auth , le damos a browse y seleccionamos nuestra clave privada , que deberá tener la extension .ppk . Yo la copie en otro directorio por comodidad para las pruebas .

Y nos conectamos :

Aquí hemos combinado conectarnos con kitty usando un túnel + otro puerto + clave publica .

VNCserver

Lo instalamos con el siguiente comando :

A continuación configuramos las credenciales de configuración para administradores y usuarios de acceso con el siguiente comando :

Ahora vamos al cliente y introducimos la ip seguida del puerto por dos puntos, si no lo sabemos lo podemos mirar con :

Nos saldrá una advertencia al no estar cifrada la comunicación , le damos a continuar y introducimos la contraseña de acceso , que hayamos puesto anteriormente :

Como no tenemos entrono grafico en el servidor no nos mostrara imagen pero podemos ver que hemos establecido conexión tanto en windows como en Linux :

Gestión de páginas web mediante ssh

1.Una vez creado los dos sitio virtuales deseamos establecer una conexión segura a cada uno de nuestros sitios, para ello debemos establecer un túnel ssh de la misma manera que lo hemos establecido para establecer una conexión remota por vnc .

2.Crear un túnel desde el cliente ssh para que el acceso a la sección privada de la web de departamentos se establezca por el puerto 9999

3.Con ambos túneles establecidos comprobar que el acceso a la web iesgn.org se puede realizar sin problemas por el puerto 80

Solo he conseguido hacer a mi pagina por defecto , para eso hacemos un túnel con kitty por ejemplo:

Ahora añadimos los puertos origen y destino del puerto :

Ahora nos registramos con nuestro usuario :

Una vez establecido el túnel introducimos en el navegador localhost:8888 :

Y así hemos establecido una conexión segura web .

Si cerramos el túnel perderemos la conexión :