
¿Es posible (y si es así, cómo) hacer lo siguiente con openssh-server
:
- para poder autenticar
root
al usuario con una clave y sin contraseña - poder autenticar a un
non-root
usuario con una clave y sin contraseña - para evitar que el
non-root
usuario inicie sesiónroot
con su propia clave - hacer eso con una sola instancia de
sshd
, usando solo unTCP port
Y sí, soy muy consciente de los riesgos de PermitRootLogin yes
la opción.
Respuesta1
Esto debería funcionar "listo para usar" y no debería requerir nada más que colocar las claves públicas de los usuarios en su archivo .ssh/authorized_keys para el usuario correspondiente en el servidor. (Si este archivo no existe para el usuario, ¡creelo!)
Lo único que debe tener en cuenta es que si la clave pública del usuario no root se agrega a los servidores root/.ssh/authorized_keys, ese usuario no root podrá iniciar sesión como root en el servidor, por lo que para evitar esto, simplemente no agregue su clave al archivo root autorizado_keys.
Ya se ha encontrado con PermitRootLogin, que, por supuesto, debe estar habilitado en el servidor. Puedes (opcionalmente) limitar quién puede iniciar sesión desde dónde (si es que puede hacerlo) agregando una línea como "PermitirUsuarios[correo electrónico protegido] [correo electrónico protegido]usuario2" - que solo permitirá root y usuario1 desde una dirección IP particular, pero usuario2 puede iniciar sesión desde cualquier lugar. Puede ampliar esto con tantas combinaciones de usuario/ip como sea necesario.