LinuxParty
Al ejecutar un sistema multiusuario. La mayoría de los usuarios acceden a los recursos mediante el cliente SSH. ¿Cómo puedo detener la filtración de información del proceso a todos los usuarios en los sistemas operativos Linux? ¿Cómo puedo evitar que los usuarios vean procesos que no les pertenecen en un servidor Linux Debian / Ubuntu / RHEL / CentOS? ¿Hay alguna forma de ocultar el proceso de otros usuarios al ejecutar el comando ps?
Si está utilizando la versión 3.2+ del kernel de Linux (o RHEL / CentOS v6.5+ o superior), puede ocultar el proceso a otros usuarios. Solo el root puede ver todos los procesos y el usuario solo puede ver su propio proceso. Todo lo que tiene que hacer es volver a montar el sistema de archivos /proc con la opción "hidepid" de refuerzo del kernel de Linux . Esto oculta el proceso de todos los demás comandos como ps, top, htop, pgrep y demás.
Detalles del tutorial | |
---|---|
Nivel de dificultad | Fácil |
Privilegios de root | sí |
Requisitos | Kernel de Linux v3.2 + |
Est. tiempo de leer | 3 minutos |
Linux oculta los procesos de otros usuarios usando la opción hidepid
Esta opción define cuánta información sobre los procesos queremos que esté disponible para los no propietarios. Los valores son los siguientes:
- hidepid=0 - El comportamiento anterior: cualquiera puede leer todos los archivos /proc / PID / todos los ficheros, todo el mundo (predeterminado).
- hidepid=1 - Significa que los usuarios no pueden acceder a ningún directorio /proc/<pid>, sino a los suyos. Los archivos confidenciales como cmdline, sched *, status ahora están protegidos contra otros usuarios.
- hidepid=2 - Significa que "hidepid=1" más todos los "/proc/ PID/" serán invisibles para otros usuarios. Complica la tarea del intruso de recopilar información sobre los procesos en ejecución, si algún demonio se ejecuta con privilegios elevados, si otro usuario ejecuta algún programa sensible, si otros usuarios ejecutan algún programa, etc.
Obtenga la lista de procesos actuales en Linux
Correr:
top
htop
ps aux
El comando ps que muestra el proceso del usuario root y estoy conectado como un usuario regular
Protección del kernel de Linux: ocultar procesos a otros usuarios
Escriba el siguiente comando de montaje:
# mount -o remount,rw,nosuid,nodev,noexec,relatime,hidepid=2 /proc
Edite /etc/fstabcon un editor de texto como el comando nano / comando vim, ingrese:
# vi /etc/fstab
Actualizar / agregar / modificar la entrada del proceso de la siguiente manera para que la protección se habilite automáticamente en el momento del arranque del servidor:
## adjunta la siguiente línea ##proc /proc proc defaults,nosuid,nodev,noexec,relatime,hidepid=2 0 0
Guarde y cierre el archivo. Donde las opciones de montaje de seguridad son las siguientes:
- nosuid: No permite que los bits set-user-ID o set-group-ID tengan efecto.
- nodev: No interpreta caracteres ni bloquea dispositivos especiales en el sistema de archivos.
- noexec: No permite la ejecución directa de ningún binario en el sistema de archivos montado.
- hidepid: La opción define cuánta información sobre los procesos se oculta.
Demostración de Linux: evite que los usuarios vean procesos que no les pertenecen
En este ejemplo, inicié sesión en su equipo: Ejemplos de salidas:
$ ssh usuario@tuequipo
$ ps -ef
$ sudo -s
# mount -o remount,rw,hidepid=2 /proc
$ ps -ef
$ top
$ htop
Consejo: lidiar con aplicaciones que se rompen al implementar esta técnica
Necesitas usar la opción: gid=VALUE_HERE
gid = XXX define un grupo que podrá recopilar la información de todos los procesos (como en el modo hidepid=0). Este grupo debe usarse en lugar de poner un usuario que no sea root en el archivo sudoers o algo así. Sin embargo, los usuarios que no son de confianza (como demonios, etc.) que no deben monitorear las tareas en todo el sistema no deben agregarse al grupo.
Por lo tanto, agregue un usuario llamado monapp al grupo (por ejemplo, administrador) que desea ver la información del proceso y monte /proc de la siguiente manera en /etc/fstab:
proc /proc proc defaults,hidepid=2,gid=admin 0 0
Conclusión
Ahora sabe cómo ocultar los procesos de Linux a otros usuarios y comandos como ps, top, htop y otros. Para obtener más información, consulte las siguientes URL:
- procfs: add hidepid= and gid= mount options
-
Linux
- Cambiar la Hora y la Fecha al sistema Linux
- Montar un directorio remoto, vía NFS, en Linux
- Predicciones de Linux para 2025
- Elementary OS 8: una distribución de Linux para usuarios de Windows y macOS
- Renombrar multiples archivos masivamente en Linux (quitar espacios, cambiar mayúsculas) a la vez en Linux
- He utilizado Linux durante 30 años. Aquí hay 5 razones por las que nunca cambiaré a Windows o MacOS
- Mis predicciones sobre Linux para 2025: será un buen año
- ¿Por qué Torvalds eliminó a los encargados rusos del mantenimiento del núcleo de Linux?
- 10 cosas que siempre hago después de instalar Linux (y por qué tú también deberías hacerlo)
- 7 cosas que nunca hago después de instalar Linux (y por qué tú tampoco deberías)
- Detección de Intrusos: Snort, Base, MySQL, y Apache2 en Ubuntu Linux 7.10
- ¿Por qué no más personas usan Linux en el escritorio? Tengo una teoría que quizás no te guste.
- Los países occidentales ricos lideran la expansión mundial del petróleo y el gas
- Systemd 256.1 aborda la queja de que 'systemd-tmpfiles' podría eliminar inesperadamente su directorio /home
- Por qué un kernel Linux de distribución 'congelada' no es la mejor opción para la seguridad