
Joseph Goodman
2
5096
315
Gør din del for det globale “Linux distributionsnetværk” ved at opbygge en dedikeret, sikker torrent-downloadende megalith, der næppe bruger 10 W strøm. Det er muligt, og det vil naturligvis være baseret på en Raspberry Pi.
Download og såning (du gør frø, ikke? Gode mennesker frø til mindst et 2,0-forhold) er en besværlig opgave for enhver almindelig computer, og betyder, at du sutter langt mere elektricitet, end du burde være ved at skulle lade den stå natten over. Hvad nu hvis du kunne aflæse denne opgave til en Raspberry Pi, der er lavt drevet, lille nok til at fylde under et bundplade og knap nok bryde 10W strøm til at gøre det hele. Det er præcis, hvad jeg vil vise dig, hvordan du gør i dag.
Her er planen:
- Opsæt en Raspberry Pi med noget USB-lager, og flyt systemdrevet over til USB for at forlænge vores SD-korts levetid.
- Del det via netværket.
- Konfigurer en VPN, så al trafik dirigeres sikkert over VPN - og alt stopper, hvis forbindelsen mislykkes. Vi ønsker ikke, at ISP skal vide, hvilken Linux-distro vi foretrækker.
- Installer en fjernhåndterbar torrentklient, transmission.
Lyder kompliceret, er det ikke? Ikke mere end et par hundrede terminalkommandoer, jeg forsikrer dig. Meget af dette overlapper med vores Raspberry Pi NAS Vend din Raspberry Pi til en NAS-kasse Vend din Raspberry Pi til en NAS-kasse Har du et par eksterne harddiske liggende og en Raspberry Pi? Lav en billig, lavt drevet netværkstilsluttet lagerenhed ud af dem. Mens slutresultatet bestemt ikke vil være som… tutorial, så hvis du ikke er så interesseret i torrenting og VPN-siden af tingene, kan du tjekke det i stedet.
USB-opbevaring
Begynd med en frisk Raspian-installation og tilslut Ethernet-interface, og sæt dit USB-lager i (via et drevet USB-hub, eller det er sandsynligt, at du vil møde fejl senere, som jeg gjorde) - det behøver ikke at være formateret endnu. Log ind eksternt med kombinationen af brugernavn og adgangskode til pi / hindbær, og kør derefter:
sudo raspi-config
Skift mængden af hukommelse, der er givet over grafik til 16 megabyte - vi kører dette helt hovedløst, så du ikke har brug for grafisk hukommelse. Afslut, og lad os opsætte nogle partitioner på USB. Vi vil konfigurere mindst to - en, der skal bruges til systemet for at bevare vores SD-korts levetid, og det andet til downloads, der skal gemmes. Find først ud af, hvilket drev der er din USB.
hale / var / log / meddelelser
I mit tilfælde var det let at identificere som “sda”. Med det i tankerne skal du justere følgende kommando for at åbne fdisk hjælpeprogram på den passende enhed.
sudo fdisk / dev / sda
Trykke p for at vise aktuelle partitioner. For at slette alle eksisterende skal du trykke på d. Opret en ny primær partition med n, derefter p. Når det beder dig om størrelse, skal du indtaste +8G. Gå nu videre og opret endnu en partition til dine torrentdata (igen, primær) eller flere partitioner også, hvis du ønsker det. W skriver det nye partitionskort til drevet, når du er færdig.
Når den nye tabel er skrevet, skal du bruge følgende kommandoer til at formatere drevene som Linux ext4. Brug ekstra kommandoer, hvis du partitionerede dit drev med mere end to partitioner.
sudo mkfs.ext4 / dev / sda1 sudo mkfs.ext4 / dev / sda2 sudo mkdir / mnt / systemdrive sudo mkdir / mnt / torrents sudo mount / dev / sda1 / mnt / systemdrive sudo mount / dev / sda2 / mnt / torrents df - h
Den sidste kommando vil bekræfte, at du har monteret partitionerne korrekt. Dernæst ønsker vi at kopiere SD-kortdataene til drevet - dette forlænger deres levetid ved at undgå konstant læse / skrivehandlinger til cache osv. Installer rsync at gøre dette:
sudo apt-get install rsync sudo rsync -axv / / mnt / systemdrive
Dette vil starte en lang række filkopiering, så skubbe fingrene lidt.
sudo cp /boot/cmdline.txt /boot/cmdline.orig sudo nano /boot/cmdline.txt
Juster dette for at læse:
dwc_otg.lpm_enable = 0 console = ttyAMA0,115200 kgdboc = ttyAMA0,115200 console = tty1 root = / dev / sda1 rootfstype = ext4 elevator = deadline rootwait rootdelay = 5
Rediger derefter fstab at montere dem ved opstart.
sudo nano / etc / fstab
Tilføj følgende linjer:
/ dev / sda1 / ext4 standarder, noatime 0 1 / dev / sda2 / mnt / torrents ext4 standarder 0 2
Kommenter følgende linje, der henviser til SD-kortet:
# / dev / mmcblk0p2 / ext4 standarder, noatime 0 1
Genstart Pi'en med
start igen
Sorteret! Din Pi vil nu montere en både en roddatapartition og din torrentspartition
Del The Drive: Samba
Sørg for, at vi først er opdateret, fjern Wolfram Mathematica-pakker, som altid har forårsaget mig problemer, når jeg gør noget på Pi (noget at gøre med matematik-kerne), og installer derefter de påkrævede pakker
sudo apt-get-opdatering sudo apt-get dist-upgrade sudo apt-get fjern wolfram-engine sudo apt-get installer samba samba-common-bin sudo nano /etc/samba/smb.conf
Hit CTRL-W og type “sikkerhed” for at finde følgende linje og unkommenter det.
sikkerhed = bruger
Tilføj følgende for at definere vores delte mappe til torrents:
[torrents] comment = torrents sti = / mnt / torrents gyldige brugere = @users kraftgruppe = brugere oprette maske = 0775 kraft oprette tilstand = 0775 sikkerhedsmaske = 0775 kraft sikkerhed mode = 0775 katalogmaske = 2775 kraft katalogtilstand = 2775 katalogsikkerhed maske = 2775 tvungen mappe sikkerhedsindstilling = 2775 gennemsøgt = ja skrivbar = ja gæst ok = nej read read = nej
Genstart Samba-tjenesten:
sudo service samba genstart
Derefter skal vi tilføje en bruger til systemet. Erstatte “jamie” med dit ønskede brugernavn, som du logger på med for at få adgang til den delte mappe. Følgende kommandoer beder dig derefter om at oprette dine adgangskoder, det første på systemniveau og det næste for Samba. Rediger de sidste kommandoer, hvis du kaldte dit datadrev til noget andet (og her er en primer til filejerskab i linux).
sudo useradd jamie -m -G brugere sudo passwd jamie sudo smbpasswd -a jamie sudo chown pi: brugere / mnt / torrents chmod g + w / mnt / torrents
Test - du skal være i stand til at oprette forbindelse fra en anden maskine på dit netværk og læse / skrive filer til den nye deling. Kontroller, at de også vises på Pi ls inden for / mnt / torrents folder.
VPN-opsætning
Installer de påkrævede pakker
sudo apt-get install openvpn resolvconf
Download OpenVPN-konfigurationsfilerne fra din udbyder. Du kan tjekke en liste over de bedste VPN'er her, men sørg for at finde en der er torrent-venlig. Jeg bruger privacy.io selv, men Privat internetadgang er en anden populær mulighed i torrent-samfund. Uanset hvad, skal du være i stand til at hente en ZIP-fil med konfigurationer og et certifikat. Sæt disse i din torrents-mappe i et kaldet bibliotek OpenVPN. Rediger følgende kommando, så den peger på din konfigurationsfil, som næsten helt sikkert vil adskille sig fra privacyIO.ovpn
sudo openvpn --client --config /mnt/torrents/openvpn/privacyIO.ovpn --ca /mnt/torrents/openvpn/privacy.ca.crt --script-security 2
Hvis du får et output som dette, er du god. Hit CTRL-C at afslutte det. Det er dog irriterende at skulle indtaste adgangskoden, og vi har brug for et par ændringer for at tilføje start- og stop-scripts. Rediger konfigurationsfilen (igen skal du udskifte privacyIO.ovpn med den .ovpn-fil, som din udbyder gav dig)
nano /mnt/torrents/openvpn/privacyIO.ovpn
Rediger først følgende linje. Grundlæggende siger vi, at vi gemmer brugernavnet og adgangskoden i en kaldet fil pass.txt
autor-user-pass /mnt/torrents/openvpn/pass.txt
Gem og skriv:
nano /mnt/torrents/pass.txt
Indtast dit brugernavn på den første linje og din adgangskode på den næste. Gem, og prøv at oprette forbindelse igen:
sudo openvpn --client --config /mnt/torrents/openvpn/privacyIO.ovpn --ca /mnt/torrents/openvpn/privacy.ca.crt
--script-sikkerhed 2
Du skal ikke bugges for at logge ind på dette tidspunkt. Yay! Åbn derefter konfigurationsfilen igen, og tilføj følgende linjer:
route-up /mnt/torrents/openvpn/route-up.sh down-pre down /mnt/torrents/openvpn/down.sh
Dette specificerer nogle scripts, vi skal oprette senere for at udføre opgaver, når forbindelsen enten kommer op eller går ned. Sørg for, at du er i mnt / torrents / openvpn katalog, kør derefter følgende:
nano route-up.sh
Tilføj følgende, som sikrer, at der sendes trafik over VPN:
#! / bin / sh iptables -t nat -I POSTROUTING -o tun0 -j MASQUERADE
Opret derefter down.sh-scriptet
nano down.sh
Tilføje:
#! / bin / sh iptables -t nat -D POSTROUTING -o tun0 -j MASQUERADE
Endelig ønsker vi, at et script åbner forbindelsen, i stedet for at starte det fra kommandolinjen, som vi lige gjorde.
nano vpn.sh
Indsæt VPN-startkommandoen fra før. I tilfælde af at du har glemt:
sudo openvpn --client --config /mnt/torrents/openvpn/privacyIO.ovpn --ca /mnt/torrents/openvpn/privacy.ca.crt --script-security 2
Gør nu alle disse scripts eksekverbare, og start VPN-scriptet ved opstart.
chmod + x down.sh chmod + x route-up.sh chmod + x vpn.sh sudo nano /etc/rc.local
Tilføj følgende linje før Afslut 0 linje. Vi fortæller det bare at starte dette script ved opstart.
/mnt/torrents/openvpn/vpn.sh
Endelig genstart dit system igen.
Log ind igen og kør ifconfig. Du ved, at det fungerer, hvis du ser en post til tap0 (eller t0), og er i stand til at krølle en webside:
krølle //www.makeuseof.com
Torrent-klienten
Næsten der nu. Endelig vil vi installere Transmission, som er let og har en dejlig web GUI. Følgende kommandoer installeres og stopper derefter dæmonen - da vi først skal konfigurere den - åbner derefter indstillingsfilen til redigering.
sudo apt-get install transmission-daemon sudo /etc/init.d/transmission-daemon stop sudo nano /etc/transmission-daemon/settings.json
Lave om “rpc-autentificering-påkrævet” til falsk; lave om “rpc-whitelist” at inkludere dit lokale undernet - for eksempel:
"rpc-whitelist": "127.0.0.1,10.0.1. *",
Tilføj eller juster følgende, hvis de allerede er til stede:
"download-dir": "/ mnt / torrents", "watch-dir": "\ / mnt \ / torrents \ /", "watch-dir-enabled": sand, "umask": 2,
Rediger derefter selve daemon-startfilen for at håndtere nogle tilladelsesproblemer.
sudo nano /etc/init.d/transmission-daemon
Skift USER = transmission-daemon til USER = root. Genindlæs dæmonen.
overførsel af sudo-service-dæmon
Endelig installerer vi avahi-daemon til at opsætte bonjour / zeroconf-netværk, hvilket betyder, at vi ikke behøver at bruge IP-adressen på Pi for at få adgang til den fra en browser - i stedet vil vi kunne bruge raspberrypi.local adresse.
sudo apt-get install avahi-daemon
Forudsat at dit værtsnavn er standard (raspberrypi, men kan ændres ved hjælp af raspi-config), navigere til:
http: //raspberrypi.local: 9091 / gear / web /
Kontroller først, at din torrent-IP er korrekt forklædt via VPN. Download testtorrentfilen fra TorGuard - downloadgrafikken ligner en reklame, men det er det ikke - og slip den i den delte mappe torrents.
Vi har allerede konfigureret transmission til at se denne mappe til nye torrents, så den skal tilføjes med det samme. Gå videre og slip også nogle lovlige Linux distro torrenter derinde.
IP-kontroltorrenten skal returnere en fejl sammen med den IP-adresse, den registrerede. Sørg for, at det ikke er din hjemme-IP - hvis det er tilfældet, er VPN ikke blevet konfigureret rigtigt. Som standard omdøbes eventuelle torrenter, du slipper i mappen, til .tilført, og en .part-fil skal oprettes, indtil overførslen er færdig. Kontroller, at dette er tilfældet i din delte mappe.
Det er det! Du har nu en super lav-drevet, sikker, torrent-downloadende Pi - forlader din arbejdsstation tilgængelig for bedre ting. Du vil måske nu se på at tilføje en UPnP-server til streaming af medier rundt om i netværket eller bruge BitTorrent Sync til at oprette din egen skylager. Byg din egen cloud-opbevaring med Raspberry Pi og BitTorrent Sync. Byg din egen cloud-opbevaring med Raspberry Pi og BitTorrent Synkronisering Tro ikke på hype: Skyen er langt fra sikker. Men frygt ikke - nu kan du rulle din egen private, ubegrænsede og sikre sky-oplagringsplatform ud. . Hvilke funktioner vil du tilføje i?