Llegué a una situación en la que tenía que acceder a una máquina Linux a través de puTTY. Hice varios intentos de SSH pero no pude conectarme a la máquina. Luego me di cuenta de que mi colega estaba accediendo a la misma máquina Linux como usuario root, y yo también quería acceder como usuario root. Le pedí que se desconectara para poder iniciar sesión como root. ¿Hay alguna forma de limitar el número de inicio de sesión SSH en un sistema operativo Linux? ¿Es este un tipo de característica de seguridad que distingue un sistema operativo basado en Windows con un sistema operativo basado en Linux?
14
Respuestas:
Sí, es posible limitar el número de sesiones de inicio de sesión simultáneas, aunque la mayoría de las distribuciones de Linux no imponen dichos límites en su configuración predeterminada.
Linux es un sistema multiusuario adecuado por diseño y normalmente no debería tener ningún problema con tener múltiples sesiones SSH simultáneas para el mismo usuario.
El servidor SSH puede imponer dichos límites con la
MaxSessions
opción en el archivo de configuración. A través de PAM puede imponer dichos límites y otros ya lo han señalado.fuente
Probablemente tengas límites establecidos
/etc/security/limits.conf
asíCambie el límite (1) a algo más alto si es necesario.
fuente
Intentar convencer a un
sshd
demonio independiente para que limite el número de sesiones está lleno de lagunas. Cosas comoMaxSessions
limitar algo diferente de lo que está hablando el OP. Esshd
ignoralimits.conf
en Linux (de manera similarlogin.conf
en FreeBSD) a menos que configure las cosas correctamente para enrutar todas las sesiones entrantes a través de PAM y utilice primero el módulo PAM configurado adecuadamente para verificar cosas como limits.conf primero. Es difícil hacer que funcione bien.Por otro lado, si no comienzas
sshd
como un demonio independiente, entonces puedes usar las características limitantes en la "cosa" que se generasshd
bajo demanda.Por ejemplo,
inetd
yxinetd
tiene una función de limitación de la conexión (que por defecto suele no imponer ningún límite al número de hijos bifurcados). En el clásicoinetd
, se llama "max-child". Conxinetd
, busque lainstances
perilla de configuración. Por ejemplo,inetd
estilo:Eso limita el número de conexiones ssh concurrentes a 3.
Para aquellos que están tan inclinados,
systemd
pueden reemplazar la función deinetd
, y creo que hay una manera de limitar el número de instancias de un servicio. Ejercicio dejado al lector (¡o agregue un comentario con los detalles!).fuente