ฉันจะทำให้ Tor และ Polipo ทำงาน (และรีสตาร์ทโดยอัตโนมัติ) โดยใช้ launchd บน Mac OS X ได้อย่างไร


4

ฉันไม่มีประสบการณ์กับ launchd แต่ต้องการติดตั้ง Tor และ Polipo เป็นบริการที่จะรีสตาร์ทโดยอัตโนมัติทุก ๆ 24 ชั่วโมง ฉันจะทำสิ่งนี้ได้อย่างไร

คำตอบ:


6

สำหรับ tor คุณสามารถใช้ตัวเรียกใช้งานนี้เพื่อเริ่มใช้งานได้ที่การเปิดตัวระบบ (ไม่จำเป็นสำหรับผู้ใช้ที่จะเข้าสู่ระบบซึ่งเหมาะสำหรับเซิร์ฟเวอร์และผู้ที่ใช้บริดจ์หรือโหนดที่จะเพิ่มขึ้น 24/7)

บันทึกไฟล์นี้/Library/LaunchDaemons/org.torproject.tor.plist(คุณจะต้องมีสิทธิ์ใช้งานรูทเพื่อใช้งาน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>

แทนที่ข้อมูลต่อไปนี้ด้วยข้อมูลที่ตรงกับระบบของคุณ:

/path/to/your/binary/of/tor นี่เป็นเรื่องปกติ/usr/local/bin/torถ้าคุณติดตั้ง tor จากแหล่งที่มาหรือ/Applications/Vidalia.app/Contents/MacOS/torถ้าคุณต้องการใช้ tor binary จาก Vidalia หรือมองหามันด้วยwhich torในระบบของคุณ

/path/to/your/torrc หากคุณกำลังเรียกใช้ tor ในฐานะผู้ใช้แยกกันควรอยู่.torrcในไดเรกทอรีหลักของผู้ใช้รายนั้น คุณต้องระบุพา ธ สัมบูรณ์ไปยังไฟล์นี้ ตัวอย่างเช่นหากผู้ใช้ของคุณชื่อtorและอยู่ใน/Users/torนั้นเส้นทางนั้นจะเป็น/Users/tor/.torrc

userNameToRunTorUnder-UsuallyTorOrYourOwnUsershortname นี่คือชื่อผู้ใช้ที่จะทำงานtorภายใต้ หากคุณมีผู้ใช้แยกต่างหาก (ซึ่งน่าจะเป็นชื่อtor ) จากนั้นใช้อันนั้นคุณสามารถใช้ชื่อผู้ใช้อื่นได้ หากนี่เป็นเพียงสำหรับคุณเท่านั้นทำให้เป็นชื่อผู้ใช้ของคุณเอง (อาคาชื่อโฮมไดเร็กตอรี่ของคุณ)

ตรวจสอบให้แน่ใจว่าสิทธิพิเศษของรายการ launchd ปลอดภัยตามที่ต้องการโดย launchd

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

จากนั้นเปิดตัวด้วย sudo launchctl load -w /Library/LaunchDaemons/org.torproject.tor.plist

คุณสามารถใช้ไอเท็มที่คล้ายกันมากเพื่อเรียกใช้ polipo บันทึกรายการ Launchd นี้เป็น/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>

แทนที่ข้อมูลต่อไปนี้ด้วยข้อมูลที่ตรงกับระบบของคุณ: / path / to / your / binary / of / polipo หากคุณต้องการใช้ข้อมูลจาก Vidalia ใช้ /Applications/Vidalia.app/Contents/MacOS/polipo ไบนารี polipo which polipoของคุณกับ (ตัวอย่างเช่น MacPorts ติดตั้งสิ่งนี้ใน/opt/local/bin/polipo)

/path/to/your/polipo.conf อีกครั้งหากคุณต้องการใช้ไฟล์ที่ได้รับจากวิดาเลีย/Applications/Vidalia.app/Contents/Resources/polipo.confหรือใช้พา ธ สัมบูรณ์เพื่อกำหนดค่าของคุณเอง

userNameToRunPolipoUnder-UsuallyPolipoOrYourOwnUsershortname นี่อาจเป็นชื่อผู้ใช้เดียวกับที่คุณใช้torแต่อาจเป็นผู้ใช้แยกต่างหาก ฉันชอบแยกภูต

ตรวจสอบให้แน่ใจว่าสิทธิพิเศษของรายการ launchd นั้นปลอดภัยตามที่กำหนดโดย launchd

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

จากนั้นเปิดตัวด้วย sudo launchctl load -w /Library/LaunchDaemons/fr.jussieu.pps.polipo.plist

Caveat: การตั้งค่านี้ไม่ได้รีสตาร์ท daemons ทุก ๆ 24 ชั่วโมง ฉันไม่คิดว่ามันเป็นสิ่งจำเป็นขณะที่ผมไม่เคยมีปัญหาใด ๆ torที่มีความมั่นคงด้วย (ฉันใช้งานโหนดเป็นเวลาหลายปีใน Mac OS X)

torไม่สามารถจัดการระบบ sleep ได้เลย ดังนั้นถ้าคุณทำให้เครื่อง Mac ของคุณเข้าสู่โหมดสลีปคุณจะต้องเริ่มระบบใหม่torเพื่อสร้างวงจรที่เชื่อถือได้อีกครั้ง

คำอธิบายนี้มีไว้สำหรับ Mac ที่เปิดใช้งานอยู่แล้ว เป็นไปได้ที่จะทำให้การดำเนินการนี้เป็นผู้ใช้ของคุณและเฉพาะเมื่อคุณลงชื่อเข้าใช้แบบกราฟิกโดยไม่ต้องการrootสิทธิ์พิเศษ

ที่ควรจะเป็น

PS: โปรดเก็บไว้ในใจว่าtorจะหมายถึงการที่อนุญาตให้เข้าถึงการป้องกันและการตรวจพิจารณาเกิดขึ้นเช่นเดียวกับตัวตนและความเป็นส่วนตัวออนไลน์และทำไมทำงาน BitTorrent มากกว่าtorไม่ได้เป็นความคิดที่ดี


0

Lingonหยุดทำงาน แต่ก็ยังใช้งานได้และเป็นเครื่องมือที่ดีที่สุดในการจัดการ launchd หากคุณไม่มีประสบการณ์


Lingon 2.1.1 ที่ถูกทอดทิ้งยังคงทำงานได้ดีภายใต้ 10.6 SnowLeopard นอกจากนี้ยังมีรุ่นอัปเดต 2.2.1 สำหรับ SnowLeopard ที่ราคา 3.99 €ใน Mac AppStore itunes.apple.com/at/app/lingon/id411211026?mt=12
MacLemon
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.