0 votos

Eliminación de la conexión automática para 802.1X a través del terminal

Así que en el espíritu de esta pregunta Me preguntaba si es posible desactivar la conexión automática 802.1X también a través del terminal. ¿Estoy en lo cierto al suponer que se trata de una configuración del ordenador (lo que significa que si ejecuto este script sin que ningún usuario haya iniciado la sesión, lo sigue desactivando para todos los usuarios existentes y futuros)?

2voto

Geosef Puntos 1

Me llevó algunas horas aprender que se trata de un valor booleano (y no sólo 0 o 1 como informaría 'por defecto') pero finalmente llegué a lo siguiente LoginHook que hace el truco. Como los LoginHooks se ejecutan ejecutan como usuario Root, tienes que 'su' al usuario que está actualmente conectado antes de ejecutar el script a continuación. Como Michele señala a continuación, ese nombre de usuario está disponible como $1 para el Hook-script que se ejecuta como Root. Parece ser un usuario byHost-Setting, aunque SystemPrefs pediría una contraseña de administrador para ajustar esta configuración... Mi hook script que se ejecuta en contexto de usuario tiene el siguiente aspecto:

#!/bin/sh

if [ `whoami` = "root" ]; then
  echo "$0: Must run as regular user, not root! QUIT."
  exit 1
fi

# write new setting 
defaults write -currentHost com.apple.network.eapolcontrol EthernetAutoConnect -bool false

Usando opensnoop(1) o fs_usage(1) no pude ver ningún otro archivo siendo modificado. Espero que esto ayude.

1voto

Envite Puntos 286

Esto es lo que implementamos en el trabajo. Se ejecuta como un login script para cada usuario que entra en el ordenador. Desde OS X 10.9, la ubicación ha cambiado y el nombre del archivo es diferente para cada usuario. El script busca el archivo único para ese usuario y cambia el valor de conexión automática.


#!/bin/bash

### Variables
user=`/usr/bin/logname`
x=$(find ~/Library/Preferences/ByHost -name "com.apple.network.eapolcontrol*.plist")

### Functions

defaults write $x EthernetAutoConnect -bool false

0voto

jacobbaer Puntos 526

Sólo hay que desactivar el Habilitar el sistema automático en la pestaña 802.1x de su opción de interfaz avanzada, ya que es el equivalente al comando de terminal.

0voto

Shiv Puntos 101

No sé cómo puede funcionar esta solución, ya que un LoginHook se ejecuta como root y no como el propio usuario.

Aquí mi solución:

#! /bin/sh
su - $1 -c "defaults -currentHost write com.apple.network.eapolcontrol EthernetAutoConnect -bool false";

Tenga en cuenta que la opción -currentHost hará las cosas con el uuid del host ;-)

Salud, Michele

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