2013-10-30 6 views
18

Spesso quando avvio il web server di sviluppo Django sul mio MacBook (OS X 10.8.5), visualizzerò una finestra popup che dice "Vuoi che l'applicazione 'python' accetti le connessioni di rete in ingresso?" Faccio sempre clic su "Consenti" e posso vedere nella mia Sicurezza le impostazioni sulla privacy di & che "python" è lì ed è impostato su "Consenti connessioni in entrata", ma ottengo comunque questo popup. Ci sono ulteriori passaggi che devo fare per evitare che questo popup riappaia?Aggiungi Python alle opzioni di OS X Firewall?

Grazie.

+0

questione connessa: http://stackoverflow.com/questions/17527700/do-you-want- l'applicazione-per-accettare-la-connessione-in-entrata –

+1

Questo non è offtopic, mi è stato aiutato più volte durante la programmazione del codice Python che utilizza le connessioni di rete. Si prega di prendere i vostri impulsi pedante e riorganizzare alcuni scaffali dei negozi di alimentari, o qualcosa del genere. Qualcuno doveva andare a fare una seconda domanda sulla risposta accettata a causa di questo. –

risposta

58

È possibile risolvere questo problema firmando il file binario dell'applicazione.

Disclaimer: Signing an application yourself will make an application appear more 
secure to the operating system, when in reality it isn’t. Only sign applications 
that you are 100% sure are not spyware or otherwise malicious. If you have any 
doubts, just uninstall/reinstall. 

Parte 1: creare un'identità di firma

La soluzione che sto andando per - la firma l'applicazione me - richiede che io creare un'identità di firma, noto anche come firma del certificato. È molto semplice:

  1. Apri Applicazioni> Utilità> Accesso portachiavi.
  2. Dal menu Accesso portachiavi, selezionare Assistente certificato> Crea certificato.
  3. Inserire un nome per il certificato. Questo nome viene visualizzato nell'utilità Accesso Portachiavi come nome del certificato. Questo è anche il nome che userai quando fai riferimento a questo certificato. Personalmente, ho utilizzato il nome, "My Signing Identity".
  4. Scegliere Firma codice dal menu Tipo certificato.
  5. Scegliere Root Self Signed dal menu di scelta rapida Tipo.
  6. Selezionare la casella di controllo Fammi ignorare i valori predefiniti.
  7. Fare clic su Continua.
  8. Specificare un numero di serie per il certificato. Qualsiasi numero farà finché non si dispone di altri certificati con lo stesso nome e numero di serie.
  9. Fare clic su Continua.
  10. Inserire le informazioni per il certificato. Puoi utilizzare dati reali o falsi, ho usato personalmente dati reali.
  11. Fare clic su Continua.
  12. Accettare i valori predefiniti per il resto delle finestre di dialogo.

Una volta completato, vedrete il vostro certificato in Accesso Portachiavi. Verifica il nome che hai scelto e hai finito con questo passaggio. Molto bene!

Fase 2: (Re) firmare l'applicazione

Ora si devono firmare l'applicazione. Per fare questo, aprire Terminal di nuovo e utilizzare il seguente comando:

codesign -s "My Signing Identity" -f $(which python) 

Verrà visualizzata una finestra

, fare clic su "Consenti".

Ora avvia nuovamente l'applicazione. Otterrai la finestra di dialogo Accetta connessioni in entrata un'ultima volta. Fai clic su "Consenti".

enter image description here

Da ora in poi non dovrebbero più avere più le avvertenze! Ora è possibile godere della sicurezza del proprio firewall attivo senza l'inconveniente di dover cliccare "consentire" costantemente.

credito: La fonte originale che serviva come punto di partenza per questa guida soluzione aggiornata e annotato era https://web.archive.org/web/20140228153242/http://silvanolte.com/blog/2011/01/18/do-you-want-the-application-to-accept-incoming-network-connections

+4

mi ha salvato la vita. – Bobo

+0

Indicazioni molto chiare. Grazie! –

+0

il link accreditato è scomparso ora - speravo di trovare informazioni sul fatto che l'auto-firma di python mi rendesse vulnerabile - qualche suggerimento? – ptim

Problemi correlati