Como posso executar o Tor e o Polipo (e reiniciar automaticamente) usando o launchd no Mac OS X?

Como posso executar o Tor e o Polipo (e reiniciar automaticamente) usando o launchd no Mac OS X?

Não tenho experiência com o launchd, mas gostaria de configurar o Tor e o Polipo como um serviço que reinicia automaticamente a cada 24 horas ou mais. Como posso fazer isso?

Responder1

Para tor, você pode usar este launchd plist para que ele seja iniciado na inicialização do sistema. (Não há necessidade de um usuário estar logado, o que é ideal para servidores e pessoas que executam uma ponte ou nó que deve funcionar 24 horas por dia, 7 dias por semana.)

Salve este arquivo /Library/LaunchDaemons/org.torproject.tor.plist(você precisará de privilégios de root para isso, então use 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>

Substitua as informações a seguir pelas que correspondem ao seu sistema:

/path/to/your/binary/of/tor Isso geralmente ocorre /usr/local/bin/torse você instalou o tor a partir do código-fonte ou /Applications/Vidalia.app/Contents/MacOS/torse deseja usar o binário tor do Vidalia. Ou procure-o which torem seu sistema.

/path/to/your/torrc Se você estiver executando o tor como um usuário separado, ele deverá estar .torrcno diretório inicial desse usuário. Você precisa especificar ocaminho absolutopara este arquivo. Por exemplo, se o seu usuário se chamaparae reside /Users/torentão esse caminho seria/Users/tor/.torrc

userNameToRunTorUnder-UsuallyTorOrYourOwnUsershortname Este é o nome de usuário para execução tor. Se você tiver um usuário separado (que provavelmente será nomeadopara) então use esse, caso contrário você pode usar praticamente qualquer outro nome de usuário. Se isso for apenas para você, crie seu próprio nome de usuário. (Também conhecido como o nome do seu diretório inicial.)

Certifique-se de que os privilégios do item launchd sejam seguros conforme exigido pelo launchd.

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

Em seguida, inicie-o com sudo launchctl load -w /Library/LaunchDaemons/org.torproject.tor.plist

Você pode usar um item muito semelhante para lançar a polipo. Salve este item do Launchd 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>

Substitua novamente as seguintes informações pelas que correspondem ao seu sistema: /caminho/para/seu/binário/de/polipo Se você quiser usar o da Vidalia, use /Applications/Vidalia.app/Contents/MacOS/polipo, caso contrário, descubra onde está o seu binário polipo which polipo. (Por exemplo, MacPorts instala isso em /opt/local/bin/polipo)

/path/to/your/polipo.conf Novamente, se você quiser usar o arquivo fornecido pela Vidalia /Applications/Vidalia.app/Contents/Resources/polipo.confou usar ocaminho absolutoà sua configuração personalizada.

userNameToRunPolipoUnder-UsuallyPolipoOrYourOwnUsershortname Este pode ser o mesmo nome de usuário com o qual você executa tor, mas também pode ser um usuário separado. Eu gosto de ter meus daemons separados.

Novamente, certifique-se de que os privilégios do item launchd sejam seguros conforme exigido pelo launchd.

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

Em seguida, inicie-o com sudo launchctl load -w /Library/LaunchDaemons/fr.jussieu.pps.polipo.plist

Advertência: esta configuração faznãoreinicie os daemons a cada 24h conforme solicitado. Não acho que seja necessário, pois nunca tive problemas de estabilidade com o tor. (Tenho executado nós há vários anos no Mac OS X.)

torfaznãolidar com a suspensão do sistema. Portanto, se você colocar seu Mac em suspensão, será necessário reiniciá-lo torpara que ele construa circuitos novamente de maneira confiável.

Esta descrição destina-se a Macs que já estão funcionando de qualquer maneira. É possível fazer isso rodar como seu usuário e somente quando você fizer login graficamente sem exigir rootprivilégios.

Deveria ser isso.

PS: Lembre-se de que torisso visa permitir o acesso onde ocorre bloqueio e censura, bem como o anonimato e a privacidade online epor que executar o BitTorrent tornão é uma boa ideia.

Responder2

Lingonfoi descontinuado, mas ainda funciona e é a melhor ferramenta para gerenciar o launchd se você não tiver experiência.

informação relacionada