Spisu treści:

Zdalny dostęp SSH do Raspberry Pi 2: 5 kroków
Zdalny dostęp SSH do Raspberry Pi 2: 5 kroków

Wideo: Zdalny dostęp SSH do Raspberry Pi 2: 5 kroków

Wideo: Zdalny dostęp SSH do Raspberry Pi 2: 5 kroków
Wideo: SSH oraz Putty - jak połączyć się zdalnie z Raspberry Pi 2024, Lipiec
Anonim
Zdalny dostęp SSH do Raspberry Pi 2
Zdalny dostęp SSH do Raspberry Pi 2

Czy kiedykolwiek chciałeś wdrożyć Raspberry Pi „w terenie” i nadal mieć do niego dostęp?

Oto prosty sposób na umożliwienie zdalnego dostępu SSH do Raspberry Pi 2 (i innych modeli). Chociaż istnieją rozwiązania obejmujące VPN lub konfigurujące przekierowanie portów na lokalnej zaporze, często są one trudne do zarządzania dla osób niebędących ekspertami.

Nowa generacja usług przekaźnikowych, w tym My-Devices.net, Pagekite.net i Yaler.net, próbuje to naprawić. Tutaj używamy usługi przekaźnika Yaler (ujawnienie: jestem założycielem), aby zapewnić dostęp SSH z dowolnego miejsca do Raspberry Pi 2.

Materiał

- Raspberry Pi 2 (lub dowolny model), m.in.

- Kabel USB A/Micro B, m.in.

- Karta microSD, 4 GB, m.in.

- Kabel Ethernet m.in.

Również potrzebne

- Komputer stacjonarny lub laptop

- Sieć lokalna z DHCP

(Uwaga: kroki 3-5 oparte na samouczkach CC BY-SA Yaler. Kroki 1 i 2 pozwalają zacząć od zera.)

Krok 1: Zainstaluj Raspbian

(Jeśli masz już uruchomiony Raspbian, pomiń ten krok.)

Pobierz obraz

Użyjmy obrazu Raspbian Jessie (Lite), na którym domyślnie działa sshd. To plus za „bezgłową” konfigurację bez wyświetlacza, myszy i klawiatury.

- Pobierz najnowszy obraz Raspbian z https://www.raspberrypi.org/downloads/ lub użyj tego bezpośredniego linku.

- Rozpakuj plik ZIP obrazu, aby uzyskać plik obrazu IMG

Przygotuj kartę SD w systemie Mac OSX

Istnieje wiele sposobów na przygotowanie karty SD na komputerze Mac. Oto mój ulubiony:

- Pobierz narzędzie PiFiller ze strony https://ivanx.com/raspberrypi/ lub skorzystaj z tego bezpośredniego łącza.

- Uruchom PiFiller i wybierz plik obrazu IMG pobrany powyżej

Przygotuj kartę SD w systemie Windows

- Pobierz Win32 Disk Imager z

- Uruchom narzędzie i wybierz IMG pobrany powyżej (dwukrotnie sprawdź dysk)

Przygotuj kartę SD w systemie Linux

- Postępuj zgodnie z instrukcjami w

Użyj karty SD

- Włóż kartę SD do Raspberry Pi 2

- Podłącz kabel Ethernet do sieci lokalnej

- Podłącz kabel USB do zasilania urządzenia i czekaj…

Gotowe. Po kilku minutach Raspbian powinien wstać.

Krok 2: Znajdź Raspberry Pi 2 w swojej sieci lokalnej

(Jeśli Raspberry Pi 2 ma wyświetlacz, mysz i klawiaturę, pomiń ten krok.)

Gdzie jest moje Raspi?

Po zainstalowaniu Raspbian i podłączeniu Raspberry Pi 2 do sieci lokalnej, powinien automatycznie otrzymać adres IP z DHCP i uruchomić sshd, który nasłuchuje przychodzących połączeń SSH na porcie 22. Ale jaki jest adres IP?

Spójrzmy

Jednym ze sposobów znalezienia lokalnego adresu IP Raspberry Pi 2 (i dowolnego innego urządzenia) jest użycie narzędzia wiersza poleceń nmap.

- Pobierz nmap z

- Aby uzyskać lokalny adres IP komputera, otwórz terminal i wpisz

$ ifconfig

w wyniku czegoś takiego jak en0: flags= … 192.168.0.7 maska sieci …

- Rozpocznij zapytanie nmap dla portu 22, używając lokalnego prefiksu adresu IP, np.

$ nmap 192.168.0.0-255 -p22

- Sprawdź wynik (jeśli jest wiele adresów IP, zwykle jest to najwyższy)

Upewnij się, że to twoje

- Uzyskaj lokalny dostęp SSH do Raspberry Pi 2 za pomocą ssh, używając lokalnego adresu IP, np.

$ ssh [email protected]

- Wpisz hasło, domyślnie malina

- Zmień hasło, wpisując

$ passwd

Gotowe? Twój Raspberry Pi 2 jest teraz gotowy do połączenia z usługą przekazywania.

Krok 3: Zainstaluj demona YalerTunnel

Przegląd

Demon YalerTunnel to małe oprogramowanie, które umieścimy na Twoim Raspi, aby połączyć lokalne usługi uruchomione na urządzeniu z usługą przekazywania w chmurze. Lubię to:

Usługa przekazywania <- Lokalna usługa SSH zapory

Uzyskaj domenę przekaźnika

Każde urządzenie połączone z usługą przekaźnika wymaga domeny przekaźnika.

- Uzyskaj bezpłatne konto próbne z domeną przekaźnikową na

(Lub, aby hostować własny przekaźnik do użytku niekomercyjnego, zobacz

Zainstaluj tunel Yaler

Zbudujmy demona YalerTunnel ze źródeł.

- Otwórz powłokę na Raspberry Pi 2 i zaktualizuj apt-get za pomocą

$ sudo apt-get update

- Pobierz i zainstaluj libssl za pomocą

$ sudo apt-get install libssl-dev

- Utwórz katalog yalertunnel

$ mkdir yalertunnel

$ cd yalertunnel

- Pobierz, rozpakuj i zbuduj źródło YalerTunnel

$ wget

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

Gotowe? Następnie zacznijmy demona.

Krok 4: Uruchom demona YalerTunnel

Włącz dostęp SSH przez Yaler

$ sudo apt-get install runit

- Utwórz katalog usług yalertunnel-ssh

$ sudo mkdir /etc/service/yalertunnel-ssh

$ cd /etc/service/yalertunnel-ssh

- Pobierz skrypt uruchamiający yalertunnel i spraw, aby był wykonywalny

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

$ sudo chmod a+x run

- Pobierz skrypt wykończeniowy yalertunnel i spraw, aby był wykonywalny

$ sudo wget

$ sudo chmod a+x finish

- Otwórz skrypt uruchamiania za pomocą

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

- Sprawdź ścieżkę (domyślnie: /home/pi/yalertunnel), ustaw port lokalnej usługi SSH (domyślnie: 22) i ustaw domenę przekazującą

1 #!/kosz/sz

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

Zapisz zmiany za pomocą CTRL-X, następnie Y, a następnie RETURN. Nie zmieniaj lokalnego adresu IP (domyślnie: 127.0.0.1), chyba że usługa SSH działa na oddzielnym urządzeniu w tej samej sieci.

- Uruchom ponownie Raspberry Pi 2, aby uruchomić skrypt

$ sudo restart

Gotowe. Zobaczmy teraz, jak uzyskać dostęp do Raspi.

Krok 5: Uzyskaj dostęp do Raspberry Pi 2 za pomocą klienta SSH

Korzystanie z Putty w systemie Windows

- Postępuj zgodnie z instrukcjami

Korzystanie z ssh na Macu lub Linuksie

W przeciwieństwie do Putty, polecenie ssh nie obsługuje "HTTP CONNECT", więc potrzebujemy YalerTunnel również po tej stronie przekaźnika. Oto jak to wygląda:

Klient SSH -> YalerTunnel w trybie klienta -> (Firewall) -> Usługa przekazywania

Zainstaluj YalerTunnel na Macu lub Linuksie

- Upewnij się, że JDK6 (lub nowszy) jest zainstalowany

- Upewnij się, że zmienna środowiskowa PATH zawiera katalog bin JDK

- Pobierz źródło YalerTunnel Java z

- Rozpakuj plik ZIP, otwórz terminal i zbuduj YalerTunnel za pomocą

$ javac YalerTunnel.java

Zdalny dostęp do Raspberry Pi 2 przez SSH

- Na komputerze klienckim, aby uruchomić YalerTunnel w trybie klienta, wpisz

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

- W drugim terminalu, na komputerze klienckim, uzyskaj dostęp do swojego urządzenia przez lokalny YalerTunnel z ssh

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

Gotowe. Powinieneś teraz mieć dostęp SSH do swojego Raspberry Pi 2.

Rozwiązywanie problemów

Jeśli nie ma połączenia

- Upewnij się, że używasz prawidłowej domeny przekazującej

- Aby sprawdzić, czy usługa YalerTunnel działa na Twoim urządzeniu, wpisz

$ ps aux | grep [y]aler

Otóż to. Dzięki za przeczytanie do końca. Jeśli masz pytania, skontaktuj się z nami.

Zalecana: