Tengo un usuario específico (llamémoslo user
a lo largo de esta publicación) en un host que muestra los siguientes errores al intentar realizar ssh mediante autenticación de clave pública:
PTY allocation request failed on channel 0
Direct login access is disallowed
Puedo mitigar el primer error usando ssh user@host "/bin/bash -i"
, pero no puedo superar el segundo error.
Cosas que he probado:
- Puedo
sudo -s
(osudo -i
directamente al usuario como root en el host). - El usuario está bloqueado (
passwd -l user
), lo desbloqueé y le asigné una contraseña. El mismo problema. Sin embargo, puedo hacerlosu - user
como cualquier otro usuario después de desbloquear la cuenta y aplicar una contraseña. - Revisé
/etc/ssh/sshd_config
en el servidor, No hay entradas paraAllowUsers
,,,, .AllowGroups
DenyUsers
DenyGroups
- Puedo utilizar ssh directamente como root sin problemas.
- Creé un nuevo usuario y también pude enviarle ssh directamente.
- La selección de clave ssh confirmada y las claves_autorizadas están configuradas correctamente, sin embargo, no creo que este sea un problema clave.
/etc/passwd
muestra que el usuario ha/bin/bash
configurado para su shell./etc/security/access.conf
está completamente comentado sin ninguna configuración establecida.- reinicié sshd muchas veces.
- No hay ningún
/etc/login.blocks
archivo. /var/log/secure
,/var/log/messages
, nijournalctl -fu sshd
solo mostrarSession open
entoncesSession closed for user user
ssh user@host -vvvvvvv
solo muestra elDirect login access is disallowed
- reinició el host.
Nota: este es un sistema rhel que aún no tiene habilitadas sus suscripciones.
¿Lo que da? ¿Por qué no puedo acceder a esto?
Respuesta1
Lo averigué. Era un script que alguien escribió que restringía el acceso al host. El script se ejecutaba después de que alguien se conectara con el usuario a través de ssh.
Esto se implementó en user
's ~/.ssh/authorized_keys
.
Aquí está la línea que se mostraba en el archivo:
command="/home/user/script/that/was/causing/problems.sh", ssh-rsa ABC123hugepubliccipher==
Después de eliminar la command=
sección, los usuarios pudieron volver a ingresar mediante ssh.