Wie Sie aus Ihrem Raspberry Pi einen Megalith herunterladen können

Wie Sie aus Ihrem Raspberry Pi einen Megalith herunterladen können / DIY

Tun Sie Ihren Teil für das Globale “Linux-Vertriebsnetz” durch den Bau eines dedizierten, sicheren Megaliths zum Herunterladen von Torrent, der kaum 10 W Strom verbraucht. Dies ist möglich und basiert natürlich auf einem Raspberry Pi.

Herunterladen und Seeding (Sie säen, richtig? Gute Menschen säen sich mindestens mit einem Verhältnis von 2,0). ist eine anstrengende Aufgabe für jeden normalen Computer und bedeutet, dass Sie weitaus mehr Strom saugen, als Sie sollten, wenn Sie ihn über Nacht lassen müssen. Was wäre, wenn Sie diese Aufgabe auf einen Raspberry Pi mit geringer Leistung übertragen könnten, der klein genug ist, um unter einem Dielenbrett Platz zu finden, und kaum 10 W Leistung bricht, um alles zu erledigen. Genau das zeige ich Ihnen heute.

Hier ist der Plan:

  • Richten Sie einen Raspberry Pi mit etwas USB-Speicher ein und verschieben Sie das Systemlaufwerk auf USB, um die Lebensdauer unserer SD-Karte zu verlängern.
  • Teilen Sie das über das Netzwerk.
  • Konfigurieren Sie ein VPN so, dass der gesamte Datenverkehr sicher über das VPN geleitet wird. Wenn die Verbindung fehlschlägt, wird alles gestoppt. Wir möchten nicht, dass der ISP weiß, welche Linux-Distribution wir bevorzugen.
  • Installieren Sie einen fernverwaltbaren Torrent-Client, Transmission.

Hört sich kompliziert an, nicht wahr? Nicht mehr als ein paar hundert Terminalbefehle, das versichere ich Ihnen. Viele dieser Überlappungen mit unserem Raspberry Pi NAS Verwandeln Sie Ihren Raspberry Pi in eine NAS-Box. Verwandeln Sie Ihren Raspberry Pi in eine NAS-Box. Haben Sie ein paar externe Festplatten und einen Himbeer-Pi? Machen Sie daraus ein billiges, vernetztes, vernetztes, angeschlossenes Speichergerät. Das Endergebnis ist sicherlich nicht so gut wie das Tutorial. Wenn Sie also nicht so sehr an der Torrenting- und VPN-Seite interessiert sind, sollten Sie dies lieber überprüfen.

USB Speicher

Beginnen Sie mit einer neuen Installation von Raspian, schließen Sie die Ethernet-Schnittstelle an und schließen Sie Ihren USB-Speicher an (über einen USB-Hub mit eigener Stromversorgung, oder Sie werden wahrscheinlich später wie ich auf Fehler stoßen). Melden Sie sich remote mit der Standardkombination aus pi / raspberry-Benutzername und Kennwort an, und führen Sie dann Folgendes aus:

sudo raspi-config

Ändern Sie die Größe der Speicherkapazität, die über die Grafik bereitgestellt wird, auf 16 Megabyte. Wir werden diese vollständig kopflos ausführen, sodass Sie keinen Grafikspeicher benötigen. Beenden Sie, und lassen Sie uns einige Partitionen auf dem USB einrichten. Wir müssen mindestens zwei einrichten - eine für das System, um die Lebensdauer der SD-Karte zu erhalten, und die andere für das Speichern von Downloads. Finden Sie zuerst heraus, welches Laufwerk Ihr USB-Laufwerk ist.

tail / var / log / messages

In meinem Fall war es leicht zu identifizieren “sda”. Passen Sie in diesem Sinne den folgenden Befehl an, um das Zeichen einzugeben fdisk Dienstprogramm auf dem entsprechenden Gerät.

sudo fdisk / dev / sda

Drücken Sie p aktuelle Partitionen auflisten. Um vorhandene zu löschen, drücken Sie d. Erstellen Sie eine neue primäre Partition mit n, dann p. Wenn Sie nach der Größe gefragt werden, geben Sie ein +8G. Machen Sie jetzt eine weitere Partition für Ihre Torrent-Daten (wieder primäre) oder weitere Partitionen, wenn Sie möchten. W schreibt die neue Partitionszuordnung auf das Laufwerk, wenn Sie fertig sind.

Nachdem die neue Tabelle geschrieben wurde, formatieren Sie die Laufwerke mit den folgenden Befehlen als linux ext4. Verwenden Sie zusätzliche Befehle, wenn Sie Ihr Laufwerk mit mehr als zwei Partitionen partitioniert haben.

sudo mkfs.ext4 / dev / sda1 sudo mkfs.ext4 / dev / sda2 sudo mkdir / mnt / systemlaufwerk sudo mkdir / mnt / torrents sudo mount / dev / sda1 / mnt / systemlaufwerk sudo mount / dev / sda2 / mnt / torrents df - h 

Der letzte Befehl bestätigt, dass Sie die Partitionen korrekt gemountet haben. Als nächstes möchten wir die SD-Kartendaten auf das Laufwerk kopieren. Dadurch wird die Lebensdauer verlängert, da keine ständigen Lese- / Schreibvorgänge in Caches usw. erforderlich sind. Installieren rsync um dies zu tun:

sudo apt-get installieren rsync sudo rsync -axv / / mnt / systemdrive 

Dadurch wird eine lange Reihe von Dateikopien initiiert, also drehen Sie Ihre Finger ein wenig.

Sudo cp /boot/cmdline.txt /boot/cmdline.orig sudo nano /boot/cmdline.txt 

Passen Sie dies an, um zu lesen:

dwc_otg.lpm_enable = 0 console = ttyAMA0,115200 kgdboc = ttyAMA0,115200 console = tty1 root = / dev / sda1 rootfstype = ext4 Aufzug = Deadline rootwait rootdelay = 5 

Als nächstes ändern fstab um sie beim Start zu montieren.

sudo nano / etc / fstab 

Fügen Sie die folgenden Zeilen hinzu:

/ dev / sda1 / ext4 voreingestellt, noatime 0 1 / dev / sda2 / mnt / torrents ext4 voreingestellt 0 2 

Kommentieren Sie die folgende Zeile aus, die sich auf die SD-Karte bezieht:

# / dev / mmcblk0p2 / ext4 Standardwerte, Nullzeit 0 1 

Starten Sie den Pi mit

Sudo Neustart 

Sortiert Ihr Pi wird jetzt sowohl eine Stammdatenpartition als auch Ihre Torrents-Partition einhängen

Teilen Sie das Laufwerk: Samba

Vergewissern Sie sich, dass wir zuerst aktualisiert wurden, entfernen Sie Wolfram Mathematica-Pakete, die mir immer Probleme bereitet haben, wenn Sie absolut alles auf dem Pi machen (etwas, was mit math-Kernel zu tun hat), und installieren Sie dann die erforderlichen Pakete

Sudo Apt-Get Update Sudo Apt-Get Dist-Upgrade Sudo Apt-Get entfernen Wolfram-Engine Sudo Apt-Get installieren Samba Samba-Common-Bin Sudo Nano /etc/samba/smb.conf 

Schlagen STRG-W und Typ “Sicherheit” um die folgende Zeile zu finden, und unkommentiere es.

Sicherheit = Benutzer 

Fügen Sie Folgendes hinzu, um den freigegebenen Ordner für Torrents zu definieren:

[Torrents] Kommentar = Torrents Pfad = / mnt / torrents gültige Benutzer = @user force group = Benutzer erstellen Maske = 0775 Force Erstellungsmodus = 0775 Sicherheitsmaske = 0775 Force Sicherheitsmodus = 0775 Verzeichnismaske = 2775 erzwingen Verzeichnismodus = 2775 Verzeichnissicherheit mask = 2775 erzwinge Verzeichnissicherheitsmodus = 2775 browseable = yes writeable = yes guest ok = nein nur lesen = nein 

Starten Sie den Samba-Dienst neu:

Sudo-Dienst Samba neu starten 

Als Nächstes müssen wir einen Benutzer zum System hinzufügen. Ersetzen “Jamie” mit Ihrem gewünschten Benutzernamen, mit dem Sie sich anmelden, um auf den freigegebenen Ordner zuzugreifen. Die folgenden Befehle fordern Sie dann auf, Ihre Passwörter zu erstellen, den ersten auf Systemebene und den nächsten für Samba. Ändern Sie die letzten Befehle, wenn Sie Ihr Datenlaufwerk etwas anderes aufgerufen haben (und hier eine Einführung in den Besitz von Dateien in Linux)..

sudo useradd jamie -m -G Benutzer sudo passwd jamie sudo smbpasswd -a jamie sudo chown pi: Benutzer / mnt / torrents chmod g + w / mnt / torrents 

Test - Sie sollten in der Lage sein, eine Verbindung von einem anderen Computer in Ihrem Netzwerk herzustellen und Dateien auf der neuen Freigabe zu lesen / schreiben. Überprüfen Sie, ob sie auch auf dem Pi angezeigt werden ls aus dem / mnt / torrents Mappe.

VPN-Setup

Installieren Sie die erforderlichen Pakete

sudo apt-get install openvpn resolvconf 

Laden Sie die OpenVPN-Konfigurationsdateien von Ihrem Provider herunter. Sie können sich hier eine Liste der besten VPNs anzeigen lassen. Stellen Sie jedoch sicher, dass Sie eines finden, das Torrent-freundlich ist. Ich benutze privacy.io selbst, aber der private Internetzugang ist eine weitere beliebte Option in Torrent-Communities. In jedem Fall sollten Sie eine ZIP-Datei mit Konfigurationen und ein Zertifikat erwerben können. Legen Sie diese in Ihrem Torrents-Ordner in einem Verzeichnis namens openvpn. Ändern Sie den folgenden Befehl so, dass er auf Ihre Konfigurationsdatei verweist, die sich mit großer Wahrscheinlichkeit von der unterscheidet privacyIO.ovpn

sudo openvpn --client --config /mnt/torrents/openvpn/privacyIO.ovpn --ca /mnt/torrents/openvpn/privacy.ca.crt --script-security 2 

Wenn Sie eine solche Ausgabe erhalten, sind Sie gut. Schlagen STRG-C um es zu beenden. Es ist ärgerlich, das Passwort eingeben zu müssen, und wir müssen ein paar Änderungen vornehmen, um Start- und Stopp-Skripts hinzuzufügen. Bearbeiten Sie die Konfigurationsdatei (ersetzen Sie erneut privacyIO.ovpn durch die .ovpn-Datei, die Sie von Ihrem Provider erhalten haben.)

nano /mnt/torrents/openvpn/privacyIO.ovpn 

Ändern Sie zuerst die folgende Zeile. Grundsätzlich sagen wir, dass wir den Benutzernamen und das Passwort in einer Datei speichern pass.txt

auth-user-pass /mnt/torrents/openvpn/pass.txt 

Speichern Sie und geben Sie ein:

nano /mnt/torrents/pass.txt 

Geben Sie Ihren Benutzernamen in der ersten Zeile und das Passwort in der nächsten Zeile ein. Speichern Sie und versuchen Sie erneut, eine Verbindung herzustellen:

sudo openvpn --client --config /mnt/torrents/openvpn/privacyIO.ovpn --ca /mnt/torrents/openvpn/privacy.ca.crt --Skript-Sicherheit 2

Sie sollten sich nicht abmelden, um sich diesmal anzumelden. Yay! Öffnen Sie anschließend die Konfigurationsdatei erneut und fügen Sie die folgenden Zeilen hinzu:

route-up /mnt/torrents/openvpn/route-up.sh down-pre down /mnt/torrents/openvpn/down.sh 

Dies gibt einige Skripts an, die wir später erstellen werden, um Aufgaben auszuführen, wenn die Verbindung erfolgreich hergestellt wird oder unterbrochen wird. Stellen Sie sicher, dass Sie in der sind mnt / torrents / openvpn Verzeichnis, dann führen Sie folgendes aus:

nano route-up.sh 

Fügen Sie Folgendes hinzu, um sicherzustellen, dass Datenverkehr über das VPN gesendet wird:

#! / bin / sh iptables -t nat -I POSTROUTING -o tun0 -j MASQUERADE 

Als nächstes erstellen Sie das down.sh-Skript

nano down.sh 

Hinzufügen:

#! / bin / sh iptables -t nat -D POSTROUTING -o tun0 -j MASQUERADE 

Zum Schluss möchten wir, dass ein Skript die Verbindung öffnet, anstatt sie von der Befehlszeile aus zu starten.

nano vpn.sh 

Fügen Sie den VPN-Startbefehl von vorher ein. Falls Sie vergessen haben:

sudo openvpn --client --config /mnt/torrents/openvpn/privacyIO.ovpn --ca /mnt/torrents/openvpn/privacy.ca.crt --script-security 2 

Machen Sie nun alle diese Skripts ausführbar und starten Sie das VPN-Skript beim Start.

chmod + x down.sh chmod + x route-up.sh chmod + x vpn.sh sudo nano /etc/rc.local 

Fügen Sie die folgende Zeile vor dem ein Ausfahrt 0 Linie. Wir sagen es nur, um dieses Skript beim Start zu starten.

/mnt/torrents/openvpn/vpn.sh 

Starten Sie schließlich Ihr System erneut.

Melden Sie sich erneut an und starten Sie ifconfig. Sie wissen, dass es funktioniert, wenn Sie einen Eintrag für sehen tap0 (oder tun0), und können eine Webseite erfolgreich rollen:

curl //www.makeuseof.com 

Der Torrent-Client

Fast jetzt da. Schließlich werden wir Transmission installieren, die leicht ist und eine schöne Web-GUI hat. Mit den folgenden Befehlen wird der Daemon installiert, dann angehalten, da er zuerst konfiguriert werden muss. Dann wird die Einstellungsdatei zur Bearbeitung geöffnet.

sudo apt-get install Übertragungsdämon sudo /etc/init.d/transmission-daemon stop sudo nano /etc/transmission-daemon/settings.json 

Veränderung “RPC-Authentifizierung erforderlich” zu falsch; Veränderung “RPC-Whitelist” Um Ihr lokales Subnetz aufzunehmen, zum Beispiel:

"rpc-whitelist": "127.0.0.1,10.0.1. *", 

Fügen Sie Folgendes hinzu oder passen Sie diese an, falls bereits vorhanden:

"download-dir": "/ mnt / torrents", "watch-dir": "\ / mnt \ / torrents \ /", "watch-dir-enabled": true, "umask": 2, 

Bearbeiten Sie als Nächstes die Startdatei des Daemons, um einige Berechtigungsprobleme zu lösen.

sudo nano /etc/init.d/transmission-daemon 

Ändere das USER = Übertragungs-Daemon zu USER = root. Laden Sie den Daemon neu.

Sudo-Service-Übertragungs-Daemon-Reload 

Zum Schluss installieren wir Avahi-Daemon um ein bonjour / zeroconf-netzwerk einzurichten, müssen wir nicht die IP-Adresse des Pi verwenden, um von einem Browser aus darauf zuzugreifen. Stattdessen können wir die raspberrypi.local Adresse.

sudo apt-get install avahi-daemon 

Angenommen, Ihr Hostname ist der Standard (raspberrypi, kann aber mit raspi-config geändert werden), navigiere zu:

http: //raspberrypi.local: 9091 / Übertragung / web /

Überprüfen Sie zunächst, ob die IP-Adresse Ihres Torrents durch das VPN korrekt getarnt ist. Laden Sie die Test-Torrent-Datei von TorGuard herunter. Die Download-Grafik sieht aus wie eine Ankündigung, ist sie jedoch nicht - und legen Sie sie im freigegebenen Torrents-Ordner ab.

Wir haben Transmission bereits so konfiguriert, dass dieser Ordner auf neue Torrents überwacht wird. Er sollte also sofort hinzugefügt werden. Dann werfen Sie doch mal ein paar legale Linux-Distributionen mit.

Der IP-Prüftorrent sollte zusammen mit der erkannten IP-Adresse einen Fehler zurückgeben. Vergewissern Sie sich, dass es sich nicht um Ihre Heimat-IP-Adresse handelt. Wenn dies der Fall ist, wurde das VPN nicht richtig eingerichtet. Standardmäßig werden alle Torrents, die Sie im Ordner ablegen, in .added umbenannt. Eine .part-Datei sollte erstellt werden, bis die Übertragung abgeschlossen ist. Stellen Sie sicher, dass dies in Ihrem freigegebenen Ordner der Fall ist.

Das ist es! Sie haben jetzt ein äußerst kostengünstiges, sicheres und Torrent-Download-Pi, das Ihre Workstation für bessere Dinge zur Verfügung stellt. Vielleicht möchten Sie jetzt einen UPnP-Server zum Streaming von Medien im Netzwerk hinzufügen oder BitTorrent Sync zum Erstellen Ihres eigenen Cloud-Speichers verwenden. Erstellen Sie Ihren eigenen Cloud-Speicher mit Raspberry Pi und BitTorrent Sync. Erstellen Sie Ihren eigenen Cloud-Speicher mit Raspberry Pi und BitTorrent Sync Glauben Sie dem Hype nicht: Die Cloud ist alles andere als sicher. Aber keine Angst - jetzt können Sie Ihre eigene private, unbegrenzte und sichere Cloud-Speicherplattform einführen. Weiterlesen . Welche Funktionen werden Sie hinzufügen??

Erfahren Sie mehr über: BitTorrent, Raspberry Pi.