Múltiples formas de asegurar el servidor SSH

Múltiples formas de asegurar el servidor SSH
Secure Shell es un protocolo de comunicación de red utilizado para la comunicación cifrada y la administración remota entre el cliente y el servidor. Es un protocolo multipropósito que se puede usar para hacer mucho más que solo administración remota. Este protocolo se comunica de forma segura a través de una red no segura utilizando cifrado asimétrico. El cifrado asimétrico es una forma de cifrado en la que las claves públicas y privadas se utilizan para cifrar y descifrar datos. Por defecto Ssh se comunica a través del puerto 22 pero se puede cambiar. En este blog cubriremos diferentes formas de asegurar Ssh servidor.

Diferentes formas de asegurar el servidor SSH

Toda la configuración de la configuración de Ssh El servidor se puede hacer modificando ssh_config archivo. Este archivo de configuración se puede leer escribiendo el siguiente comando en el terminal.

ubuntu@ubuntu: ~ $ cat/etc/ssh/ssh_config

Nota: Antes de editar este archivo, debe tener privilegios raíz.

Ahora discutimos diferentes formas de asegurar Ssh servidor. Los siguientes son algunos métodos que podemos aplicar para hacer nuestro Ssh servidor más seguro

  • Cambiando el valor predeterminado Ssh Puerto
  • Usando contraseña segura
  • Usando la clave pública
  • Permitiendo que una sola IP inicie sesión
  • Deshabilitar la contraseña vacía
  • Usando el protocolo 2 para Ssh Servidor
  • Deshabilitando el reenvío X11
  • Establecer un tiempo de espera inactivo
  • Configurar una contraseña limitada intenta

Ahora discutimos todos estos métodos uno por uno.

Cambiando el puerto SSH predeterminado

Como se describió anteriormente, por defecto Ssh Utiliza el puerto 22 para la comunicación. Es mucho más fácil para los piratas informáticos hackear sus datos si saben qué puerto se está utilizando para la comunicación. Puede asegurar su servidor cambiando el valor predeterminado Ssh puerto. Para cambiar el Ssh puerto, abierto sshd_config Archivo usando el editor nano ejecutando el siguiente comando en terminal.

ubuntu@ubuntu: ~ $ nano/etc/ssh/ssh_config

Encuentre la línea en la que se menciona el número de puerto en este archivo y elimine el # firmar antes "Puerto 22" y cambie el número de puerto a su puerto deseado y guarde el archivo.

Usando contraseña segura

La mayoría de los servidores son pirateados debido a una contraseña débil. Es más probable que una contraseña débil sea pirateada por los hackers fácilmente. Una contraseña segura puede hacer que su servidor sea más seguro. Los siguientes son los consejos para una contraseña segura

  • Use una combinación de letras mayúsculas y minúsculas
  • Use números en su contraseña
  • Use una contraseña larga
  • Use caracteres especiales en su contraseña
  • Nunca use su nombre o fecha de nacimiento como contraseña

Uso de la clave pública para asegurar el servidor SSH

Podemos iniciar sesión en nuestro Ssh servidor utilizando dos formas. Uno está usando la contraseña y el otro está usando la clave pública. Usar la clave pública para iniciar sesión es mucho más segura que usar una contraseña para iniciar sesión Ssh servidor.

Se puede generar una clave ejecutando el siguiente comando en la terminal

ubuntu@ubuntu: ~ $ ssh-keygen

Cuando ejecute el comando anterior, le pedirá que ingrese la ruta para sus claves privadas y públicas. La clave privada será guardada por "ID_RSA" el nombre y la clave pública serán guardadas por "ID_RSA.pub" nombre. Por defecto, la clave se guardará en el siguiente directorio

/Inicio/nombre de usuario/.ssh/

Después de crear una clave pública, use esta clave para configurar Ssh Iniciar sesión con la clave. Después de asegurarse de que la clave esté funcionando para iniciar sesión en su Ssh servidor, ahora deshabilite el inicio de sesión basado en contraseña. Esto se puede hacer editando nuestro ssh_config archivo. Abra el archivo en su editor deseado. Ahora retire el # antes "PassionAuthentication Sí" y reemplácelo con

Contraseña Autenticación no

Ahora tu Ssh El servidor solo se puede acceder por clave pública y el acceso a través de la contraseña se ha deshabilitado

Permitiendo que una sola IP inicie sesión

Por defecto puedes Ssh en su servidor desde cualquier dirección IP. El servidor se puede hacer más seguro permitiendo que una sola IP acceda a su servidor. Esto se puede hacer agregando la siguiente línea en su ssh_config archivo.

ListenDdress 192.168.0.0

Esto bloqueará todas las IP para iniciar sesión en su Ssh servidor que no sea el IP ingresado (i.mi. 192.168.0.0).

Nota: Ingrese la IP de su máquina en lugar de "192.168.0.0 ".

Deshabilitar la contraseña vacía

Nunca permita el inicio de sesión en Ssh Servidor con contraseña vacía. Si se permite la contraseña vacía, es más probable que su servidor sea atacado por los atacantes de la fuerza bruta. Para deshabilitar el inicio de sesión de contraseña vacía, abra ssh_config archivo y hacer los siguientes cambios

PermenTemptyPasswords No

Uso del Protocolo 2 para el servidor SSH

Protocolo anterior utilizado para Ssh es ssh 1. Por defecto, el protocolo se establece en SSH 2, pero si no está configurado en SSH 2, debe cambiarlo a SSH 2. El protocolo SSH 1 tiene algunos problemas relacionados con la seguridad y estos problemas se han solucionado en el protocolo SSH 2. Para cambiarlo, editar ssh_config Archivo como se muestra a continuación

Protocolo 2

Deshabilitando el reenvío X11

La función de reenvío X11 ofrece una interfaz gráfica de usuario (GUI) de su Ssh servidor al usuario remoto. Si el reenvío X11 no está deshabilitado, entonces cualquier hacker, que ha pirateado su sesión de SSH, puede encontrar fácilmente todos los datos en su servidor. Puede evitar esto deshabilitando el reenvío X11. Esto se puede hacer cambiando el ssh_config Archivo como se muestra a continuación

X11 para no

Establecer un tiempo de espera inactivo

El tiempo de espera inactivo significa, si no realiza ninguna actividad en su Ssh servidor para un intervalo de tiempo específico, se registra automáticamente desde su servidor

Podemos mejorar las medidas de seguridad para nuestro Ssh servidor configurando un tiempo de espera inactivo. Por ejemplo tu Ssh Su servidor y después de un tiempo se ocupa de otras tareas y olvida la sesión de su sesión. Este es un riesgo de seguridad muy alto para su Ssh servidor. Este problema de seguridad se puede superar estableciendo un tiempo de espera inactivo. El tiempo de espera inactivo se puede establecer cambiando nuestro ssh_config Archivo como se muestra a continuación

ClientaliveInterval 600

Al establecer el tiempo de espera inactivo a 600, la conexión SSH se eliminará después de 600 segundos (10 minutos) de ninguna actividad.

Configurar una contraseña limitada intenta

También podemos hacer nuestro Ssh Servidor seguro al configurar un número específico de trayos de contraseña. Esto es útil contra los atacantes de la fuerza bruta. Podemos establecer un límite para los intentos de contraseña cambiando ssh_config archivo.

Maxauthtries 3

Reiniciar el servicio SSH

Muchos de los métodos anteriores deben reiniciar Ssh servicio después de aplicarlos. Podemos reiniciar Ssh servicio escribiendo el siguiente comando en la terminal

ubuntu@ubuntu: ~ $ servicio ssh reiniciar

Conclusión

Después de aplicar los cambios anteriores a su Ssh servidor, ahora su servidor es mucho más seguro que antes y no es fácil para un atacante de fuerza bruta hackear su Ssh servidor.