Wie kann ich Tor und Polipo mit launchd unter Mac OS X ausführen (und automatisch neu starten)?

Wie kann ich Tor und Polipo mit launchd unter Mac OS X ausführen (und automatisch neu starten)?

Ich habe keine Erfahrung mit launchd, möchte aber Tor und Polipo als Dienst einrichten, der etwa alle 24 Stunden automatisch neu gestartet wird. Wie mache ich das?

Antwort1

Für Tor können Sie diese Launchd-Plist verwenden, um es beim Systemstart zu starten. (Es ist nicht erforderlich, dass ein Benutzer angemeldet ist, was ideal für Server und Personen ist, die eine Bridge oder einen Knoten betreiben, der rund um die Uhr aktiv sein soll.)

Speichern Sie diese Datei /Library/LaunchDaemons/org.torproject.tor.plist(Sie benötigen hierfür Root-Rechte, verwenden Sie also 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>

Ersetzen Sie die folgenden Informationen durch die Angaben, die zu Ihrem System passen:

/path/to/your/binary/of/tor Dies ist normalerweise der Fall /usr/local/bin/tor, wenn Sie Tor aus der Quelle installiert haben oder /Applications/Vidalia.app/Contents/MacOS/tordie Tor-Binärdatei von Vidalia verwenden möchten. Oder suchen Sie which torauf Ihrem System danach.

/path/to/your/torrc Wenn Sie Tor als separater Benutzer ausführen, sollte sich dies .torrcim Home-Verzeichnis dieses Benutzers befinden. Sie müssen dieabsoluter Pfadin diese Datei. Wenn Ihr Benutzer beispielsweise den Namentorund wohnt in /Users/tordann wäre dieser Weg/Users/tor/.torrc

userNameToRunTorUnder-UsuallyTorOrYourOwnUsershortname Dies ist der Benutzername, unter dem die Ausführung erfolgt tor. Wenn Sie einen separaten Benutzer haben (der wahrscheinlichtor), dann verwenden Sie diesen, ansonsten können Sie praktisch jeden anderen Benutzernamen verwenden. Wenn Sie diesen nur für sich selbst verwenden, machen Sie daraus Ihren eigenen Kurznamen. (D. h. den Namen Ihres Home-Verzeichnisses.)

Stellen Sie sicher, dass die Berechtigungen des Launchd-Elements den von Launchd geforderten Anforderungen entsprechen.

sudo chown root:wheel /Library/LaunchDaemons/org.torproject.tor.plist
sudo chmod 755 /Library/LaunchDaemons/org.torproject.tor.plist

Starten Sie es dann mit sudo launchctl load -w /Library/LaunchDaemons/org.torproject.tor.plist

Sie können ein sehr ähnliches Element verwenden, um Polipo zu starten. Speichern Sie dieses Launchd-Element als/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>

Ersetzen Sie wiederum folgende Angaben durch die Angaben, die zu Ihrem System passen: /Pfad/zu/Ihrer/Binärdatei/von/polipo Wenn Sie die von Vidalia verwenden möchten, verwenden Sie /Applications/Vidalia.app/Contents/MacOS/polipo, andernfalls finden Sie mit heraus, wo sich Ihre Polipo-Binärdatei befindet which polipo. (MacPorts installiert dies beispielsweise in /opt/local/bin/polipo)

/path/to/your/polipo.conf Wenn Sie die von Vidalia bereitgestellte Datei verwenden möchten /Applications/Vidalia.app/Contents/Resources/polipo.confoder dieabsoluter Pfadzu Ihrer benutzerdefinierten Konfiguration.

userNameToRunPolipoUnder-UsuallyPolipoOrYourOwnUsershortname Dies kann derselbe Benutzername sein, tormit dem Sie arbeiten, es kann aber auch ein anderer Benutzer sein. Ich trenne meine Daemons gern.

Stellen Sie erneut sicher, dass die Berechtigungen des Launchd-Elements den von Launchd geforderten Anforderungen entsprechen.

sudo chown root:wheel /Library/LaunchDaemons/fr.jussieu.pps.polipo.plist
sudo chmod 755 /Library/LaunchDaemons/fr.jussieu.pps.polipo.plist

Starten Sie es dann mit sudo launchctl load -w /Library/LaunchDaemons/fr.jussieu.pps.polipo.plist

Vorbehalt: Dieses SetupnichtStarten Sie die Daemons wie gefordert alle 24 Stunden neu. Ich glaube nicht, dass das notwendig ist, da ich noch nie Stabilitätsprobleme damit hatte tor. (Ich betreibe Nodes seit mehreren Jahren unter Mac OS X.)

tortutnichtden Ruhezustand des Systems überhaupt nicht handhaben. Wenn Sie Ihren Mac also in den Ruhezustand versetzen, müssen Sie ihn neu starten, tordamit er wieder zuverlässig Schaltkreise aufbaut.

Diese Beschreibung ist für Macs gedacht, die ohnehin einsatzbereit sind. Es ist möglich, dies als Ihr Benutzer und nur bei grafischer Anmeldung auszuführen, ohne dass rootBerechtigungen erforderlich sind.

Das sollte es sein.

PS: Bitte beachten Sie, dass dies tordazu gedacht ist, den Zugang dort zu ermöglichen, wo Sperren und Zensur stattfinden, sowie Anonymität und Privatsphäre online undtorWarum es keine gute Idee ist, BitTorrent darüber laufen zu lassen.

Antwort2

Lingonwird nicht mehr unterstützt, funktioniert aber immer noch und ist das beste Tool zum Verwalten von launchd, wenn Sie keine Erfahrung haben.

verwandte Informationen