Rimozione della connessione automatica per 802.1X tramite terminale

0

Quindi nello spirito di questa domanda mi chiedevo se fosse possibile disabilitare anche la connessione 802.1X automatica tramite terminale. Ho ragione di presumere che si tratta di un'impostazione del computer (nel senso che se eseguo questo script senza che l'utente abbia effettuato l'accesso lo disattiva ancora per tutti gli utenti esistenti e futuri)?

    
posta Philipp 19.12.2012 - 09:03
fonte

4 risposte

2

Mi ci sono volute alcune ore per apprendere che si tratta di un valore booleano (e non solo di 0 o 1 come "default" dovrebbe riportare) ma alla fine ho trovato il seguente LoginHook che fa il trucco. Come LoginHooks ottiene eseguito come utente root, devi 'su' per l'utente attualmente registrato in prima di eseguire lo script qui sotto. Come Michele indica di seguito, quel nome utente è disponibile come $ 1 per Hook-Script in esecuzione come root. Sembra essere un utente byHost-Setting, sebbene SystemPrefs chiedesse una password di amministratore per modificare questa impostazione ... Il mio script di aggancio eseguito nel contesto utente ha il seguente aspetto:

#!/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) Non sono riuscito a vedere altri file modificati. Spero che aiuti.

    
risposta data 12.03.2013 - 16:29
fonte
1

Questo è ciò che abbiamo implementato al lavoro. Funziona come uno script di accesso per ogni utente che accede al computer. Dal momento che OS X 10.9, la posizione è cambiata e il nome del file è diverso per ogni utente. Lo script cerca il file univoco per quell'utente e modifica il valore di connessione automatica.

#!/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
    
risposta data 01.09.2016 - 22:32
fonte
0

Disabilita la casella Attiva connessione automatica nella scheda 802.1x della tua opzione di interfaccia avanzata poiché è l'equivalente del comando del terminale.

    
risposta data 19.12.2012 - 14:16
fonte
0

Non so come questa soluzione possa funzionare, dal momento che un LoginHook viene eseguito come root e non come l'utente stesso.

Ecco la mia soluzione:

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

Si noti che l'opzione -currentHost farà il roba con l'host uuid; -)

Saluti, Michele

    
risposta data 09.04.2013 - 10:38
fonte

Leggi altre domande sui tag