Ruta de aprendizaje · SSH y VPS
Nueve clases cortas para que te conectes a tu VPS desde la terminal, entiendas las claves SSH y resuelvas por tu cuenta los bloqueos más comunes, sin esperar al soporte técnico por cada ajuste.
Clases
Entiende qué ocurre en una conexión remota y reconoce los 4 elementos que siempre necesita.
Comprueba si SSH ya está en tu Windows y entra a tu VPS por primera vez con contraseña.
Los comandos cotidianos para ubicarte, trabajar con carpetas y salir de forma segura.
Por qué existen dos mitades de una clave, dónde se guardan y la regla de oro que nunca se rompe.
El error más común de quienes copian un comando del lugar equivocado, y cómo no volver a caer en él.
El paso a paso para generar una clave nueva, tuya, en vez de depender solo de una contraseña.
La secuencia completa: desde la clave en tu PC hasta conectarte sin volver a escribir una contraseña.
Deja de escribir la IP y la ruta de la clave cada vez; conéctate solo con un alias.
"Permission denied", conexión rechazada, clave antigua: el diagnóstico de cada uno.
Ruta de aprendizaje · Clase 1
Al final de esta lección, reconocerás, en cualquier comando de conexión remota, los 4 elementos que siempre debe tener, sin memorizar ningún código.
Hoy, cuando algo se bloquea en la automatización que se ejecuta en tu VPS, dependes de enviarle un mensaje al soporte y esperar. Las próximas clases resuelven eso, pero antes necesitas entender qué sucede realmente cuando alguien «entra» en un servidor. Sin esta base, cualquier comando se convierte en algo que hay que memorizar.
↓ desplázate para estudiar
Una VPS es una computadora que permanece encendida las 24 horas en un centro de datos, ejecutando la automatización de tu negocio. El SSH es el corredor privado que conecta tu computadora directamente con ese servidor, sin tener que viajar hasta el centro de datos.
Después de que Marta, dueña de un salón de belleza, se conecta por SSH a la VPS donde se ejecuta la confirmación automática de citas por WhatsApp, todo lo que escribe empieza a ejecutarse allí, ya no en su laptop.
Con SSH entras en la VPS y resuelves con tus propias manos lo que hoy requiere soporte: reiniciar un servicio bloqueado, revisar por qué no se envió un mensaje, ajustar un archivo o simplemente confirmar que todo funciona.
Ricardo, dueño de una tienda de ropa, usa una automatización que publica las novedades de la colección por sí sola. Cuando deja de publicar, SSH le permite entrar a la VPS y ver qué pasó en ese mismo minuto, en vez de esperar a que alguien esté disponible.
Toda conexión por SSH —la de Marta, la de Ricardo, la de cualquier persona— siempre depende de los mismos 4 elementos, ni uno más ni uno menos:
Ponte a prueba
Si cambias de VPS (por ejemplo, usas Hostinger en vez de AWS), ¿cuál de los 4 elementos cambia?
La primera vez, un comando de conexión parece una fila de símbolos extraños. Después de esta clase, se convierte simplemente en esto: cliente, servidor, IP y autenticación, en un orden fijo; nada más.
Marta miraba ssh root@123.123.123.123 como un enigma. Hoy ya sabe: es su cliente (el ssh) autenticando a un usuario (root) en una dirección (123.123.123.123) — los 4 elementos, en el mismo orden de siempre.
Antes
Un comando de conexión era un bloque de texto para copiar sin entender, con la esperanza de que funcionara.
Después
El mismo comando se convierte en 4 piezas reconocibles, y sabes cuál ajustar cuando algo cambia.
Practica ahora 0/2 hecho
Lee el minicCaso de abajo y señala los 4 elementos — ~8 min.
No hay nada que puedas romper aquí: solo es lectura y razonamiento, sin tocar ninguna VPS real.
Minicaso
Marta quiere entrar en la VPS donde se ejecuta su automatización de WhatsApp. Abre la terminal de su propia laptop y escribe ssh admin@45.77.12.9. Aparece un aviso que pide la contraseña; ella la escribe y entra. Ricardo, en la tienda de ropa, hace lo mismo, pero en su VPS la dirección es otra y el usuario también.
IP: 45.77.12.9 — la dirección de la VPS de Marta. Usuario: admin — quién se está autenticando. El cliente es la terminal de su laptop; el servidor es el servicio SSH activo dentro de la VPS. En el caso de Ricardo, la IP y el usuario cambian porque son de otra VPS, pero los 4 roles (cliente, servidor, IP, autenticación) siguen siendo los mismos, porque así funciona siempre SSH.
Acabas de aprender a reconocer los 4 elementos de cualquier conexión SSH: la base que se usa en todas las próximas clases.
Resumen
Ruta de aprendizaje · Clase 2
Al final de esta lección, comprobarás si SSH ya está listo en tu Windows y te conectarás por primera vez a tu propia VPS usando una contraseña.
Toda la teoría de la clase 1 solo se vuelve útil cuando recorres el pasillo de verdad, una vez. Es la diferencia entre saber qué es una llave de auto y sentarte en el asiento del conductor.
↓ desplázate para estudiar
Esta es una receta sencilla: abres el terminal (CMD o PowerShell), escribe un comando de comprobación y lee la respuesta.
Marta abre el menú Inicio, escribe "cmd", abre el Símbolo del sistema y escribe ssh -V. Si aparece algo como OpenSSH_for_Windows, el SSH ya está instalado: ella no necesita hacer nada más en esta etapa.
ssh -V
comando correcto
$ ssh -V
OpenSSH_for_Windows_9.5, LibreSSL 3.9.2
error común
$ ssh -v
OpenSSH_for_Windows_9.5, LibreSSL 3.9.2 debug1: Reading configuration data ... (-v minúsculo liga o modo detalhado — não é isto que confirma a versão)
Si no se reconoce el comando, Windows 10/11 tiene SSH listo para activar, sin descargar nada externo: Configurações → Apps → Recursos opcionais → Adicionar recurso → OpenSSH Client.
A Ricardo le pasó esto en la tienda: el comando dio error la primera vez, activó la función siguiendo la ruta de arriba, volvió a abrir la terminal y el ssh -V funcionó.
Error común
Probar el comando sin cerrar y volver a abrir la terminal después de activar la función. Windows solo reconoce SSH en una ventana nueva: cierra la terminal anterior y abre otra antes de volver a probar.
Con SSH listo, la conexión en sí es una línea: ssh usuário@IP_DA_VPS. Marta escribe ssh root@123.123.123.123 (la IP siempre es la de su VPS, no este ejemplo).
La primera vez que cualquier persona se conecta a una VPS nueva, aparece una pregunta: Are you sure you want to continue connecting?. Es la computadora confirmando que reconoces este servidor: escribe yes y Enter.
Ponte a prueba
¿Esta pregunta de confirmación aparece cada vez que te conectas o solo la primera vez con esa VPS?
Después de yes, la VPS pide la contraseña. Ricardo, la primera vez, pensó que el teclado se había bloqueado: no aparecía ninguna letra mientras escribía.
Es así a propósito: por seguridad, la contraseña nunca aparece en la pantalla, ni siquiera como puntos. Escríbela normalmente y presiona Enter: se está recibiendo, solo que no se muestra.
Lista de verificación de la primera conexión
ssh usuário@IP_DA_VPS con los datos de tu propia VPS.yes cuando se te pregunte.Practica ahora 0/3 hecho
Confirmar que SSH está instalado y entrar a tu VPS con contraseña — ~10 min.
Conectarte y mirar no cambia nada en la VPS. Si algo parece estar mal, escribe exit y sales sin haber cambiado nada.
ssh -V ssh usuario@IP_DA_VPS
Acabas de entrar en tu propia VPS por primera vez: la misma acción que Marta y Ricardo realizan cada vez que necesitan revisar algo de cerca.
Resumen
yes) — solo la primera vez.Ruta de aprendizaje · Clase 3
Al final de esta lección, sabrás ubicarte dentro de tu VPS, desplazarte entre carpetas, consultar información básica y salir de forma segura.
Después de entrar (clase 2), el primer susto para quien nunca ha usado la terminal es no saber dónde está ni qué hacer a continuación. Estos 5 comandos resuelven el 90% de los casos de «estoy perdido».
↓ desplázate para estudiar
Al entrar, puedes confirmar dos cosas: dónde estás y qué hay a tu alrededor. pwd muestra la ruta de la carpeta actual; ls lista los archivos y carpetas que contiene.
Marta entra en la VPS, escribe pwd y ves algo como /root — la «sala» donde llegó. Después escribe ls y ves los archivos de la automatización de WhatsApp que están guardados allí.
pwd ls
comando
$ pwd $ ls
/root automacao_whatsapp config.json logs
Para entrar en una carpeta, usa cd nome-da-pasta ("cd" para cambiar de directorio). Para volver una carpeta, cd .. — los dos puntos significan «la carpeta de arriba».
Ricardo quiere ver la carpeta de la automatización de publicaciones: escribe cd automacao, confirma con pwd, y cuando termines de revisar, escribe cd .. para volver de donde viniste.
Error común
Olvidar el espacio entre «cd» y el nombre de la carpeta, o escribir mal una letra del nombre. La terminal es muy literal: cdautomacao no funciona, y un nombre de carpeta incorrecto da «no encontrado». Compruébalo con ls el nombre exacto antes de entrar.
uname -a muestra información del sistema (qué versión de Linux está ejecutándose). En servidores basados en Ubuntu o Debian —los más comunes en VPS de automatización— sudo apt update && sudo apt upgrade -y actualiza los programas instalados.
Marta ejecuta esta actualización una vez al mes en la VPS del salón, igual que actualiza el celular: es mantenimiento preventivo, no corrige un problema específico.
uname -a sudo apt update && sudo apt upgrade -y
comando correcto
$ sudo apt update && sudo apt upgrade -y
Lendo listas de pacotes... Pronto Todos os pacotes estão atualizados.
error común
$ apt update
Permission denied (você precisa de privilégio de administrador) E: Não é possível abrir o arquivo de trava — esqueceu o "sudo" na frente
Ponte a prueba
¿Hay que ejecutar el comando de actualización cada vez que entras a la VPS?
Para salir de la VPS y volver a tu propio equipo, escribe exit y Enter. El prompt vuelve a cambiar, lo que confirma que ya no estás «dentro» del servidor.
Ricardo termina de revisar la automatización, escribe exit, y vuelve a ver el terminal de su propia laptop: señal de que cualquier comando que escriba ahora se ejecutará en la laptop, ya no en la VPS.
Lista de verificación de navegación básica
pwd — dónde estoy.ls — lo que hay aquí.cd nome / cd .. — entrar / volver a una carpeta.exit — salir de la VPS de forma segura.Practica ahora 0/2 hecho
Ejecutar los 4 comandos para localizar los archivos y salir de forma segura — ~10 min.
pwd, ls, uname -a e exit solo leen información — ninguno borra ni modifica nada. Si algo parece extraño, exit siempre te saca de ahí.
pwd ls cd nome-de-uma-pasta-que-voce-viu-no-ls cd .. exit
Acabas de aprender a moverte dentro de tu VPS sin depender de nadie para «solo echar un vistazo».
Resumen
pwd e ls muestran dónde estás y qué hay allí: siempre el primer paso.cd entra en una carpeta, cd .. vuelve — el terminal es literal con los nombres y los espacios.exit sales de la VPS de forma segura y devuelves el control a tu computadora.Ruta de aprendizaje · Clase 4
Al final de esta lección, reconocerás, dentro de la carpeta de claves de tu computadora, qué archivo es privado y cuál es público, y por qué es normal tener varias claves.
A partir de la lección 6 crearás tu propia clave. Antes de eso, necesitas entender qué es una clave SSH y dónde se guarda; si no, volverás a memorizar cada paso siguiente.
↓ desplázate para estudiar
Una clave SSH es una forma de entrar sin escribir una contraseña. Y, así como tienes llaves diferentes para la casa y el auto, es común tener una clave SSH diferente para cada servicio.
Marta tiene una clave para la VPS del salón y otra para GitHub, donde guarda el código de la automatización. Son claves separadas; cada una abre solo la puerta a la que pertenece.
En Windows, las claves se guardan en una carpeta oculta llamada .ssh, dentro de tu carpeta de usuario: C:\Users\SEU_USUARIO\.ssh\. En Linux o Mac, el mismo lugar se llama ~/.ssh/.
Ricardo encontró su carpeta en C:\Users\ricardo\.ssh\ — el mismo patrón, solo cambia el nombre de usuario de Windows de él.
.ssh es un cajón solo tuyo: cada clave que guardas allí abre una puerta específica.Dentro de .ssh puedes encontrar nombres como id_ed25519, hostinger_vps.pub, config e known_hosts. La regla para reconocerlo es simple:
.pub al final = clave privada..pub al final = clave pública.config = atajos de conexión (clase 8).known_hosts = lista de servidores ya confirmados (la pregunta "yes" de la clase 2).Ponte a prueba
Marta ve dos archivos: hostinger_vps e hostinger_vps.pub. ¿Cuál de las dos es la clave privada?
La clave pública (.pub) se puede colocar en cualquier VPS, en GitHub, en GitLab: solo sirve para «reconocer» la clave privada correspondiente, nunca para iniciar sesión por sí sola.
La clave privada nunca debe compartirse, copiarse a una nube pública ni enviarse por mensaje. Ricardo guarda la suya solo en su propia laptop, igual que lleva consigo la llave física de la tienda y nunca presta el molde para que cualquiera haga una copia.
Antes
Una sola contraseña que cualquiera puede intentar adivinar probando varias veces.
Después
Un par de claves: la pública se distribuye donde haga falta y la privada se guarda solo contigo; es imposible adivinarla probando.
Practica ahora 0/2 hecho
Lista tu carpeta .ssh y clasifica cada archivo — ~8 min.
Listar archivos solo muestra los nombres, no abre ni modifica nada dentro de ellos. Ningún riesgo.
dir %USERPROFILE%\.ssh
Acabas de aprender a reconocer, en tu propia carpeta, qué es privado y qué puedes compartir.
Resumen
.ssh de tu cuenta de usuario, en Windows, Linux o Mac..pub es privada, con .pub es pública, y la privada nunca sale de tu computadora.Ruta de aprendizaje · Clase 5
Al final de esta lección, reconocerás en qué terminal estás y evitarás el error de sintaxis más común al copiar un comando del lugar equivocado.
Windows tiene dos terminales diferentes, y un comando que funciona en una no funciona en la otra. Es la causa nº 1 de «lo copié tal cual y no funcionó»; vamos a resolverlo antes de crear tu clave, en la clase 6.
↓ desplázate para estudiar
Windows incluye dos terminales diferentes: CMD (símbolo del sistema, más antiguo) y PowerShell (más nuevo, con más funciones). Ambos abren una ventana parecida, pero entienden sintaxis diferentes para algunas cosas, como hacer referencia a la carpeta de tu usuario.
Marta abrió CMD sin darse cuenta, porque buscó "prompt" en el menú Inicio — PowerShell aparece cuando se busca "powershell". Ninguno de los dos es "el incorrecto"; simplemente son diferentes.
Ricardo estaba en CMD, en la ruta C:\Users\ricardo\projetos\testes>, e intentó ejecutar type $env:USERPROFILE\.ssh\id_ed25519.pub — un comando de PowerShell, escrito dentro de CMD.
Error común
Usar $env:USERPROFILE dentro del CMD (o %USERPROFILE% dentro de PowerShell). El error aparece como algo parecido a «la sintaxis del nombre del archivo... no es correcta», porque $env:USERPROFILE es sintaxis de PowerShell, y CMD no la entiende.
La regla es: en CMD, la carpeta de tu usuario se escribe %USERPROFILE%; en PowerShell, se escribe $env:USERPROFILE. Es el mismo lugar, solo con una "palabra" diferente para cada terminal.
Marta aprendió a mirar el título de la ventana o el propio prompt: si aparece solo una ruta sencilla como C:\Users\marta>, suele ser CMD; si aparece PS C:\Users\marta> con «PS» al frente, es PowerShell.
A partir de ahora, todo comando que incluya %USERPROFILE% o $env:USERPROFILE en esta ruta indica para cuál de los dos terminales sirve; compruébalo antes de pegarlo. Fue exactamente ese hábito el que evitó que Marta repitiera el mismo error de Ricardo.
Lista de verificación rápida
%USERPROFILE%.$env:USERPROFILE.Practica ahora 0/2 hecho
Ejecutar la misma solicitud en las dos terminales, cada una con su sintaxis — ~8 min.
Solo estamos enumerando el contenido de una carpeta; ninguno de los dos comandos modifica nada.
REM no CMD: dir %USERPROFILE%\.ssh # no PowerShell: dir $env:USERPROFILE\.ssh
Acabas de aprender a reconocer, antes de escribir, qué sintaxis espera cada terminal.
Resumen
$env:USERPROFILE en el CMD, o %USERPROFILE% en PowerShell.Ruta de aprendizaje · Clase 6
Al final de esta lección, tendrás tu propia clave SSH, creada por ti y lista para instalarla en tu VPS en la próxima lección.
Hasta aquí solo has reconocido claves existentes. Ahora te toca generar la primera: el paso que te permite dejar de escribir una contraseña en cada conexión.
↓ desplázate para estudiar
Antes de sospechar de la clave en sí, fíjate en cómo se ve una clave pública: un texto largo que empieza con ssh-ed25519. En CMD, type muestra el contenido de un archivo de texto.
Marta ya tiene la clave id_ed25519.pub de una prueba antigua; se ejecuta type %USERPROFILE%\.ssh\id_ed25519.pub y ves algo como ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAA... minha-vps.
type %USERPROFILE%\.ssh\id_ed25519.pub
comando correcto
$ type %USERPROFILE%\.ssh\id_ed25519.pub
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAA... minha-vps
error común
$ type %USERPROFILE%\.ssh\minha_vps.pub
O sistema não pode encontrar o arquivo especificado. (nome de arquivo errado — confira o nome exato com dir antes)
Si prefieres ver los archivos como íconos en lugar de texto, el comando explorer %USERPROFILE%\.ssh abre la carpeta en el Explorador de Windows, la misma ventana de siempre para ver archivos.
Ricardo prefiere esta forma: escribe el comando, se abre el Explorer y ve los archivos hostinger_vps e hostinger_vps.pub lado a lado, como ya estás acostumbrado a ver las carpetas.
Error común
Arrastrar o copiar la clave privada fuera de esta carpeta «solo para guardarla en un lugar más fácil». Cualquier copia de la clave privada en otro lugar (escritorio, nube personal) es una copia más que puede filtrarse; déjala solo ahí dentro.
El tipo de clave recomendado hoy es ed25519 — más moderno y más seguro. El comando de creación pide una ruta y un nombre para tu nueva clave.
Marta elige llamar a la suya minha_vps, en CMD:
ssh-keygen -t ed25519 -C "minha-vps" -f %USERPROFILE%\.ssh\minha_vps
comando correcto
$ ssh-keygen -t ed25519 -C "minha-vps" -f %USERPROFILE%\.ssh\minha_vps
Generating public/private ed25519 key pair. Your identification has been saved in minha_vps Your public key has been saved in minha_vps.pub
error común
$ ssh-keygen -t ed25519 -C "minha-vps" -f %USERPROFILE%\.ssh\minha_vps
minha_vps already exists. Overwrite (y/n)? (já existe uma chave com esse nome — escolha outro nome em vez de sobrescrever sem querer)
Después de eso, solo tienes que presionar Enter en las preguntas siguientes (te piden una contraseña adicional opcional para la clave; puedes dejarla en blanco y confirmar).
Ponte a prueba
Después de ejecutar el comando anterior, ¿cuántos archivos nuevos aparecen en la carpeta .ssh?
El comando de la etapa anterior crea dos archivos: minha_vps (clave privada — nunca la compartas) y minha_vps.pub (clave pública — puedes ponerla en la VPS).
Ricardo revisa los dos archivos de su carpeta y ya reconoce cuál es cuál, aplicando la regla de la lección 4: sin .pub es privada, con .pub es pública.
Comprobando tu nueva clave
ssh-keygen con -f apuntando al nombre elegido..pub.Practica ahora 0/2 hecho
Crear un nuevo par de claves, eligiendo tu propio nombre — ~10 min.
Crear una clave nueva no borra ninguna clave existente ni modifica tu VPS: solo crea un par de archivos nuevos dentro de la carpeta .ssh. Si no te gusta el nombre elegido, puedes borrar los 2 archivos y volver a crearla.
ssh-keygen -t ed25519 -C "minha-vps" -f %USERPROFILE%\.ssh\<escolha um nome>
Acabas de crear tu propia clave SSH, lista para entrar en la VPS en la próxima clase.
Resumen
ssh-keygen -t ed25519 crea un nuevo par de claves con el nombre que elijas..pub, correspondiente a ella.Ruta de aprendizaje · Clase 7
Al final de esta lección, te conectarás a tu VPS usando la clave que creaste, sin escribir ninguna contraseña.
Ya tienes la clave (clase 6). Falta un paso: entregar la mitad pública a la VPS para que te reconozca y hacer una prueba. Es la clase más larga de la ruta porque reúne todo lo anterior; vale la pena tomártela con calma.
↓ desplázate para estudiar
La regla es siempre la misma: solo la clave pública (el archivo .pub) viaja hasta la VPS. La clave privada nunca sale de tu computadora, ni siquiera en esta clase.
Marta ya ejecutó ssh-keygen y tiene minha_vps e minha_vps.pub. Ella sigue los pasos de abajo una vez, y la próxima vez que necesita revisar la automatización de WhatsApp, entra sin escribir nada más que el comando. Ricardo sigue exactamente la misma secuencia en la VPS de su tienda, cambiando solo la IP y el nombre de la clave.
Primero, mira tu clave pública en tu equipo (type %USERPROFILE%\.ssh\minha_vps.pub) y copia todo el texto. Luego, entra en la VPS con contraseña (clase 2) y crea, dentro de ella, la carpeta y el archivo que guardan las claves autorizadas:
mkdir -p ~/.ssh nano ~/.ssh/authorized_keys
O nano es un editor de texto simple que se abre dentro de la propia terminal. Pega allí la clave pública que copiaste y guarda con CTRL+O, Enter, después CTRL+X para salir. Así fue como Ricardo pegó la clave pública de la tienda dentro de la VPS la primera vez que hizo este paso.
Lista de verificación completa: desde la clave en tu PC hasta dentro de la VPS
mkdir -p ~/.ssh — crear la carpeta, si todavía no existe.nano ~/.ssh/authorized_keys — pegar la clave y guardar (CTRL+O, Enter, CTRL+X).comando
$ mkdir -p ~/.ssh $ nano ~/.ssh/authorized_keys
(o nano abre uma tela de edição — cole a chave, CTRL+O, Enter, CTRL+X)
O permisos de la carpeta y del archivo deben ser correctas, o la VPS ignora la clave por seguridad. Todavía dentro de la VPS, ejecuta:
chmod 700 ~/.ssh chmod 600 ~/.ssh/authorized_keys
Ricardo olvidó este paso en el primer intento y su clave simplemente no funcionó, sin ningún mensaje de error claro. Después de ajustar los permisos, funcionó a la primera.
comando correcto
$ chmod 700 ~/.ssh $ chmod 600 ~/.ssh/authorized_keys
(nada aparece — no Linux, silêncio depois de um comando quase sempre significa sucesso)
error común
$ ssh -i minha_vps root@IP_DA_VPS (pulando o chmod)
root@IP: Permission denied (publickey,password). (a VPS recusa a chave porque as permissões da pasta .ssh estão abertas demais)
Ponte a prueba
Si te saltas el paso de chmod, ¿qué suele pasar al intentar conectarse con la clave?
Escribe exit para salir de la VPS, vuelve a tu computadora y conéctate de nuevo — ahora indica qué clave usar, con -i:
ssh -i %USERPROFILE%\.ssh\minha_vps usuario@IP_DA_VPS
Si todo está bien, Marta entra directamente, sin ninguna pantalla que le pida una contraseña: basta con la clave.
Antes
En cada conexión te pedían la contraseña, y tenías que recordarla o copiarla de algún lugar.
Después
La clave demuestra quién eres por sí sola: una conexión más rápida y segura, sin ninguna contraseña.
comando correcto
$ ssh -i %USERPROFILE%\.ssh\minha_vps root@123.123.123.123
Welcome to Ubuntu 22.04 LTS root@vps:~#
error común
$ ssh -i %USERPROFILE%\.ssh\minha_vps root@123.123.123.123
root@123.123.123.123's password: (ainda pediu senha — a chave não foi aceita: revise o authorized_keys e o chmod)
Practica ahora 0/4 hecho
Sigue la secuencia completa, desde tu computadora hasta que la VPS reconozca tu clave: ~15 min.
Siempre puedes volver a entrar con contraseña (clase 2) si algo se bloquea aquí; ningún paso de esta práctica elimina el acceso con contraseña que ya existe.
type %USERPROFILE%\.ssh\minha_vps.pub ssh usuario@IP_DA_VPS mkdir -p ~/.ssh nano ~/.ssh/authorized_keys chmod 700 ~/.ssh chmod 600 ~/.ssh/authorized_keys exit ssh -i %USERPROFILE%\.ssh\minha_vps usuario@IP_DA_VPS
Acabas de aprender a entrar en tu VPS solo con la clave: el mismo flujo que Marta y Ricardo usan todos los días, sin depender del soporte técnico.
Resumen
~/.ssh/authorized_keys, en la propia VPS.chmod 700 en la carpeta, chmod 600 en el archivo) son obligatorias: sin ellas, la VPS ignora la clave.-i apuntar a la clave elimina la necesidad de escribir una contraseña.Ruta de aprendizaje · Clase 8
Al final de esta lección, te conectarás a tu VPS escribiendo solo un alias, sin repetir la IP, el usuario ni la ruta de la clave cada vez.
El comando de la clase 7 funciona, pero es largo para repetirlo todos los días. Un archivo de 4 líneas lo resuelve de una vez por todas.
↓ desplázate para estudiar
Todos los días, para entrar en la VPS con la clave, tienes que recordar (o copiar de algún lugar) un comando completo: usuario, IP y ruta de la clave. Es fácil equivocarse en un carácter.
Ricardo guardaba el comando completo anotado en un bloc de notas, solo para pegarlo cada vez que lo necesitaba; funcionaba, pero era un paso extra innecesario.
En tu computadora, dentro de la carpeta .ssh, puedes crear un archivo llamado exactamente config (sin ninguna extensión), con un bloque parecido a este:
Host hostinger
HostName 123.123.123.123
User root
IdentityFile ~/.ssh/minha_vpsMarta crea el suyo con el apodo salao, cambiando la IP y el usuario por los de su propia VPS.
Error común
Olvidar la sangría (espacios) antes de cada línea después de «Host». El archivo config sigue un formato en el que las líneas debajo de «Host» deben llevar sangría; sin eso, la conexión por alias no funciona.
comando correcto
$ ssh hostinger
Welcome to Ubuntu 22.04 LTS root@vps:~#
error común
$ ssh hostinger
ssh: Could not resolve hostname hostinger: Name or service not known (o arquivo config existe, mas as linhas abaixo de "Host" não estavam recuadas)
Host es el alias que eliges (el nombre que vas a escribir). HostName es la IP real de la VPS. User es el usuario. IdentityFile apunta a la clave privada que se debe usar.
Ponte a prueba
En el ejemplo de Ricardo, ¿qué línea tiene que cambiar para apuntar a la clave que creó en la clase 6?
Después de guardar el archivo, el comando de conexión queda así: ssh hostinger — en vez de escribir el usuario, la IP y la ruta de la clave cada vez. Marta lo hace hoy en segundos, en medio de un día lleno de clientes en el salón.
Lista de verificación del atajo
config dentro de la carpeta .ssh.Host / HostName / User / IdentityFile, con sangría.ssh <apelido escolhido>.Practica ahora 0/2 hecho
Escribir el archivo config y conectarte solo con el alias — ~8 min.
El archivo config solo afecta a tu computadora, no a la VPS; si te equivocas en algo, solo tienes que volver a abrirlo y corregirlo, sin riesgo de bloquear el servidor.
Host <escolha um apelido>
HostName IP_DA_SUA_VPS
User <seu usuario>
IdentityFile ~/.ssh/minha_vpsAcabas de reducir todo el proceso de conexión a una sola palabra: tu apodo.
Resumen
config, dentro de la carpeta .ssh, guarda alias de conexión.Host (apodo), HostName (IP), User e IdentityFile (clave).ssh <apelido>.Ruta de aprendizaje · Clase 9
Al final de esta lección, diagnosticarás por tu cuenta los 4 errores de conexión más frecuentes y sabrás qué hacer en cada caso.
En algún momento, una conexión fallará; es normal, no significa que hayas hecho algo fundamentalmente mal. Lo que cambia todo es reconocer el mensaje y saber por dónde empezar a investigar.
↓ desplázate para estudiar
SSH siempre devuelve un mensaje cuando algo falla, y ese mensaje ya indica la dirección correcta para investigar. Los 4 más comunes son: Permission denied, Connection timed out, Connection refused, y un error de «firma» modificada.
Marta, la primera vez que vio Permission denied, pensó que había roto algo. No era así: solo había escrito mal el nombre de usuario.
Este mensaje significa que la conexión llegó hasta la VPS, pero la autenticación falló. Las causas más comunes: contraseña incorrecta, usuario incorrecto, clave incorrecta, la clave pública no se colocó en el authorized_keys, o los permisos de la carpeta .ssh están incorrectas (lección 7). Ese fue exactamente el mensaje que Marta vio en el primer intento, porque escribió mal el usuario.
Error común
"Permission denied" al intentar conectar con -i con la clave. Antes de sospechar de la clave en sí, comprueba: el archivo authorized_keys tiene pegada exactamente la clave correcta y los permisos están en 700/600.
Connection timed out significa que la solicitud ni siquiera recibió una respuesta — por lo general, la IP es incorrecta, la VPS está apagada o hay un puerto bloqueado por el firewall. Connection refused significa que la VPS respondió diciendo "no" — el servicio SSH puede estar desactivado en ella o el puerto utilizado es incorrecto.
Ricardo tuvo que recrear la VPS de la tienda una vez y, al intentar conectarse de nuevo, recibió un aviso de que la «firma» del servidor había cambiado; el comando ssh-keygen -R IP_DA_VPS borra la firma antigua guardada y permite conectarte de nuevo, aceptando la nueva.
Si ya estás dentro de la VPS (por ejemplo, al entrar con contraseña después de un problema con la clave), systemctl status ssh (o sshd, dependiendo del sistema) muestra si el servicio está activo. Ricardo usó este comando cuando la automatización de publicaciones de la tienda dejó de responder y confirmó que el servicio seguía activo: el problema era otro.
systemctl status ssh sudo systemctl enable ssh sudo systemctl start ssh
Lista de verificación final: desde cero hasta conectarte con una clave
comando correcto
$ systemctl status ssh
● ssh.service - OpenBSD Secure Shell server
Active: active (running)
error común
$ systemctl status sshd
Unit sshd.service could not be found. (neste sistema o serviço se chama "ssh", não "sshd" — tente o outro nome)
Practica ahora 0/2 hecho
Lee los 2 minicCases y señala la causa más probable de cada uno — ~8 min.
Es solo lectura y razonamiento: en esta práctica no se toca ninguna VPS real.
Caso 1. Marta intenta conectarse con ssh -i ~/.ssh/minha_vps admin@45.77.12.9 y recibe Permission denied. Ella confirma que la IP y el usuario son correctos.
Caso 2. Ricardo intenta conectarse a la VPS de la tienda y la terminal se queda quieta durante un minuto, hasta que aparece Connection timed out. Él confirma en el navegador de otro servicio que la VPS está encendida.
Caso 1: como ya se confirmaron la IP y el usuario, la causa más probable es que la clave pública no esté pegada correctamente en authorized_keys, o los permisos de la carpeta .ssh/archivo estén mal — el mismo diagnóstico del paso 2 de esta clase. Caso 2: "timed out" (sin ninguna respuesta) apunta a un problema de red antes incluso de llegar al SSH: un firewall que bloquea el puerto es la causa más común cuando se ha confirmado que la VPS está encendida.
Acabas de aprender a diagnosticar problemas de conexión a partir del mensaje de error, sin depender de nadie más para entender qué está pasando.
Resumen
systemctl status ssh, directamente en la VPS, confirma si el servicio está activo.