Indholdsfortegnelse:

Fjern SSH -adgang til Raspberry Pi 2: 5 trin
Fjern SSH -adgang til Raspberry Pi 2: 5 trin

Video: Fjern SSH -adgang til Raspberry Pi 2: 5 trin

Video: Fjern SSH -adgang til Raspberry Pi 2: 5 trin
Video: Raspberry Pi - Build The Ultimate Smart Home Hub For HomeKit 2024, November
Anonim
Fjern SSH -adgang til Raspberry Pi 2
Fjern SSH -adgang til Raspberry Pi 2

Har du nogensinde ønsket at implementere en Raspberry Pi "i marken" og stadig kunne få adgang til den?

Her er en nem måde at aktivere ekstern SSH -adgang til din Raspberry Pi 2 (og også andre modeller). Selvom der er løsninger, der involverer en VPN eller konfigurering af port forwarding på en lokal firewall, er disse ofte svære at administrere for ikke-eksperter.

En ny generation af relay-tjenester, herunder My-Devices.net, Pagekite.net og Yaler.net forsøger at løse dette. Her bruger vi Yaler -relæstjenesten (oplysning: Jeg er en grundlægger) til at give SSH -adgang hvor som helst til Raspberry Pi 2.

Materiale

- Raspberry Pi 2 (eller enhver model), f.eks.

- USB -kabel, A / Micro B, f.eks.

- Micro SD -kort, 4 GB, f.eks.

- Ethernet -kabel, f.eks.

Også nødvendig

- Stationær eller bærbar computer

- Lokalt netværk med DHCP

(Bemærk: Trin 3-5 baseret på CC BY-SA Yaler-selvstudier. Trin 1 og 2 lader dig starte forfra.)

Trin 1: Installer Raspbian

(Hvis du allerede har Raspbian kørende, skal du springe dette trin over.)

Download billedet

Lad os bruge Raspbian Jessie (Lite) -billedet, som har sshd som standard. Det er et plus for "hovedløs" opsætning uden skærm, mus eller tastatur.

- Få det nyeste Raspbian -billede fra https://www.raspberrypi.org/downloads/ eller brug dette direkte link.

- Pak zip -billedet ud for at få IMG -billedfilen

Forbered SD -kortet på Mac OSX

Der er mange måder at forberede SD -kortet på en Mac. Her er min favorit:

- Hent PiFiller -værktøjet fra https://ivanx.com/raspberrypi/ eller brug dette direkte link.

- Start PiFiller, og vælg den IMG -billedfil, der er downloadet ovenfor

Forbered SD -kortet på Windows

- Få Win32 Disk Imager fra

- Start værktøjet, og vælg den IMG, der er downloadet ovenfor (dobbelttjekket drevet)

Forbered SD -kortet på Linux

- Følg trinene i

Brug SD -kortet

- Indsæt SD -kortet i Raspberry Pi 2

- Tilslut ethernetkablet til dit lokale netværk

- Tilslut USB -kablet for at drive enheden, og vent …

Færdig. Efter et par minutter skulle Raspbian være oppe.

Trin 2: Find Raspberry Pi 2 i dit lokale netværk

(Hvis Raspberry Pi 2 har en skærm, mus og tastatur, skal du springe dette trin over.)

Hvor er min Raspi?

Når Raspbian er installeret, og Raspberry Pi 2 er forbundet til det lokale netværk, skal den automatisk få en IP -adresse med DHCP og begynde at køre sshd, som lytter til indgående SSH -forbindelser på port 22. Men hvad er IP'en?

Lad os kigge på det

En måde at finde den lokale IP -adresse på Raspberry Pi 2 (og enhver anden enhed) er at bruge kommandolinjeværktøjet nmap.

- Få nmap fra

- For at få din computers lokale IP -adresse skal du åbne en terminal og skrive

$ ifconfig

hvilket resulterer i noget som en0: flag = … 192.168.0.7 netmaske …

- Start en nmap -forespørgsel til port 22 ved hjælp af dit lokale IP -adresse præfiks, f.eks.

$ nmap 192.168.0.0-255 -p22

- Kontroller resultatet (hvis der er flere IP'er, er det normalt det højeste)

Sørg for, at den er din

- Få lokal SSH -adgang til Raspberry Pi 2 med ssh, ved hjælp af dens lokale IP, f.eks.

$ ssh [email protected]

- Indtast adgangskoden, som standard er det hindbær

- Skift adgangskode ved at skrive

$ passwd

Færdig? Din Raspberry Pi 2 er nu klar til at blive tilsluttet relæetjenesten.

Trin 3: Installer YalerTunnel Daemon

Oversigt

YalerTunnel -dæmonen er en lille software, vi sætter på din Raspi for at forbinde lokale tjenester, der kører på enheden, til relaytjenesten i skyen. Sådan her:

Relay Service <- Firewall Local SSH Service

Få et relædomæne

Hver enhed, der er forbundet til relæetjenesten, har brug for et relædomæne.

- Få en gratis prøvekonto inklusive et relædomæne på

(Eller, for at være vært for dit eget relæ til ikke-kommerciel brug, se

Installer YalerTunnel

Lad os bygge YalerTunnel -dæmonen fra kilden.

- Åbn en skal på din Raspberry Pi 2, og opdater apt-get with

$ sudo apt-get opdatering

- Download og installer libssl med

$ sudo apt-get install libssl-dev

- Opret et yalertunnel -bibliotek

$ mkdir yalertunnel

$ cd yalertunnel

- Download, pak ud og opbyg YalerTunnel -kilden

$ wget

$ tar xfzmv YalerTunnel2.src.tar.gz $./configure && make

Færdig? Lad os derefter starte dæmonen.

Trin 4: Start YalerTunnel Daemon

Aktiver SSH -adgang via Yaler

$ sudo apt-get installer runit

- Opret en yalertunnel-ssh servicemappe

$ sudo mkdir/etc/service/yalertunnel-ssh

$ cd/etc/service/yalertunnel-ssh

- Download yalertunnel run script og gør det eksekverbart

$ sudo wget https://s3.yaler.net/raspi/run-ssh -O køre

$ sudo chmod a+x run

- Download yalertunnel -finish -scriptet, og gør det eksekverbart

$ sudo wget

$ sudo chmod a+x finish

- Åbn køre scriptet med

$ sudo nano/etc/service/yalertunnel-ssh/run

- Kontroller stien (standard:/home/pi/yalertunnel), indstil porten til den lokale SSH -service (standard: 22), og indstil dit relædomæne

1 #!/Bin/sh

⋮ 6 exec/home/pi/yalertunnel/yalertunnel proxy 127.0.0.1:22 try.yaler.io:80 RELAY_DOMAIN & 1 | logger -t yalertunnel -ssh

Gem ændringer med CTRL-X, derefter Y, derefter RETURN. Skift ikke den lokale IP (standard: 127.0.0.1), medmindre SSH -tjenesten kører på en separat enhed i det samme netværk.

- Genstart din Raspberry Pi 2 for at køre scriptet

$ sudo genstart

Færdig. Lad os nu se, hvordan du får adgang til Raspi.

Trin 5: Få adgang til Raspberry Pi 2 med en SSH -klient

Brug af kitt på Windows

- Følg trinene

Brug af ssh på Mac eller Linux

I modsætning til Putty understøtter ssh -kommandoen ikke "HTTP CONNECT", så vi har også brug for YalerTunnel på denne side af relæet. Sådan ser det ud:

SSH Client -> YalerTunnel i Client Mode -> (Firewall) -> Relay Service

Installer YalerTunnel på Mac eller Linux

- Sørg for, at JDK6 (eller nyere) er installeret

- Sørg for, at din PATH -miljøvariabel indeholder JDK's bin -bibliotek

- Hent YalerTunnel Java -kilden fra

- Pak ZIP -filen ud, åbn en terminal, og opbyg YalerTunnel med

$ javac YalerTunnel.java

Fjernadgang til Raspberry Pi 2 med SSH

- Skriv på din klientcomputer for at starte YalerTunnel i klienttilstand

$ java YalerTunnel -klient localhost: 10022 try.yaler.io:80 RELAY_DOMAIN

- I en anden terminal på klientcomputeren skal du få adgang til din enhed via den lokale YalerTunnel med ssh

$ ssh pi@localhost -p 10022 -o ServerAliveInterval = 5

Færdig. Du skal nu have SSH -adgang til din Raspberry Pi 2.

Fejlfinding

Hvis der ikke er nogen forbindelse

- Sørg for at bruge det korrekte relædomæne

- Skriv for at se, om YalerTunnel -tjenesten kører på din enhed

$ ps aux | grep [y] aler

Det er det. Tak fordi du læste til sidst. Hvis du har spørgsmål, så kontakt.

Anbefalede: