%20usando%20launchd%20en%20Mac%20OS%20X%3F.png)
No tengo experiencia con launchd pero me gustaría configurar Tor y Polipo como un servicio que se reinicia automáticamente aproximadamente cada 24 horas. ¿Cómo puedo hacer esto?
Respuesta1
Para Tor, puede usar este plist de lanzamiento para que se inicie al iniciar el sistema. (No es necesario que un usuario inicie sesión, lo cual es ideal para servidores y personas que ejecutan un puente o nodo que estará activo las 24 horas del día, los 7 días de la semana).
Guarde este archivo /Library/LaunchDaemons/org.torproject.tor.plist
(necesitará privilegios de root para ello, así que utilícelo sudo
).
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Disabled</key>
<false/>
<key>Label</key>
<string>org.torproject.tor</string>
<key>ProgramArguments</key>
<array>
<string>/path/to/your/binary/of/tor</string>
<string>-f</string>
<string>/path/to/your/torrc</string>
</array>
<key>RunAtLoad</key>
<true/>
<key>OnDemand</key>
<false/>
<key>UserName</key>
<string>userNameToRunTorUnder-UsuallyTorOrYourOwnUsershortname</string>
<key>GroupName</key>
<string>daemon</string>
</dict>
</plist>
Reemplace la siguiente información con la que coincida con su sistema:
/path/to/your/binary/of/tor
Esto suele ocurrir /usr/local/bin/tor
si ha instalado Tor desde la fuente o /Applications/Vidalia.app/Contents/MacOS/tor
si desea utilizar el binario Tor de Vidalia. O búsquelo which tor
en su sistema.
/path/to/your/torrc
Si está ejecutando Tor como un usuario independiente, esto debería estar en .torrc
el directorio de inicio de ese usuario. Es necesario especificar elcamino absolutoa este archivo. Por ejemplo, si su usuario se llamacolinay reside en /Users/tor
entonces ese camino sería/Users/tor/.torrc
userNameToRunTorUnder-UsuallyTorOrYourOwnUsershortname
Este es el nombre de usuario con el que se ejecutará tor
. Si tiene un usuario independiente (que probablemente se llamarácolina) luego usa ese; de lo contrario, puedes usar prácticamente cualquier otro nombre de usuario. Si esto es sólo para usted, conviértalo en su propio nombre corto de usuario. (También conocido como el nombre de su directorio de inicio).
Asegúrese de que los privilegios del elemento launchd sean seguros según lo exige launchd.
sudo chown root:wheel /Library/LaunchDaemons/org.torproject.tor.plist
sudo chmod 755 /Library/LaunchDaemons/org.torproject.tor.plist
Luego ejecútelo con
sudo launchctl load -w /Library/LaunchDaemons/org.torproject.tor.plist
Puedes usar un elemento muy similar para lanzar polipo. Guarde este elemento lanzado como/Library/LaunchDaemons/fr.jussieu.pps.polipo.plist
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Disabled</key>
<false/>
<key>Label</key>
<string>fr.jussieu.pps.polipo</string>
<key>ProgramArguments</key>
<array>
<string>/path/to/your/binary/of/polipo</string>
<string>-c</string>
<string>/path/to/your/polipo.conf</string>
</array>
<key>RunAtLoad</key>
<true/>
<key>OnDemand</key>
<false/>
<key>UserName</key>
<string>userNameToRunPolipoUnder-UsuallyPolipoOrYourOwnUsershortname</string>
<key>GroupName</key>
<string>daemon</string>
</dict>
</plist>
Nuevamente reemplace la siguiente información con la que coincida con su sistema:
/ruta/a/tu/binario/de/polipo
Si desea utilizar el de Vidalia, utilice /Applications/Vidalia.app/Contents/MacOS/polipo; de lo contrario, averigüe dónde está su binario polipo which polipo
. (Por ejemplo, MacPorts instala esto en /opt/local/bin/polipo
)
/path/to/your/polipo.conf
Nuevamente, si desea utilizar el archivo proporcionado por Vidalia /Applications/Vidalia.app/Contents/Resources/polipo.conf
o utilizar elcamino absolutoa su configuración personalizada.
userNameToRunPolipoUnder-UsuallyPolipoOrYourOwnUsershortname
Puede ser el mismo nombre de usuario con el que ejecuta tor
, pero también puede ser un usuario independiente. Me gusta tener mis demonios separados.
Nuevamente, asegúrese de que los privilegios del elemento launchd sean seguros según lo exige launchd.
sudo chown root:wheel /Library/LaunchDaemons/fr.jussieu.pps.polipo.plist
sudo chmod 755 /Library/LaunchDaemons/fr.jussieu.pps.polipo.plist
Luego ejecútelo con
sudo launchctl load -w /Library/LaunchDaemons/fr.jussieu.pps.polipo.plist
Advertencia: esta configuración nonoreinicie los demonios cada 24 horas según lo solicitado. No creo que sea necesario ya que nunca he tenido problemas de estabilidad con tor
. (He estado ejecutando nodos durante varios años en Mac OS X).
tor
hacenomanejar la suspensión del sistema en absoluto. Entonces, si pones tu Mac en modo de suspensión, debes reiniciarla tor
para que vuelva a construir circuitos de manera confiable.
Esta descripción está destinada a Mac que ya están funcionando de todos modos. Es posible hacer que esto se ejecute como su usuario y solo cuando inicie sesión gráficamente sin requerir root
privilegios.
Eso debería ser todo.
PD: tenga en cuenta que tor
está destinado a permitir el acceso donde se produce el bloqueo y la censura, así como el anonimato y la privacidad en línea yPor qué ejecutar BitTorrent tor
no es una buena idea.
Respuesta2
lingónestá descontinuado pero aún funciona y es la mejor herramienta para administrar el lanzamiento si no tienes experiencia.