Búsqueda de sitios web

Cómo recibir alertas por correo electrónico de inicio de sesión SSH de usuario y raíz


Siempre que instalamos, configuramos y protegemos servidores Linux en un entorno de producción, es muy importante realizar un seguimiento de lo que sucede con los servidores y quién inicia sesión en el servidor en lo que respecta a la seguridad del servidor.

Porque si alguien inició sesión en el servidor como usuario root usando tácticas de fuerza bruta sobre SSH, entonces piense en cómo destruirá su servidor. Cualquier usuario que obtenga acceso root puede hacer lo que quiera. Para bloquear tales ataques SSH, lea nuestros siguientes artículos que describen cómo proteger los servidores de dichos ataques.

  1. Bloquee ataques de fuerza bruta al servidor SSH utilizando DenyHosts
  2. Utilice Pam_Tally2 para bloquear y desbloquear inicios de sesión fallidos de SSH
  3. 5 mejores prácticas para asegurar y proteger el servidor SSH

Por lo tanto, no es una buena práctica permitir el inicio de sesión root directo a través de una sesión SSH y recomendar crear cuentas no root con sudo. fuerte> acceso. Siempre que necesite acceso root, primero inicie sesión como usuario normal y luego use su para cambiar al usuario root. Para deshabilitar los inicios de sesión raíz SSH directos, siga nuestro artículo a continuación que muestra cómo deshabilitar y limitar el inicio de sesión raíz en SSH.

  1. Deshabilite el inicio de sesión raíz SSH y limite el acceso SSH

Sin embargo, esta guía muestra una forma sencilla de saber que cuando alguien inicia sesión como root o usuario normal debe enviar una notificación de alerta por correo electrónico a la dirección de correo electrónico especificada junto con la dirección IP. del último inicio de sesión. Entonces, una vez que conozca la dirección IP del último inicio de sesión realizado por un usuario desconocido, puede bloquear el inicio de sesión SSH de una dirección IP particular en el firewall iptables.

  1. Cómo bloquear el puerto en el firewall de Iptables

Cómo configurar alertas de correo electrónico de inicio de sesión SSH en un servidor Linux

Para realizar este tutorial debes tener acceso a nivel root en el servidor y un poco de conocimiento del editor nano o vi y también mailx (Cliente de correo) instalado en el servidor para enviar los correos electrónicos. Dependiendo de su distribución, puede instalar el cliente mailx usando uno de los siguientes comandos.

En Debian/Ubuntu/Linux Mint
apt-get install mailx
En RHEL/CentOS/Fedora
yum install mailx

Establecer alertas de correo electrónico de inicio de sesión raíz SSH

Ahora inicie sesión como usuario root y vaya al directorio de inicio de root escribiendo el comando cd /root.

cd /root

A continuación, agregue una entrada al archivo .bashrc. Este archivo establece variables de entorno local para los usuarios y realiza algunas tareas de inicio de sesión. Por ejemplo, aquí configuramos una alerta de inicio de sesión por correo electrónico.

Abra el archivo .bashrc con el editor vi o nano. Recuerde que .bashrc es un archivo oculto, no lo verá si ejecuta el comando ls -l. Tienes que usar el indicador -a para ver archivos ocultos en Linux.

vi .bashrc

Agregue la siguiente línea completa al final del archivo. Asegúrese de reemplazar "ServerName " con un nombre de host de su servidor y cambie "[email  " con su dirección de correo electrónico.

echo 'ALERT - Root Shell Access (ServerName) on:' `date` `who` | mail -s "Alert: Root Access from `who | cut -d'(' -f2 | cut -d')' -f1`" [email 

Guarde y cierre el archivo, cierre la sesión y vuelva a iniciarla. Una vez que inicie sesión a través de SSH, se ejecutará un archivo .bashrc de forma predeterminada y le enviará una dirección de correo electrónico de la alerta de inicio de sesión raíz.

Ejemplo de alerta por correo electrónico
ALERT - Root Shell Access (Database Replica) on: Thu Nov 28 16:59:40 IST 2013 tecmint pts/0 2013-11-28 16:59 (172.16.25.125)

Establecer alertas de correo electrónico de inicio de sesión de usuario normal SSH

Inicie sesión como usuario normal (tecmint) y vaya al directorio de inicio del usuario escribiendo el comando cd /home/tecmint/.

cd /home/tecmint

A continuación, abra el archivo .bashrc y agregue la siguiente línea al final del archivo. Asegúrese de reemplazar los valores como se muestra arriba.

echo 'ALERT - Root Shell Access (ServerName) on:' `date` `who` | mail -s "Alert: Root Access from `who | cut -d'(' -f2 | cut -d')' -f1`" [email 

Guarde y cierre el archivo, cierre sesión y vuelva a iniciar sesión. Una vez que vuelva a iniciar sesión, se ejecutará un archivo .bashrc y le enviará una dirección de correo electrónico de la alerta de inicio de sesión del usuario.

De esta manera, puede configurar una alerta por correo electrónico para que cualquier usuario reciba alertas de inicio de sesión. Simplemente abra el archivo .bashrc del usuario, que debería ubicarse en el directorio de inicio del usuario (es decir, /home/username/.bashrc) y configure las alertas de inicio de sesión como se describe anteriormente.