Pregunta:
Tengo un servidor Ubuntu ejecutándose en una instancia EC2. Para iniciar sesión en ese servidor, utilizo un archivo de certificado sin contraseña.
Instalé y configuré vsftpd y creé un usuario (llamémoslo "testuser") para el cual configuré una terminal / bin / false ssh para que solo pueda conectarse a través de sftp y cargar / acceder a archivos en su casa directorio.
Sin embargo, cuando intento conectarme al servidor desde mi computadora, ejecuto
sftp testuser@my-ec2-server
yo obtengo
Permiso denegado (clave pública).
Conexión cerrada
mensajes para que no pueda iniciar sesión.
¿Cómo puedo eliminar el requisito de certificado solo para este usuario (es decir, el usuario "ubuntu" todavía tendrá que usar el archivo de certificado para iniciar sesión a través de ssh), de modo que los clientes sftp normales puedan conectarse usando un nombre de usuario y una contraseña?
Gracias.
PD: usando la AMI oficial de Ubuntu Server 10.10 de canonical, 64 bits en una micro instancia.
Respuesta:
Para lograr lo que desea, debe hacer dos cosas diferentes
- Cambiar la configuración de sshd para aceptar contraseñas
Primero diré que es una mala idea hacer esto, prefiero generar un certificado para su usuario que activar las contraseñas, sin embargo, si desea hacerlo, simplemente edite /etc/ssh/sshd_config
y cámbielo o descomente para que muestra PasswordAuthentication yes
. Una vez hecho esto, reinicie el service ssh restart
sshd service ssh restart
- Permita que los usuarios solo utilicen FTP usando sftp y no tengan shell
Para lograrlo, debe instalar rsh (shell restringido) y cambiar el shell de usuario a su chsh username