Bygg din egen Cloud Storage med Raspberry Pi och BitTorrent Sync

Bygg din egen Cloud Storage med Raspberry Pi och BitTorrent Sync / DIY

Tro inte på hype: molnet är långt ifrån säkert. Men ingen rädsla - nu kan du glömma Dropbox en gång för alla, och visa myndigheterna en fast långfinger genom att rulla din egen privat, obegränsat, och säkra Cloud Storage Platform med en Raspberry Pi och BitTorrent Sync.

En del av denna process överlappar varandra med att göra en Pi-baserad Nätverksansluten lagring Vrid din Raspberry Pi i en NAS-låda Sätt din Raspberry Pi i en NAS-box Har du några externa hårddiskar som ligger och en Raspberry Pi? Gör en billig, lågdriven nätverksansluten lagringsenhet av dem. Medan slutresultatet säkert inte kommer att bli som ... Läs mer, vilket du kanske också vill kolla in. Om du verkligen är äventyrlig kan du till och med bygga en Raspberry Pi Twitter Bot Hur man bygger en hallon Pi Twitter Bot Hur man bygger en hallon Pi Twitter Bot Twitter är världens största förteckning över korta meddelanden från människor som inte har något att säga - och nu du kan också bidra till det episka projektet med en automatiserad Twitter bot, driven av din hallon ... Läs mer som tweets ut alla nya filer som läggs till den. Gör det.

BitTorrent? Är inte det olagligt?!

Jo, faktiskt, nej - men det vanligaste användandet av BitTorrent-protokollet distribuerar material som faller under upphovsrättsskyddet. BitTorrent Sync From Pirate Darling Till Dropbox Alternativ: BitTorrent Sync Gör att du kan hålla dina filer synkroniserade över maskiner från Pirate Darling To Dropbox Alternativ: BitTorrent Sync Gör att du kan hålla dina filer synkroniserade över maskiner Cloud-baserade filsynkroniseringstjänster är lätta att använda och fungerar bra, men din integritet kan eller inte är din första prioritet. För att inte nämna det faktum att dessa tjänster alltid kommer med ett lagringsutrymme ... Läs mer är ett separat projekt (sluten källa) från skaparna av BitTorrent; Det använder samma underliggande fildistributionsprinciper, men med kryptering och för en privat grupp av användare.

I enkla termer liknar BitTorrent Sync lik Dropbox genom att det synkroniserar filer och mappar mellan auktoriserade datorer, men behöver inte en tredjeparts cloud-leverantör eftersom den använder den bakomliggande peer-to-peer-distributionstekniken för BitTorrent.

Du kommer behöva

  • Raspberry Pi
  • USB-lagringsenhet
  • Dator för testning

Komma igång

Som alltid börjar jag från en ny Raspbian-installation, men det borde fungera bra med en befintlig installation. Ta tag i bilden härifrån och bränn med det här verktyget för OS X eller ImageWriter for Windows. Efter att ha loggat in på distans via SSH Installera din Raspberry Pi för huvudlös användning med SSH Ställa in din Raspberry Pi för huvudlös användning med SSH Raspberry Pi kan acceptera SSH-kommandon när de är anslutna till ett lokalt nätverk (antingen via Ethernet eller Wi-Fi) du kan enkelt ställa upp det. Fördelarna med SSH går utöver att störa den dagliga skärningen ... Läs mer, utför en grundläggande systemuppdatering.

sudo apt-få uppdatering sudo apt-get uppgradering

Montera din enhet

Lista dina enheter med

sudo fdisk -l 

När du har identifierat rätt / dev enhet för din enhet:

sudo mkdir / media / sync sudo mount -t auto / dev / sda1 / media / sync

(förutsatt / Dev / sda1 är din USB-enhet)

För att säkerställa att dessa är auto-monterade vid omstart, redigera fstab konfigurationsfil enligt följande:

sudo nano / etc / fstab

Lägg till följande rad, kom ihåg:

/ dev / sda1 / media / sync vfat standardvärden 0 0
  • / Dev / sda1 / bör vara varhelst din USB-enhet blir monterad
  • / Media / synk Är den mapp du skapade för att fungera som en monteringspunkt
  • vfat är typen av filsystem. Använda sig av ntfs-3g om det är en NTFS-enhet, men du måste också köra sudo apt-get install ntfs-3g. För Linux-partitioner, ext4 det är vanligt.

Installera BitTorrent-synkronisering

Lyckligtvis finns det nu ett enkelt sätt att installera utan rosa kompilering - men vi behöver lägga till en anpassad källa för att hitta paketfilerna. Använd följande kommandon, klistra in en efter en.

sudo gpg-keyserver pgp.mit.edu -recv-nycklar 6BF18B15 sudo gpg -armor -export 6BF18B15 | sudo apt-key add-sudo echo deb http://debian.yeasoft.net/btsync wheezy huvudbidrag utan kostnad >> /etc/apt/sources.list.d/btsync.list sudo echo deb-src http: / /debian.yeasoft.net/btsync wheezy huvudbidrag utan kostnad >> /etc/apt/sources.list.d/btsync.list sudo apt-get uppdatering sudo apt-get install btsync 

Observera att om du får tillståndsfel på sources.list.d fil, försök redigera filen manuellt med Nano:

sudo nano /etc/apt/sources.list.d/btsync.list

och klistra in i dessa linjer.

deb http://debian.yeasoft.net/btsync wheezy huvudbidrag non-free deb-src http://debian.yeasoft.net/btsync wheezy huvudbidrag utan kostnad

Fortsätt med uppdateringen och installera kommandon som tidigare.

När du installerar paketet kommer du att hälsas med ett speciellt installationsskript. Skapa en “standardinstans” fungerar på ett slumpmässigt portnummer - jag valde 55555.

Jag sprang genom installationen och accepterade standardvärdena för allt annat (med undantag för lösenord, självklart).

Kontrollera om BitTorrent-synkronisering fungerar

Installationsskriptet skulle ha lagt till det i startfilen, så fortsätt och starta om för att kontrollera detta:

sudo shutdown -r nu

Ge det en minut eller så för att starta om, sedan använd en annan dator för att bläddra i sitt webbgränssnitt - det vill säga skriv din IP-adress, följt av en kolon, och webbgränssnittporten vald under installationen - standardvärdet 8888; så jag skrev http: //192.1680.9: 8888 . Efter inloggning bör du hälsas med detta.

Skapa en mapp som pekar på din / Media / synk katalog eller vart du valde att montera enheten tidigare. Den hemliga lösenfrasen är nyckeln till alla dina filer - ge aldrig ut det till någon du inte litar på.

Appen börjar med att indexera enheten, det finns redan filer där, vilket kan ta en stund.

Under tiden kan du säkert gå vidare och installera BitTorrent Sync-programmet på dina andra maskiner, och välja att klistra in i ditt hemliga lösenfras under installationsprocessen. Välj den relevanta katalogen som ska användas för att synkronisera lokalt, och dina filer ska omedelbart dras över från Pi och börja synkronisera (om du hade någon där för att börja med - jag använde en dataupplevelse som redan innehåller några hundra gigabyte filer).

De Historia flikar visar en lista över vilka filer som har lagts till med vilken enhet. överföringar visar vilka filer som synkroniseras för närvarande, antingen upp eller ner.

För avancerade inställningar klickar du på kuggikonen bredvid mappen i webbguiden, där du kan ta en hemlig lösenordsfras för skrivskyddad åtkomst, eller generera en en gång lösenfras för att undvika att ge huvudnyckeln.

I praktiken laddas Pi upp på ca 600-700 kB / s, men jag ställer en hård gräns på 1 MB / s just i fall. Den inledande synkroniseringen kommer att ta lång tid om du har terabytes data - men kom ihåg att ju fler datorer du har i ditt privata BT Sync-nätverk kommer de snabbare efterföljande synkroniseringerna att vara (samma som “ympning” principer för reguljära torrenter).

Är det verkligen säkert?

Senaste uppenbarelser visar att NSA faktiskt kan ha brutit ett stort antal krypteringssystem som vanligtvis används för att säkra tjänster som VPN, så hur är det med BitTorrent Sync? Experter anser att AES-256-krypteringen som används där ännu inte är knäckt. Snowden sa själv:

“Kryptering fungerar. Korrekt implementerade starka kryptosystem är ett av de få saker du kan lita på”

Kan du tänka på en användning för din egen privata Dropbox? Kanske ett familje fotoalbum som automatiskt synkroniseras till alla - BitTorrent Sync är idealiskt för stora filer som kan vara fallet med moderna kameror. Att skicka stora bilder via e-post är otroligt långsam, men jag hittar komprimerade foton ännu mer irriterande! Vad kommer du att använda din för?

Bildkredit: Adafruit / Flickr, Kamil Porembi? Skidor / Flickr

Utforska mer om: BitTorrent, Cloud Storage, Peer to Peer, Raspberry Pi.