GNU/Linux >> Tutoriales Linux >  >> Cent OS

Habilitar SSH en CentOS 8:¿el mejor método?

SSH es un protocolo ampliamente utilizado, utilizado principalmente por administradores de sistemas para iniciar sesión de forma segura en servidores remotos. Les permite el acceso a la línea de comandos para trabajar en el sistema remoto como si estuvieran sentados en el servidor.

Aquí en LinuxAPT, como parte de nuestros servicios de administración de servidores, ayudamos regularmente a nuestros clientes a realizar consultas SSH relacionadas en el sistema Linux.

En este contexto, veremos cómo puede habilitar SSH en el sistema CentOS y conectarse a él mediante un cliente SSH. Además, aprenderá a configurar el servidor SSH.

Si usa un sistema operativo Ubuntu, puede leer fácilmente esta publicación para habilitar SSH en Ubuntu.


¿Pasos para habilitar SSH en CentOS?

1. Instalar el servidor OpenSSH

Para comenzar, deberá instalar un servidor OpenSSH en la máquina a la que desea acceder de forma remota a través de SSH. Use el siguiente comando para instalar el servidor OpenSSH en su máquina CentOS:

$ sudo dnf install openssh-server

Si se le solicita, ingrese la contraseña de sudo y luego verá que se inició la instalación. Presione y si se le solicita confirmación.

Ahora, el servidor OpenSSH se instalará en su sistema.


2. Inicie SSH Daemon y verifique el estado

Ahora que se ha instalado SSH, puede iniciar su servicio. Use el siguiente comando para iniciar el demonio SSH:

$ sudo systemctl start ssh

Luego, para verificar si el demonio SSH se ha iniciado, use el siguiente comando:

$ sudo systemctl status sshd


3. Permitir SSH a través del cortafuegos

Si el firewall está habilitado en su sistema CentOS, bloqueará el tráfico SSH entrante. Para permitir el tráfico SSH entrante, deberá agregar una regla en el firewall. El puerto predeterminado que usa SSH es el 22. Por lo tanto, la regla debería abrir el puerto 22.

Utilice el siguiente comando para permitir el tráfico SSH entrante en el puerto 22:

$ sudo firewall-cmd --permanent --add-port=22/tcp

Este comando agregará una regla en su firewall que permitirá el tráfico en el puerto 22. Si configuró SSH para un puerto que no sea el 22, asegúrese de usar ese puerto en la regla del firewall.


4. Pruebe el acceso SSH

Para probar si SSH está funcionando y puede conectarse, abra su máquina cliente. Esta máquina debe tener un cliente SSH. Si está utilizando un cliente CentOS, puede instalar el cliente SSH de la siguiente manera:

$ sudo dnf install openssh-clients

Aquí vamos a probarlo usando nuestra máquina cliente Ubuntu.

Para conectarse a un servidor SSH, necesitará una dirección IP y un nombre de usuario del sistema remoto:

$ ssh remote_username@remote_ip_address

Por ejemplo, en nuestro caso, la dirección IP de la máquina remota (donde está instalado el servidor SSH) era "192.168.72.100" y el nombre de usuario era "linuxapt", por lo que ejecutamos el comando:

$ ssh [email protected]

Nota:si no sabe cómo encontrar la dirección IP de una máquina, visite esta publicación.

Una vez que se haya conectado al servidor SSH, le pedirá que ingrese la contraseña. Ingrese la contraseña y luego iniciará sesión en su sistema remoto. Ahora también notará que el aviso de la Terminal se ha cambiado para reflejar el nombre de usuario y el nombre del sistema del sistema remoto.


¿Cómo configurar SSH en CentOS 8?

El archivo de configuración de SSH se encuentra en /etc/ssh/sshd_config. Este archivo contiene diferentes opciones de configuración que puede cambiar según sus necesidades. Aquí veremos algunas opciones comunes que podrían necesitar modificaciones, p. cambiando el puerto SSH predeterminado y la dirección de escucha, deshabilitando el inicio de sesión raíz, configurando sesiones máximas e intentos de contraseña, etc.

Para configurar o cambiar cualquier opción, deberá editar el archivo sshd_config:

$ sudo nano /etc/ssh/sshd_config

Recuerde, después de cambiar cualquier configuración en el archivo sshd_config, asegúrese de volver a cargar el servidor SSH para implementar los cambios:

$ sudo systemctl reload ssh


¿Cómo cambiar el puerto SSH?

El SSH por defecto usa el puerto 22 para escuchar las conexiones entrantes. Si por alguna razón desea cambiar el puerto SSH, puede hacerlo editando el archivo sshd_config y buscando una línea que diga:

# Port 22

Descomente la línea eliminando el hash (#) y reemplace 22 con el número de puerto que desea configurar para SSH.

Una vez hecho esto, guarde y cierre el archivo sshd_config.


¿Cómo cambiar la dirección de escucha?

De forma predeterminada, SSH escucha en todas las interfaces locales. Para configurar SSH para escuchar solo en una interfaz de red específica, edite el archivo sshd_config:

$ sudo nano /etc/ssh/sshd_config

Busque la línea que dice:

#ListenAddress 0.0.0.0

Descomente la línea anterior y reemplace 0.0.0.0 con la dirección local en la que desea que SSH escuche.

Una vez hecho esto, guarde y cierre el archivo sshd_config.


¿Cómo deshabilitar el inicio de sesión raíz?

De forma predeterminada, el usuario raíz puede iniciar sesión mediante SSH. Esto está controlado por el parámetro PermitRootLogin en el archivo sshd_config que es "sí" de forma predeterminada, lo que significa que se permite el inicio de sesión raíz.

Para deshabilitar el inicio de sesión raíz, edite el archivo sshd_config:

$ sudo nano /etc/ssh/sshd_config

Busque la línea que dice:

# PermitRootLogin no

Quite el comentario (si está comentado) de la línea anterior y reemplace "no" por "sí" para deshabilitar el inicio de sesión raíz usando SSH.

Una vez hecho esto, guarde y cierre el archivo sshd_config.


¿Cómo cambiar el número de sesiones permitidas e intentos de autenticación?

De forma predeterminada, el número máximo de sesiones permitidas por conexión de red es 10. Se puede cambiar mediante el parámetro MaxSessions en el archivo sshd_config. Del mismo modo, el número máximo de intentos de autenticación para una sesión de inicio de sesión es 6, que se puede cambiar mediante el parámetro MaxAuthTries.

Para cambiar la cantidad de sesiones permitidas por conexión de red, busque la línea que dice:

# MaxSessions 10

Descomente la línea anterior y reemplace su valor con el valor deseado.

Para cambiar la cantidad de intentos de autenticación permitidos por sesión de inicio de sesión, busque la línea que dice:

# MaxAuthTries 6

Descomente la línea anterior y reemplace su valor con el valor deseado.

Una vez hecho esto, guarde y cierre el archivo sshd_config.


¿Cómo cambiar el tiempo de gracia?

Cuando te conectas al servidor SSH, te da 120 segundos (tiempo predeterminado) para completar tu autenticación usando un nombre de usuario y contraseña. Si no inicia sesión durante este tiempo, el servidor interrumpe la conexión y debe iniciar sesión nuevamente. Puede configurar este tiempo un poco más alto de lo que le lleva completar el inicio de sesión o configurarlo más bajo para evitar ataques DoS donde varias sesiones se mantienen abiertas durante mucho tiempo.

Para cambiar esta hora, busca la línea que dice:

# LoginGraceTime 120

Descomente la línea anterior y reemplace su valor con el tiempo deseado (en segundos). Si no desea establecer ningún límite de tiempo, establezca su valor en 0.

Una vez hecho esto, guarde y cierre el archivo sshd_config.



Cent OS
  1. Cambiar el puerto SSH en el sistema Linux Ubuntu 20.04:¿el mejor método?

  2. Instalar Putty en CentOS 8 - ¿El mejor método?

  3. Instalar Nmap en CentOS 8 - ¿El mejor método?

  4. Cómo cambiar el puerto SSH en CentOS

  5. Cambiar puerto SSH en CWP

Cómo habilitar SSH en CentOS

Cómo habilitar las notificaciones de inicio de sesión SSH por correo electrónico en CentOS 8

Cómo instalar y habilitar el servidor OpenSSH en CentOS 8 Linux

Cómo habilitar el servicio SSH en Rocky Linux 8 / CentOS 8

Cómo cambiar el puerto SSH en CentOS

¿Cómo cambiar el puerto SSH en Centos 7.x?