-- Leo's gemini proxy
-- Connecting to gmi.osiux.com:1965...
-- Connected
-- Sending request
-- Meta line: 20 text/gemini;lang=es_AR
AUTHOR: Osiris Alejandro Gomez
EMAIL: osiux@osiux.com
DATE: 2023-05-20 11:05
[1]
`ssh` permite la ejecución remota de un intérprete de comandos como `bash`
Más información en: https://es.wikipedia.gmi/wiki/Ssh[2]
**Es seguro** porque cifra la conexión y nadie puede ver qué estamos haciendo
**Es rápido** porque sólo envía texto, por ello envía menos datos que si fuera una imagen de pantalla como programas como `vnc`
**Es versátil** porque permite interactuar con otros comandos obteniendo control total de un sistema de manera remota.
*computadora remota*
**servidor SSH**
se instala haciendo:
sudo apt-get install openssh-server
**conexión a la red** (si es internet mejor!)
**puerto 22 abierto** (OjO con el firewall)
que la computadora esté encendida! (aunque más adelante veremos cómo encender remotamente una computadora)
*computadora local*
**cliente ssh** * en todos los linux **ya está instalado**!
en otros sistemas pod usar PuTTY[3]
https://es.wikipedia.gmi/wiki/PuTTY[4]
**dirección IP** de computadora remota
**usuario válido** de computadora remota
**contraseña** del usuario de la computadora remota
que el **puerto 22 de salida esté habilitado** en el firewall (aunque hay trucos para saltearlo)
En una terminal hay que escribir el comando `ssh` luego el usuario remoto, por ejemplo: **pepe** y separado por un **@** arroba la dirección **IP** o el dominio (ej: `192.168.0.9` ó `osiux.com`)
ssh pepe@192.168.0.9
Siempre que nos conectamos por primera vez a un servidor SSH, nos aparece un mensaje para que confirmemos la autenticidad de la computadora a la que estamos conectándonos, por ahora somos confiados y le decimos que sí, tipeando **yes**
osiris@osiux.com:/home/osiris# ssh 192.168.0.9 The authenticity of host 'lab2 (192.168.0.9)' can't be established. RSA key fingerprint is e1:92:a3:54:95:e6:67:b8:89:80:11:02:93:f4:05:36. Are you sure you want to continue connecting (yes/no)?
Las próximas veces este paso no es necesario.
Luego ingresamos la contraseña (password en inglés) y si es correcta, ingresamos al sistema remoto!
Ahora podemos hacer todo lo que el usuario que usamos para conectarnos (en este caso **pepe**) pueda hacer!
Ahora bien, resulta que este sistema remoto cuenta con un administrador, que ve que alguien que no es él, ingresó al sistema con su usuario! Entonces va a matar todos los procesos del usuario **pepe**, a fin de dejarnos afuera del sistema.
Para esto, utiliza la herramienta `htop` que muestra todos los procesos y presionando la tecla `F4` nos permite filtrar por la palabra **pepe** y luego presionando `F9` y eligiendo `SIGKILL` termina cada uno de los procesos del usuario **pepe**.
También se puede hacer desde la consola sin usar `htop`
root@lab2:/# pkill -u pepe
Como lo dejamos afuera a **pepe** matando sus procesos, ahora está enojado! Entonces nos empieza a crear **carpetas** en el **Escritorio** de la siguiente manera:
pepe@lab2:~/$ cd Escritorio pepe@lab2:~/$ mkdir aguante pepe@lab2:~/$ mkdir la pepe@lab2:~/$ mkdir academia
Si sigue así en algún momento nos va a llenar el **Escritorio**
Matar los procesos activos no es suficiente, debemos eliminar al usuario, para esto hacemos:
root@lab2:/# deluser pepe
Listo! ahora **pepe** no puede ingresar a nuestro sistema
Resulta que **pepe** cuando ingresó la primera vez, fue astuto y cambió la contraseña de **root**. ¿Y cómo pudo hacerlo? es simple, el usuario **pepe** tenía permisos para usar **sudo** que permite convertirse en **root** (y ser el **DIOS** del sistema). Para cambiar la password hizo lo siguiente:
pepe@lab2:~/$ sudo -s [sudo] password for pepe: root@lab2:/# root@lab2:/# passwd Cambiando la contraseña de root. Introduzca la nueva contraseña de UNIX: Vuelva a escribir la nueva contraseña de UNIX:
Si un intruso logró obtener cuenta **root**, estamos fritos! tiene completo control del sistema y sin que nos demos cuenta, salvo que haga algo muy evidente como borrar todo el disco, va a pasar desapercibido. Qué podemos hacer, para evitar esto?
Utilizar contraseñas fuertes, usando `md5` por ejemplo:
echo -n maradona | md5sum 8b123b7a7cf86f5aa9424d1f379384d8
Mucho más fácil de recordar, frases de paso:
Se te escapo la tortuga!
NO usar la misma contraseña en todos lados!
NO usar **sudo**, loguearse como **root** sólo para tareas administrativas
NO permitir el login del usuario **root**
Sólo permitir login por *SSH* desde algunas IPs
OjO: aunque quitando el cable de red, basta para desconectar a los intrusos, hoy día casi que vuelve inservible una compu desconectada del mundo!
Si bien usamos el ejemplo de un intruso, lo más probable es que nosotros seamos root en muchos otros sistemas, como la compu del trabajo, la de casa, la de un amigo/a, etc. Y poder administrar varios sistemas remotos usando *SSH* u una sola terminal es posible.
Para esto instalamos **Terminator**
sudo apt-get install terminator
Iniciamos **Terminator** y presionando **CTRL-SHIFT-E** y **CTRL-SHIFT-O** podemos dividir la pantalla vertical y horizontalmente tantas veces como sea necesario, obteniendo muchas terminales dentro de una sola y eligiendo la opción **retransmitir a todas** podemos tipear una sola vez y que ese comando vaya a todas las terminales conectadas! :-D
`2023-05-20 11:43`[5] agregar DESCRIPTION, KEYWORDS, OpenGraph e imagen en SSH para gobernar el mundo!
`2019-04-18 00:01`[6] Corregir identación header #+INCLUDE:
`2015-07-03 04:31`[7] @ 00:05 hs - elimino #+OPTIONS: de todos los archivos excepto header.gmi
`2014-04-22 11:35`[8] @ 00:34 hs - Agrego timestamp:nil
`2013-04-24 08:04`[9] @ 01:50 hs - migro a org 8.0
`2012-12-15 22:31`[10] @ 04:00 hs - convert old blog in rST to org
-- Response ended
-- Page fetched on Fri May 17 03:16:09 2024