19 votos

Bloquear aplicaciones específicas en macOS

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

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

  1. A menos que también bloquee Monitor de Actividad, Terminal y Preferencias del Sistema, simplemente puede cerrar el proceso de Cisdem o crear un nuevo usuario para evitarlo.
  2. Debe bloquear Monitor de Actividad, Terminal y Preferencias del Sistema para que funcione bien.

Quiero bloquear una aplicación para que no se ejecute ni se instale en mi Mac. La aplicación puede ser instalada a través de la App Store y la web. No estoy seguro de cómo hacerlo. 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?

21voto

Douglas Puntos 10417

Utilice Gatekeeper para controlar el acceso a aplicaciones

Puede utilizar spctl (Gatekeeper) para crear listas de aplicaciones aprobadas y no aprobadas.

Por ejemplo, suponga que desea permitir Mail pero bloquear Chrome.

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

El comando anterior etiquetará a Mail y Chrome como "Aprobadas" y "Denegadas" respectivamente (puede utilizar sus propios descriptores).

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

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

La ventaja de esto 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/Otra.app

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

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

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

Tratando con Administradores/sudoers

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

Vea Cómo evitar que los usuarios sudo ejecuten comandos específicos para obtener detalles sobre cómo configurar una "lista blanca con excepciones" en su archivo sudoers.

Por ejemplo, para permitir que el usuario Sam tenga acceso a todos los comandos excepto spctl, debería agregar en el archivo sudoers:

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

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

Desde la página man de sudoers:

En general, si un usuario tiene sudo ALL no hay nada que evite que creen su propio programa que les dé un shell de root (o hagan su propia copia de un shell) independientemente de cualquier elemento `!' en la especificación del usuario.

Para realmente asegurarlo, debería obligar al otro usuario a hacer su como un usuario diferente (es decir, operador) o crear una lista blanca de comandos permitidos que bloqueen por defecto todo lo demás. Sin embargo, esto es consumidor de tiempo y bastante peligroso ya que puede bloquear a las personas de funciones críticas.

1 votos

¡Genial! Eso es exactamente lo que estaba buscando. ¡Buen trabajo! ¡Muchas gracias!

0 votos

Realmente impresionante respuesta Allan - ¿no crees que esto no sería factible para prevenir el acceso a archivos o detener el envío de una señal sigkill - cierto? apple.stackexchange.com/questions/332124/…

0 votos

@bmike - Acabo de ver este comentario. Gracias por las palabras amables. En cuanto a sigkill, no creo que puedas evitarlo porque técnicamente, puedes matar tus propios procesos.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X