SSH bajo debian
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 :

