Bloquear aplicaciones específicas en macOS

8

¿Hay alguna forma de bloquear una lista de aplicaciones específicas en macOS?

He buscado soluciones como Cisdem, pero hay algunos agujeros en la forma en que funciona que no me gustan.

  1. A menos que también bloquee el Monitor de actividad, la Terminal y las Preferencias del sistema, simplemente puede salir del proceso Cisdem o crear un nuevo usuario para evitarlo.
  2. Tienes que bloquear el Monitor de actividad, la Terminal y las Preferencias del sistema para que funcione bien.

Quiero bloquear una aplicación para que no se ejecute o incluso se instale en mi Mac. La aplicación se puede instalar a través de la App Store y la web. No estoy seguro de cómo hacer esto. Habilitar los controles parentales no funcionará ya que se necesitan privilegios de administrador.

La aplicación específica que quiero bloquear es Apple Configurator.

¿Alguna idea?

    
pregunta tentmaking 24.01.2018 - 22:59

1 respuesta

6

Use Gatekeeper para controlar el acceso a las aplicaciones

Puedes usar spctl (Gatekeeper) para crear listas de aplicaciones aprobadas y no aprobadas.

Por ejemplo, suponga que desea permitir el correo pero bloquear Chrome.

sudo spctl --add --label "ApprovedApps" /Applications/Mail.app 
sudo spctl --add --label "DeniedApps" /Applications/Chrome.app

El comando anterior "etiquetará" Mail y Chrome como "Aprobado" y "Denegado" respectivamente (puedes usar tus propios descriptores).

Ahora, para habilitar / deshabilitar aplicaciones, ejecuta los comandos:

sudo spctl --enable --label "ApprovedApps" 
sudo spctl --disable --label "DeniedApps" 

La ventaja que esto tiene es que para agregar otra aplicación a cualquiera de las listas, solo tiene que agregar la etiqueta apropiada:

sudo spctl --add --label "ApprovedApps" /Applications/Another.app

Además, puede prohibir que se ejecute el código de Mac App Store (que se encuentra en la página% man_de% man - spctl ).

spctl --disable --label "Mac App Store"

Esto evitará que cualquier persona descargue una aplicación de la tienda de aplicaciones y la instale / ejecute.

Tratar con administradores / man spctl

Como se indica en los comentarios, cualquier cosa que pueda hacer un administrador, otro administrador puede deshacer. El uso de sudoers requiere root, pero editar el archivo sudoers para restringir el acceso a un comando en particular puede evitar que otros usuarios / administradores deshagan sus cambios.

Consulte ¿Cómo evitar que los usuarios de sudo ejecuten comandos específicos? para obtener detalles sobre cómo configurar una "lista blanca con excepción" en su archivo spctl .

Por ejemplo, para permitir que el usuario Sam acceda a todos los comandos excepto sudoers , pondría en el archivo sudoers:

sam ALL = ALL, !/usr/sbin/spctl

Ahora, esta es una forma "rápida y sucia" de impedir el acceso a spctl pero, en última instancia, no es eficaz porque si el otro administrador se da cuenta de su estrategia, todo lo que tiene que hacer es cambiar el nombre del comando y tener acceso.

Desde la página del manual spctl :

  

En general, si un usuario tiene sudo TODO, no hay nada que le impida crear su propio programa que ofrece          ellos una shell raíz (o hacer su propia copia de una shell) independientemente de cualquier '!' elementos en el usuario          especificación.

Para realmente bloquearlo, deberías forzar al otro usuario a sudoers como un usuario diferente (es decir, un operador) o crear una lista blanca de comandos permitidos predeterminados para bloquear todo lo demás. Sin embargo, esto requiere mucho tiempo y es bastante peligroso, ya que puede bloquear a las personas de las funciones críticas.

    
respondido por el Allan 25.01.2018 - 03:12

Lea otras preguntas en las etiquetas