macos - una - recuperar contraseña macbook pro sin disco
Evite que el conjunto de red solicite una contraseña (3)
Tengo una pequeña aplicación que uso para cambiar los proxies en mi Mac. Utiliza el comando networksetup
para establecer la configuración del proxy, y eso funcionó bien en Lion. Sin embargo, en Mountain Lion pregunta la contraseña de administrador cada vez que cambio la configuración del proxy.
networksetup está tratando de modificar la configuración de red del sistema. Escriba su contraseña para permitir esto.
¿Hay alguna manera de evitar que esto suceda? ¿O hay una mejor manera de cambiar la configuración del proxy en Cocoa? En Lion, el sistema recordaba cuando ingresé la contraseña, así que tuve que autenticar solo después de reiniciar.
También noté que en Chrome, el complemento Proxy Switchy sufre del mismo comportamiento. Dice
scutil está tratando de modificar la configuración de la red del sistema. Escriba su contraseña para permitir esto.
He estado tratando de resolver esto también. Noté que la página del hombre menciona esto:
Cualquier indicador que tome una contraseña aceptará "-" en lugar de la contraseña para indicar que debe leer la contraseña de stdin.
No estoy seguro de cómo usarlo, pero parece posible ...
Puede establecer el permiso suid
en /usr/sbin/networksetup
y luego el networksetup se ejecutará con el permiso raíz, por lo que ya no necesita ingresar la contraseña.
sudo chmod u+s /usr/sbin/networksetup
Acerca de suid: http://www.linuxnix.com/2011/12/suid-set-suid-linuxunix.html
Utilice sudo para lograr esto agregando una regla sin contraseña para el usuario que desea que pueda ejecutar este comando.
Ejecute visudo para iniciar un editor y modificar el archivo / etc / sudoers
visudo -f /etc/sudoers
Al final del archivo, agrega la línea
$USERNAME ALL=(root) NOPASSWD: /usr/sbin/networksetup
Donde $ USERNAME es, ingrese el nombre de usuario real que desea que brinde acceso sin contraseña al comando networksetup.
- Guarda el archivo
Pruébalo como tu usuario ejecutando
/usr/bin/sudo /usr/sbin/networksetup -version
que hará eco de un mensaje de versión si está configurado correctamente, o pedirá una contraseña si ha cometido un error.
Esta es una ruta mucho más segura porque limita quién puede ejecutar el comando como root para un usuario específico, configurando el binario networksetup en sí mismo. Suid root significa que cualquiera que inicie sesión en el sistema podría modificar la configuración de su red. OSX es un sistema operativo multiusuario, y debe tratarse como tal.
Si eres realmente paranoico, asegúrate de usar la ruta completa cuando llames a / usr / bin / sudo también.