Cómo administrar de forma remota un servidor Linux con SSH

Cómo administrar de forma remota un servidor Linux con SSH / Linux

La administración del servidor sigue siendo una tarea necesaria y ocasionalmente engorrosa. Es especialmente difícil con servidores remotos o servidores sin cabeza. Afortunadamente, hay Secure Shell (SSH). Secure Shell es un protocolo de red que permite que los servicios de red se ejecuten en una red no segura.

SSH cuenta con una tonelada de funcionalidad. Hay una razón por la que es una opción para la administración remota del servidor. Aprenda cómo administrar de forma remota un servidor Linux a través de SSH, desde la conexión hasta la instalación del software y la transferencia de archivos..

¿Qué es SSH??

SSH significa Secure Shell. Es un protocolo de red criptográfico. Usando SSH, puede obtener acceso a la terminal y realizar varias funciones de línea de comandos. También hay medios para administrar un servidor Linux con acceso gráfico. Esto es realmente útil para las transferencias de archivos, especialmente cuando no quiere o no puede recordar una ruta de archivo exacta.

Cuando use SSH para administrar un servidor remoto de Linux, necesitará algunos elementos. Primero, deberá preparar su servidor para aceptar conexiones SSH. En los dispositivos desde los que se conectará, necesitará algún tipo de software SSH. Para iniciar sesión en un servidor con SSH, deberá conocer la dirección IP del servidor. Sin embargo, el inicio de sesión a través de SSH con una dirección IP solo funciona si está en la misma red local que el servidor. Si está fuera de su red, puede configurar un puerto de reenvío para acceder a un servidor con SSH desde cualquier lugar. Puede aprender más acerca de SSH en esta guía para principiantes sobre cómo configurar SSH en Linux. es SSH, ya que puede controlar una máquina diferente como si estuviera sentado directamente en ella. Te llevaremos a través de una instalación básica. Lee mas .

Preparando su servidor para aceptar SSH

Antes de comenzar a administrar su servidor Linux a través de SSH, deberá preparar su servidor para permitir las conexiones SSH. Tengo un servidor de medios Plex dedicado sin cabeza. Al carecer de un monitor y periféricos, utilizo SSH para administrar mi servidor. Al instalar o actualizar software y transferir archivos, simplemente SSH en mi servidor. Mi configuración exacta es un ThinkServer TS140 que ejecuta Ubuntu 16.04 LTS. Dependiendo de su hardware y distribución de Linux, la preparación para SSH puede variar ligeramente.

Para preparar a su servidor Linux para que acepte conexiones entrantes, deberá instalar una herramienta de inicio de sesión remota para el protocolo SSH. Uno de los más comunes es OpenSSH. En las distribuciones basadas en Debian, OpenSSH está disponible a través de los repositorios principales. Abre una nueva terminal (Ctrl + Alt + T) e ingrese el siguiente comando:

sudo apt-get update

Esto realiza una actualización y asegura que tienes los últimos repositorios. Antes de proceder a instalar OpenSSH, también verifique si hay actualizaciones. En una terminal, ejecute:

sudo apt-get upgrade 


Una vez que haya actualizado y actualizado, abra una nueva línea de comando e ingrese:

sudo apt-get install openssh-server 

Configurando las configuraciones SSH de su servidor

Después de instalar Open SSH en el lado del servidor, puede editar la información de configuración básica. Levante un nuevo terminal e ingrese la siguiente cadena para abrir el archivo de configuración SSH:

sudo nano / etc / ssh / sshd_config 


Aquí puede especificar varias configuraciones. Por defecto, su servidor SSH operará en el puerto 22. Así, por ejemplo, puede cambiar manualmente el puerto de 22 a un puerto de su elección. Además, puede aumentar la seguridad ingresando un número máximo de inicio de sesión. Bajo Puerto, encuentra la línea MaxAuthTries. Puede ingresar cualquier número aquí. Entonces, para hacer un máximo de cuatro intentos de inicio de sesión, ingrese:

MaxAuthTries 4

Después de instalar OpenSSH, el servidor SSH debería estar ejecutándose. Pero para verificar, simplemente abra una terminal y ejecute:

estado de servicio de sudo ssh


Esto debería devolver un mensaje que SSH está habilitado. Para iniciar SSH, abra una línea de comando y escriba:

sudo service ssh start

Y para evitar que SSH se ejecute, ejecute:

servicio de sudo ssh stop

Acceso remoto a un servidor Linux a través de SSH

Ahora que SSH está instalado y en ejecución, puede conectarse de forma remota. Si está iniciando sesión en un servidor Linux de forma remota, necesitará la dirección IP del servidor. Esto debería ser 192.168.0.x. Armado con la dirección IP del servidor Linux, también necesitará un medio para iniciar sesión a través de SSH desde una máquina diferente. Hay varios métodos para iniciar sesión de forma remota con SSH.

Uso de SSH en sistemas operativos basados ​​en Unix

Si está utilizando un sistema basado en Unix como Linux, macOS o FreeBSD, SSH está disponible en la línea de comandos. En una terminal, ejecute:

ssh [host remoto] 

... donde [host remoto] es la dirección IP a la que está accediendo. Si su nombre de usuario difiere en el sistema remoto, puede especificar el nombre de usuario exacto ingresando:

ssh [nombre de usuario remoto] @ [host remoto]

Después de ingresar esto, se te preguntará si deseas continuar conectándote. Luego se le solicitará que ingrese su nombre de usuario y luego se le pedirá su contraseña.

Alternativamente, si desea omitir la línea de comandos por completo, puede iniciar sesión en su servidor Linux a través de la red. En una máquina Linux, navegue hasta Conectar al servidor y escribe tu ssh: // [dirección IP]. Se le pedirá que proporcione su nombre de usuario y contraseña.

La principal ventaja de este método es que tendrá una navegación gráfica completa de la carpeta. Esto se denomina Protocolo de transferencia de archivos SSH o SFTP. Esto hace que las transferencias de archivos sean mucho más fáciles. Dado que mi servidor Linux es un servidor Plex dedicado, a menos que esté realizando actualizaciones, generalmente uso SFTP.

SSH Con PuTTY

Si está utilizando una PC o Mac, necesitará un cliente SSH. PuTTY es probablemente el cliente SSH más conocido. Instale PuTTY en su PC, macOS o máquina Linux. Con PuTTY abierto, mira debajo Sesión y en la casilla etiquetada Nombre de host, ingrese su dirección IP. Asegúrese de especificar el puerto correcto. Si usa el valor predeterminado, deje esto como 22.

Ahora debería ver un terminal con un aviso de inicio de sesión. Ingrese su nombre de usuario de servidor Linux aquí.

Una vez que haya ingresado su nombre de usuario, se le solicitará una contraseña si tiene su servidor Linux protegido con contraseña. Ingrese eso y debería ver un mensaje de bienvenida con información sobre su sistema y una línea de comandos como la que vería en su servidor Linux.

Clientes SSH alternativos

Aunque PuTTY sigue siendo el cliente SSH más popular, hay muchas alternativas. Mi primera selección es Bitvise (solo Windows). ¿La razón? Incluye no solo la interfaz de la línea de comandos para administrar de forma remota un servidor Linux a través de SSH, sino también las capacidades SFTP. Por lo tanto, es perfecto tanto para transferencias de archivos como para administración general. Cuando necesito simplemente actualizar o realizar un reinicio, uso Bitvise SSH Client para acceder a la línea de comandos. Pero para las transferencias de archivos, utilizo la interfaz gráfica..

Al igual que con PuTTY o iniciar SSH a través de la línea de comandos en Linux, deberá ingresar su dirección IP, nombre de usuario y contraseña.

Recibirá un mensaje preguntando si desea aceptar la sesión. Puede aceptar solo para esa sesión o guardar para usar en el futuro. Después de eso, se le pedirá que ingrese la contraseña de su servidor Linux que está administrando de forma remota.

Conéctelo y Bitvise abrirá una línea de comandos y una ventana gráfica de SSH.

La ventana SFTP hace que la administración de transferencias de archivos sea realmente simple, además de la línea de comandos tradicional SSH para muchas funcionalidades.

Cómo puede administrar un servidor Linux remoto con SSH

¡Ok genial! SSH está configurado tanto en el servidor como en el dispositivo que utilizará para administrar su servidor. Entonces, ¿qué puedes hacer realmente? Cualquier cosa que sea posible con la línea de comandos de Linux. Algunas de las tareas comunes que puede realizar son instalaciones de software, actualizaciones, reinicios, copiar archivos e incluso ejecutar aplicaciones GUI. Por ejemplo, puedes copiar archivos con los siguientes comandos:

scp [host remoto]: [archivo local] [directorio de destino]
scp [archivo local] [host remoto]: [directorio de destino] 

Instalar software simplemente significa conectar el comando correcto. Cuando instalé Plex en mi TS140 sin cabeza a través de SSH, por ejemplo, simplemente ingresé:

sudo apt-get install plexmedia server -y

De manera similar, para decir crear un servidor de WordPress, solo debe seguir los detalles de instalación, pero a través de una línea de comandos SSH.

Lo que hagas probablemente depende del servidor y para qué se utiliza. Mientras ejecuto un servidor Plex dedicado sin cabeza, la mayor parte de lo que uso SSH y SFTP es para transferencias de archivos con actualizaciones de software ocasionales. También he usado SSH para acceder a los archivos de registro y ejecutar puntos de referencia para probar el rendimiento de la CPU. Si está ejecutando un servidor web, es posible que desee realizar una copia de seguridad de su sitio web mediante la línea de comandos de SSH Cómo hacer una copia de seguridad de su sitio web a través de la línea de comandos de SSH Cómo hacer una copia de seguridad de su sitio web a través de la línea de comandos de SSH La copia de seguridad de su sitio web o blog puede ser costosa tarea ardua, que requiere una variedad de complementos o planes adicionales de su proveedor de alojamiento, pero no es necesario que sea así. Si tienes SSH ... Leer más. Vea esta guía rápida de la línea de comandos de Linux Una guía rápida para comenzar con la línea de comandos de Linux Una guía rápida para comenzar con la línea de comandos de Linux Puede hacer muchas cosas increíbles con comandos en Linux y realmente no es difícil aprender . Lea más, así como estos tres sitios para ayudarlo a convertirse en un maestro de la línea de comandos de Linux. Sitios web y libros principales para transformarlo en un héroe de la línea de comandos de Linux. Una herramienta extremadamente poderosa, pero también puede ser intimidante. Utilice estos sitios web y libros para controlarlo. Lee mas .

SSH: Encontrar el control remoto

Si está ejecutando un servidor Linux, SSH es un medio excelente para administrarlo de forma remota. Mantiene el control total de la línea de comandos, e incluso puede ejecutar aplicaciones GUI y realizar transferencias de archivos. Hay posibilidades casi ilimitadas de lo que puede lograr al administrar un servidor Linux remoto a través de SSH. Puede configurar un servidor de archivos, un servidor de medios, un servidor de juegos Linux Todo lo que necesita para construir un servidor de juegos en Linux Todo lo que necesita para construir un servidor de juegos en Linux Desde su creación, los juegos casi siempre han sido más divertidos con múltiples jugadores, un Práctica que se ha movido en línea. Para organizar un torneo en línea, necesitarás configurar tu propio servidor de juegos, usando Linux. Leer más, y más. Incluso puede administrar una Raspberry Pi sin cabeza Configuración de su Raspberry Pi para su uso sin cabeza con SSH Configuración de su Raspberry Pi para su uso sin cabeza con SSH La Raspberry Pi puede aceptar comandos SSH cuando está conectada a una red local (ya sea por Ethernet o Wi-Fi) , lo que le permite configurar fácilmente. Los beneficios de SSH van más allá de alterar la revisión diaria ... Leer más servidor utilizando SSH. Además, muchos programas cliente de SSH son multiplataforma.

¿Cómo está usando SSH y qué tipo de servidor está administrando??

Explorar más sobre: ​​Linux.