Necesito una manera simple y fácil de encarcelar a los usuarios en sus directorios de inicio en Oneiric. ¿Tiene una configuración simple para encarcelar a los usuarios, con ayuda completa o algunos buenos enlaces web?
Estaría ofreciendo un servidor público gratuito en línea con 10 a 20 GB de espacio libre. No sé cuantos usuarios. Quiero darles SSH y SFTP para que puedan conectarse a través de FileZilla.
Respuestas:
Jailkit es un conjunto de utilidades que pueden limitar las cuentas de usuario a un árbol de directorios específico y a comandos específicos. Configurar una cárcel es mucho más fácil usando las utilidades Jailkit que hacerlo "a mano". Una cárcel es un árbol de directorios que crea dentro de su sistema de archivos; el usuario no puede ver ningún directorio o archivo que esté fuera del directorio de la cárcel. El usuario está encarcelado en ese directorio y sus subdirectorios.
Descargar e instalar:
http://olivier.sessink.nl/jailkit/index.html#download
Preparando la cárcel
Ahora es el momento de configurar el directorio de la cárcel. Los usuarios encarcelados verán este directorio como el directorio raíz del servidor. Elegí usar / home / cárcel:
jk_init se puede usar para crear rápidamente una cárcel con varios archivos o directorios necesarios para una tarea o perfil específico (haga clic en él y lea todos los detalles).
Agregar un usuario
Agregue un nuevo usuario con un directorio de inicio y bash shell, y establezca la contraseña:
Ahora es el momento de encarcelar a este usuario
usa el siguiente comando:
Su
/etc/passwd
debe contener algo como esto ahora:Habilitar bash
Al usar jk_cp, las bibliotecas de bash se copian en la cárcel:
Editar
/home/jail/etc/passwd
reemplace esta línea:
con este:
Mantenimiento
Mediante el uso de
jk_update
actualizaciones en el sistema real se puede actualizar en la cárcel.Una prueba en seco mostrará lo que está sucediendo:
Sin el argumento -d se realiza la actualización real. Más operaciones de mantenimiento se pueden encontrar aquí.
(En caso de
/home/jail/opt
que falte, créelo conmkdir -p /home/jail/opt/
Yjk_update -j /home/jail
vuelva a ejecutar )Dar acceso a otros directorios
Puede montar carpetas especiales, que el usuario de la cárcel puede acceder ahora. P.ej:
Ayuda tomada
fuente
No puede limitarlos a / home ya que necesitan acceso a los archivos binarios del sistema y archivos bash y de configuración en / etc.
En mi opinión, el método más fácil de proteger a los usuarios es usar apparmor.
Haces un enlace duro
Agrega jailbash a / etc / shells
Luego asigna jailbash al shell de los usuarios y luego escribe un perfil de apparmor para jailbash que permite un acceso mínimo.
Tendrá que escribir un perfil de apparmor usted mismo, pero tengo un perfil con el que podría comenzar
http://bodhizazen.com/aa-profiles/bodhizazen/ubuntu-10.04/usr.local.bin.jailbash
fuente
You can not confine them to /home as they need access to the system binaries and bash and configuration files in /etc
No hay nada que le impida vincular / copiar archivos que cree que necesitan.jailkit
una herramienta que el OP menciona.Es difícil adivinar qué propósito querrás lograr. Si es para negar ssh / sftp mientras se proporciona acceso encarcelado a través de FTP ... fácil:
Agregue a / etc / shells un nuevo shell:
Agrega una línea:
Salvar. Para cada usuario que desee denegar ssh / sftp, cambie el shell del usuario:
Ahora userx no puede iniciar sesión a través de ssh / sftp.
Instalar vsftpd:
Edite el archivo de configuración:
Y algunos cambios ...
Salvar. Reiniciar vsftpd:
fuente
Puede verificarlo
rbash
como un shell para sus usuarios.Buscar
RESTRICTED SHELL
secciónO mire en esta página http://linux.die.net/man/1/bash
fuente
rbash
?