Pytanie:
Jak ustawić publiczny serwer sieciowy Raspberry Pi?
Jim Jones
2013-04-28 06:46:04 UTC
view on stackexchange narkive permalink

Więc w końcu uruchomiłem serwer WWW, z wyjątkiem tego, że jest dostępny tylko dla mojej sieci lokalnej i chciałbym go upublicznić. Mam D-Link DIR-615 jako router, adres IP mojego Pi to 192.168.0.14, a moje publiczne informacje IP wyglądają następująco:

  Informacje IP: xx.xx.xx.xxISP : Xplornet CommunicationsOrganization: Xplornet CommunicationsConnection: BroadbandServices: None DetectedCity: Sherwood ParkRegion: AlbertaCountry: Canada  

Wszystko brzmi dobrze, z wyjątkiem tego, że nie mieszkam w Sherwood Park, jestem około 2 godzin stąd.

Co muszę zrobić, aby mój serwer był publiczny?

Mój router obsługuje przekierowanie portów, serwer wirtualny i DMZ. Używam serwera HTTP Apache.

Dzięki, ale to nadal nie rozwiązuje mojego problemu; Chcę tylko raz połączyć się z zewnątrz, a potem wymyślę DDNS i tym podobne, ale na razie nie połączy się z niczym, gdy wpiszę mój adres IP Xplornet.

Pięć odpowiedzi:
George Pearce
2013-04-28 14:25:10 UTC
view on stackexchange narkive permalink

Przekieruj port 80 z routera do Pi, a jeśli chcesz SSH z zewnątrz, również port 22. Należy pamiętać, że w przypadku SSH z zewnątrz każdy, kto może się dostać, może następnie ssh lub uzyskać dostęp do innych urządzeń w sieci.

Po skonfigurowaniu, jeśli Twój adres IP pozostaje prawie taki sam, możesz użyć czegoś takiego jak Cloudflare, aby wskazać na niego domenę. Jeśli zmienia się codziennie, będziesz potrzebować usługi takiej jak DynDNS.

K, więc ustawiłem router tak, aby przekierowywał port 80 na port 80 z adresem IP mojego Raspberry Pi lub czymkolwiek, ale wciąż „upływa limit czasu” za każdym razem, gdy wpisuję mój zewnętrzny adres IP
Spróbuj uzyskać do niego dostęp i określ port 80, na przykład xx.xx.xx.xx: 80
@Spencer: Nie można niezawodnie przetestować przekierowania portów z wnętrza sieci, ponieważ nie wszystkie routery obsługują „szpilkę”. Spróbuj przetestować go spoza sieci LAN. Na przykład. używać telefonu komórkowego z wyłączonym Wi-Fi i korzystaniem z danych komórkowych (3G, HCSD itp.) do połączenia innego niż LAN.
@SpencerKillen Czy testujesz z zewnątrz? Wiele urządzeń nie będzie tego robić za pomocą NAT, jeśli siedzisz w tej samej sieci LAN co twoje raspberry pi i masz dostęp do publicznego adresu IP routera. Jeśli możesz uzyskać dostęp do serwera WWW pod adresem 192.168.0.14 z sieci LAN, RPI lub Apache nie są błędne, ale przekierowanie portów nie zostało wykonane poprawnie lub router ma gdzieś zainstalowaną zaporę ogniową.
Jeśli przekierowanie portów jest zbyt uciążliwe lub w ogóle nie wchodzi w grę (np. Jeśli jesteś za routerem mobilnym), możesz wypróbować usługę przekaźnika, taką jak PageKite lub Yaler.net (Ujawnienie: jestem założycielem Yaler)
Przepraszam, czy możesz mi to dokładniej wyjaśnić?
Bjarni Rúnar
2013-05-21 18:16:57 UTC
view on stackexchange narkive permalink

Jest kilka rzeczy, o których należy pamiętać.

Po pierwsze, nawet jeśli przekierowanie portów zostało poprawnie skonfigurowane w routerze, możesz nie być w stanie połączyć się z publicznym adresem IP z domu, ponieważ niektóre routery przekazują tylko połączenia przychodzące „z zewnątrz”, a nie „z wewnątrz”. Innym częstym problemem jest to, że niektórzy dostawcy usług internetowych nie chcą, aby ich użytkownicy uruchamiali publiczne serwery i blokowali typowe porty przychodzące, takie jak port 80 lub 25.

Nie wiem, czy którekolwiek z nich ma zastosowanie w twoim przypadku, ale oni moc. Poza tym powiedziałbym, że jesteś na dobrej drodze, konfiguracja routera i dynamicznego rozwiązania DNS jest najefektywniejszym sposobem, aby to zrobić, jeśli działa dla Ciebie.

Jeśli jednak tak nie jest pracować z jakiegoś powodu, stworzyłem rozwiązanie o nazwie PageKite ( http://pagekite.net/), aby pomóc upublicznić serwery zza ścisłej zapory ogniowej lub na urządzeniach, które często zmieniają lokalizację. Działa poprzez utworzenie tunelu z Twojego Raspberry Pi do serwera przekaźnikowego „front-end”, który przekazuje przychodzące żądania i odpowiedzi przez tunel. Więc za każdym razem, gdy twoje Pi ma działające połączenie z Internetem i może połączyć się z przekaźnikiem, twój serwer będzie widoczny (nie są konieczne żadne modyfikacje routera ani ddns). To darmowe oprogramowanie, ale jeśli ludzie używają naszej usługi on-line do łączenia się (zamiast prowadzić gdzieś własny przekaźnik), prosimy ludzi, aby zapłacili trochę za ten przywilej. Jest to podobne do lokalnego tunelu, o którym wspomniano gdzie indziej, z wyjątkiem tego, że PageKite został zaprojektowany z myślą o niezawodności i trwałych połączeniach, a nie tylko do tymczasowych testów.

Powodzenia!

Powinienem wspomnieć, że dla celów korzystania z PageKite z Raspberry Pi najlepiej postępować zgodnie z instrukcjami dla Debiana, tutaj: https://pagekite.net/wiki/Howto/GNULinux/ConfigureYourSystem/
user1945104
2013-04-28 09:27:18 UTC
view on stackexchange narkive permalink

Będziesz potrzebować usługi takiej jak DynDNS lub uzyskaj statyczny adres IP. W przeciwnym razie możesz rozważyć VPN.

Mickaël Le Baillif
2013-04-28 23:40:50 UTC
view on stackexchange narkive permalink

Zależy to od tego, czy chcesz stale udostępniać swoje treści internetowe, czy potrzebujesz tylko okresowego dostępu publicznego. W tym drugim przypadku nie ma potrzeby konfigurowania konta DynDNS i otwierania portów przekazywania w routerze.

Całkiem prostym rozwiązaniem jest użycie LocalTunnel, który udostępni serwer WWW za pośrednictwem nazwy domeny, takiej jak:

  http://8bv2.localtunnel.com  

Jest to bardzo przydatne do udostępniania postępów w witrynę, którą hostujesz na swoim komputerze.

crancker
2013-04-30 09:54:04 UTC
view on stackexchange narkive permalink

Moje rozwiązanie dla kilku systemów w ramach dynamicznego adresu IP jest następujące:

Mam domenę z zadania cron godaddyEntrydns1 na moim routerze, która przesyła mój adres IP do usług entrydn za pomocą token (token, który zapewnia entrydns ). A mój serwer DNS w mojej domenie GoDaddy jest ustawiony na entrydns. Aha i nie zapomnij przejść do portforward :)

Jeśli potrzebujesz, mogę podać bardziej szczegółowy przewodnik krok po kroku, ale mam nadzieję, że uda Ci się rozgryźć ten prosty proces przez Google :)

Lepiej byłoby przedstawić bardziej szczegółowy przewodnik krok po kroku, zwłaszcza jeśli pomaga innym z podobnymi problemami. Rozumiem, że Google pomoże, ale myślę, że na każde pytanie można odpowiedzieć za pomocą google!


To pytanie i odpowiedź zostało automatycznie przetłumaczone z języka angielskiego.Oryginalna treść jest dostępna na stackexchange, za co dziękujemy za licencję cc by-sa 3.0, w ramach której jest rozpowszechniana.
Loading...