Base de Conocimiento Instrucciones sencillas para trabajar con el servicio Profitserver
Main Base de Conocimiento Cómo conectarse a un servidor Linux a través de SSH

Cómo conectarse a un servidor Linux a través de SSH


La principal forma de conectarse a un servidor Linux es mediante el protocolo SSH . Este tipo de conexión es segura, ya que todos los datos que se transmiten están cifrados. Para establecer una conexión SSH, debe configurarla en el servidor remoto al que desea conectarse y el cliente en su equipo. Existe una gran variedad de software para la conexión SSH. En Linux, el paquete OpenSSH es el más popular, mientras que en Windows se suele usar PuTTY.

Analicemos con más detalle la configuración del servidor usando Ubuntu Server 18.04 como ejemplo y luego intentemos conectarnos al servidor desde Linux y Windows.

Todo lo que hagamos se realizará desde la cuenta de un usuario común. En este caso, creamos un usuario llamado " mihail ", y la cuenta " root " está deshabilitada por defecto.

Configuración del lado del servidor

Configure el paquete ejecutando este comando:

sudo apt install openssh-server
Instalación del entorno SSH en un servidor Linux

Una vez finalizada la instalación, asegúrese de que el servicio esté en ejecución. Utilice este comando:

systemctl status sshd
Comprobación de la disponibilidad del servicio SSH

El estado “ Activo (en ejecución) ” significa que el servicio está habilitado y funcionando con normalidad.

Para evitar que el firewall bloquee las conexiones entrantes, asegúrese de deshabilitarlo, porque no vamos a configurar el firewall de red en este artículo.

Utilice este comando:

sudo ufw disable
Deshabilitar el bloqueo de conexiones entrantes en el Firewall de Windows

En esta etapa, ya puede conectarse al servidor. Con la configuración predeterminada, el servidor permite la conexión al puerto estándar 22 mediante autenticación con contraseña.

Conexión SSH desde Linux

Normalmente, el cliente OpenSSH se instala en Linux por defecto y no requiere configuración manual adicional. La conexión se puede establecer desde la terminal con el comando ssh. En este caso, los parámetros serían el nombre de usuario y la dirección IP del servidor remoto. En el servidor de prueba que usamos como ejemplo, solo hay una cuenta "mihail", así que usaremos esta.

ssh [email protected]

En la primera conexión, deberá confirmar la adición de la clave pública del servidor a la base de datos; para ello, responda « ». A continuación, podrá introducir la contraseña. Si la conexión se establece correctamente, verá un mensaje de bienvenida en la línea de comandos del servidor. Ahora, todos los comandos se ejecutarán directamente en el servidor remoto.

Conexión SSH desde Linux

SSH desde Windows

Abra Putty y configure los parámetros de conexión. Asegúrese de que el interruptor “ Tipo de conexión ” esté configurado en SSH . Ingrese la dirección IP en el campo “ Nombre de host ”, el valor predeterminado 22 en “ Puerto ” y haga clic en “ Abrir ”.

Conexión SSH desde un Windows

En la primera conexión, Putty le pedirá que confirme que confía en este servidor, así que haga clic en “ ”.

Primera conexión SSH desde Windows

Después de ingresar el nombre de usuario y la contraseña, verá la línea de comando del servidor remoto.

Conexión SSH exitosa

Autenticación por clave. Mayor nivel de seguridad.

Cuando un cliente intenta establecer una conexión segura con el servidor mediante SSH, antes de permitir la conexión, el servidor debe autenticar (verificar) al cliente. Como se mencionó anteriormente, la autenticación basada en contraseña suele usarse por defecto. No ofrece una seguridad robusta, ya que siempre existe la posibilidad de forzarla. Además, la autenticación con contraseña no es aplicable a conexiones SSH mediante scripts.

Para este tipo de tareas, existe un método especial de autenticación por clave. El cliente genera claves privadas y públicas, y luego envía la clave pública al servidor. Posteriormente, no se necesita contraseña para conectarse al servidor, ya que la autenticación se realiza con las claves públicas y privadas del cliente. Para garantizar un buen nivel de seguridad, se debe restringir el acceso a la clave privada. Dado que la clave privada se almacena en el lado del cliente y no se transfiere a través de la red, este método se considera más seguro.

Autenticación por clave en Linux

Generemos las claves públicas y privadas en el cliente con la utilidad ssh-keygen. La herramienta sugerirá cambiar la ruta de la clave privada e introducir una contraseña para mayor seguridad. Mantenga todos los parámetros predeterminados pulsando Enter en todas las solicitudes.

Autenticación por clave en Linux para una conexión segura

Como resultado, en el directorio principal, en la carpeta .ssh, encontrará dos archivos generados: id_rsa e id_rsa.pub , que contienen las claves privada y pública respectivamente.

Después, deberá enviar la clave pública al servidor. Para ello, copie el contenido del archivo “ id_rsa.pub ” en el archivo “ ~/.ssh/authorized_keys ” del servidor. Optemos por la forma más sencilla con la herramienta “ ssh-copy-id ”. Introduzca el nombre de usuario y la dirección IP del servidor, como en una conexión normal. Tras introducir la contraseña, la clave pública del cliente se copiará automáticamente al servidor. Ejecute este comando:

ssh-copy-id [email protected]
Autorización SSH con claves privadas

Después de hacer todo esto, el servidor ya no requerirá que ingreses la contraseña.

Autenticación por clave en Windows

Abre PUTTYGEN y haz clic en “ Generar ”. Para generar las claves, solo tienes que mover el ratón por la pantalla y la herramienta las generará aleatoriamente.

Una vez generadas las claves, haga clic en « Guardar clave privada » y guárdela en la carpeta con el nombre de la clave privada en su disco duro. Puede establecer la ruta que desee, pero más adelante deberá especificarla en Putty. A continuación, copie la clave pública que aparece en la parte superior de la ventana.

Generación de una clave privada para una conexión SSH en Windows

Vamos a enviar la clave pública simplemente copiándola en la terminal. Abre Putty y conéctate al servidor como de costumbre. Ahora vamos a crear el archivo “ .ssh/authorized_keys ” y restringir el acceso de los demás usuarios, de modo que solo esté disponible para su creador.

mkdir .ssh
touch .ssh/authorized_keys
chmod 700 .ssh
chmod 600 .ssh/authorized_keys

Después de crear el archivo, introduzca la clave pública del cliente. En la etapa anterior, copiamos la clave pública al portapapeles. Para guardar el contenido del portapapeles en el archivo, use el comando cat y redirija la salida.

cat > .ssh/authorized_keys

Tras introducir el comando, haz clic con el botón derecho del ratón en la ventana de la terminal y pega el contenido del portapapeles. Para confirmar la entrada, pulsa la combinación de teclas « Ctrl+D » y desconéctate del servidor.

Subir clave a un servidor

Ahora especifiquemos la ruta a la clave privada en Putty y conectémonos nuevamente al servidor.

Primera conexión SSH con una clave privada

A partir de ahora, para conectarse al servidor, solo necesitará introducir su nombre de usuario. Si intenta conectarse desde otro dispositivo que no tenga la clave privada correcta, el servidor solicitará la contraseña. Una vez configurada la autenticación basada en clave, podrá denegar el acceso mediante contraseña.

Conexión con clave privada completada
❮ Artículo anterior Cómo deshabilitar la configuración de seguridad mejorada en IE

Pregúntenos sobre VPS

Siempre estamos listos para responder sus preguntas en cualquier momento del día o de la noche.