Problem vid port forwarding vid hostning av hemsida på RP2

Permalänk
Medlem

Problem vid port forwarding vid hostning av hemsida på RP2

Igår kväll försökte jag lägga upp en hemsida på min raspberry pi 2 och göra den åtkomlig från nätet. Det mesta fungerade bra, jag installerade Apache och kunde nå den via min RP2s lokala ip address(en statisk som jag satt till 192.168.1.142). Sedan behövde jag öppna en port så att folk på nätet kan nå den men det är här jag stötte på problem. Jag har DD-WRT och såhär ser min forwarding ut:
BILD
För inläggets skulle så säger vi att min externa ip address för tillfället är 200.200.200.200 och då borde jag väl teoretiskt sett kunna nå min hemsida genom att knappa in http://200.200.200.200:87 ? Men gör jag detta kommer jag ingenstans.

För att komma runt problemet med att jag har en dynamisk ip address var tanken att jag skulle använda en dynamisk DNS tjänst kallad No-IP. De har en väldigt bra interaktiv guide för att sätta upp det hela. Först satte jag ett domän namn och sedan laddade jag ner och installerade deras tjänst på min RP2. Kollar jag statusen på tjänsten så ligger den igång och verkar fungera fint. På hemsidan kan man sedan testa anslutningen till tjänsten, som nu finns på min RP2, och denna verkar fungera fint! Bra!
Nästa steg i guiden var att kolla så att porten var öppen men det är i detta steget det tar stop. Jag har testat att forwarda flera olika portar, olika ranges, testat ett annat lokalt ip för min RP2 men vad jag än gör så vill inte min router vidarbefodra någon trafik till en specifik port.

Så jag undrar vad jag gör för fel här egentligen, är det något hos min ISP kanske? Eller gör jag fel när jag forwardar?

Permalänk
Hedersmedlem

Webservern använder port 80, så du får göra din port forward till port 80.

Permalänk
Forumledare

*Tråd flyttad*
/moderator

Permalänk

Alt1. Som nämnts tidigare: Använd port tcp 80.

Alt2. Portfowarda port 87 externt till 80 internt.

Alt3. Konfa Apache på din RP2 att använda en annan port som t.ex. 87.

Det beror på om du vill att man måste skriva in en port i URL när man ska komma åt sidan. Webbläsare använder port 80 tcp för http trafik om inte annat specificeras.

Permalänk
Medlem

Jag har dock testat port 80 och även DMZ.

Permalänk
Medlem
Skrivet av Baxtex:

För inläggets skulle så säger vi att min externa ip address för tillfället är 200.200.200.200 och då borde jag väl teoretiskt sett kunna nå min hemsida genom att knappa in http://200.200.200.200:87

Om du sitter på ditt hemma-nät (192.168.x.x) när du testar så är det inte säkert att din router klarar av att dirigera trafik från 192.168 till 200.200 via NAT:en och tillbaka till 192.168. Försök testa utifrån (t.ex via mobilens mobilnät)

Du kanske ligger bakom en "operatörs-NAT"? Kolla så att 200.200.200.200 är en publik ip.

Har du igång iptables i din RP2 och har du isf rätt regler?

Permalänk
Medlem
Skrivet av Baxtex:

Jag har dock testat port 80 och även DMZ.

Surfar du till 192.168.1.142 internt utan portnummer? Då är det port 80 du ska forwarda.
Vilken ISP kör du?

När du forwardat så testa här om du får svar http://www.canyouseeme.org/
Jämför både innan och efter du gjort det.

Leta i routern efter nat-reflect. Det är den inställningen som talar om ifall man kan nå den externa IP-adressen inifrån

Permalänk
Medlem
Skrivet av madtop:

Om du sitter på ditt hemma-nät (192.168.x.x) när du testar så är det inte säkert att din router klarar av att dirigera trafik från 192.168 till 200.200 via NAT:en och tillbaka till 192.168. Försök testa utifrån (t.ex via mobilens mobilnät)

Du kanske ligger bakom en "operatörs-NAT"? Kolla så att 200.200.200.200 är en publik ip.

Har du igång iptables i din RP2 och har du isf rätt regler?

Jag har inget iptables aktiverat på RP2, ska kolla upp det.

Skrivet av jocke92:

Surfar du till 192.168.1.142 internt utan portnummer? Då är det port 80 du ska forwarda.
Vilken ISP kör du?

När du forwardat så testa här om du får svar http://www.canyouseeme.org/
Jämför både innan och efter du gjort det.

Leta i routern efter nat-reflect. Det är den inställningen som talar om ifall man kan nå den externa IP-adressen inifrån

Japp, kör utan port lokalt. Har Telia.
Både före och efter jag forwardat Error: I could not see your service on 200.200.200.200 on port (80).
Har något som heter "Filter WAN NAT Redirection" som jag tror är det du menar, har testat det både på och av.

Permalänk
Medlem
Skrivet av Baxtex:

Jag har inget iptables aktiverat på RP2, ska kolla upp det.

Japp, kör utan port lokalt. Har Telia.
Både före och efter jag forwardat Error: I could not see your service on 200.200.200.200 on port (80).
Har något som heter "Filter WAN NAT Redirection" som jag tror är det du menar, har testat det både på och av.

I exemplet du visar så har du gjort en PF på port 87. Har du även gjort en PF på TCP/80?

Installera tcpdump på din RP2 och kolla om det kommer några paket till den.
#tcpdump -i eth0 port 80 or port 87

#iptables -l
för att lista regler

#/etc/init.d/iptables stop
för att stänga av

Permalänk
Medlem
Skrivet av madtop:

I exemplet du visar så har du gjort en PF på port 87. Har du även gjort en PF på TCP/80?

Installera tcpdump på din RP2 och kolla om det kommer några paket till den.
#tcpdump -i eth0 port 80 or port 87

#iptables -l
för att lista regler

#/etc/init.d/iptables stop
för att stänga av

Ja, det är en gammal bild, har forwarding på 80 nu. Läste någonstans att ISP:n kan blocka 80 så ville testa någon annan.

Jag installerade tcpdump men förstod inte vad jag skulle göra, den visar bara att 0 packages har kommit igenom. iptables verkar inte gå att sänga av. Kollade även hjälpen men finns inget sådant kommando.

Permalänk
Medlem
Skrivet av Baxtex:

Ja, det är en gammal bild, har forwarding på 80 nu. Läste någonstans att ISP:n kan blocka 80 så ville testa någon annan.

Jag installerade tcpdump men förstod inte vad jag skulle göra, den visar bara att 0 packages har kommit igenom. iptables verkar inte gå att sänga av. Kollade även hjälpen men finns inget sådant kommando.

Både tcpdump & iptables måste köras som root: "sudo tcpdump -i eth0 port 80"

Visar tcpdump "0 packets" så betyder det att inga paket kom fram. Det är meningen att du ska försöka accessa servern samtidigt som du kör tcpdump. Starta tcpdump och kör ett test från t.ex http://www.canyouseeme.org/. Ser du paket vet vi att PF funkar, ser du inte paket vet vi att PF inte funkar.

På min Rasberry med raspbian går det utmärkt att stänga av iptables:
$ sudo /etc/init.d/iptables stop

Och för din kännedom så har jag inga som helst problem att på mitt Telia-bredband sätta upp en http-server på min raspberry. Telia blockar inte p80.

Permalänk
Medlem
Skrivet av madtop:

Både tcpdump & iptables måste köras som root: "sudo tcpdump -i eth0 port 80"

Visar tcpdump "0 packets" så betyder det att inga paket kom fram. Det är meningen att du ska försöka accessa servern samtidigt som du kör tcpdump. Starta tcpdump och kör ett test från t.ex http://www.canyouseeme.org/. Ser du paket vet vi att PF funkar, ser du inte paket vet vi att PF inte funkar.

På min Rasberry med raspbian går det utmärkt att stänga av iptables:
$ sudo /etc/init.d/iptables stop

Och för din kännedom så har jag inga som helst problem att på mitt Telia-bredband sätta upp en http-server på min raspberry. Telia blockar inte p80.

Det var det jag testade, körde canyouseeme.org samt no ips test men inga paket kom fram. Kan det vara en bugg med dd-wrt?

stop kommandot verkar inte fungera för mig iaf: https://imgur.com/a/ZguvI

Kan nämna att jag tunnlar all min trafik via en VPN, men har publikt ip så det borde inte spela någon roll.

Permalänk
Medlem
Skrivet av Baxtex:

Det var det jag testade, körde canyouseeme.org samt no ips test men inga paket kom fram. Kan det vara en bugg med dd-wrt?

stop kommandot verkar inte fungera för mig iaf: https://imgur.com/a/ZguvI

Då har du antagligen inte iptables installerat. Vad får du om du skriver kör "sudo iptables -L" ?

Tvivlar på att det är en bugg i dd-wrt på något så basic som PF. Men den kan ju ha hamnat i något konstigt läge, du kanske skulle testa en fabriksåterställning. Testa även att stänga av UPnP i routern,

Och du är säker på att du har rätt extern ip och rätt intern ip?

Permalänk
Medlem
Skrivet av madtop:

Då har du antagligen inte iptables installerat. Vad får du om du skriver kör "sudo iptables -L" ?

Tvivlar på att det är en bugg i dd-wrt på något så basic som PF. Men den kan ju ha hamnat i något konstigt läge, du kanske skulle testa en fabriksåterställning. Testa även att stänga av UPnP i routern,

Och du är säker på att du har rätt extern ip och rätt intern ip?

Ber om ursäkt här, verkar som att jag hade ställt in den publika ipn fel, nu verkar min port fungera! Testade att gå in på min URL från telefonen(mobilnätet), men jag kommer direkt till routern konstigt nog. :S

Chain INPUT (policy ACCEPT)
target prot opt source destination

Chain FORWARD (policy ACCEPT)
target prot opt source destination

Chain OUTPUT (policy ACCEPT)
target prot opt source destination
pi@raspberrypi:~$

Kommer upp om jag kör sudo iptables -L

Testade att kolla packets igen, prövade porten några gånger men inga packets kom fram. Det borde alltså vara något fel vid routningen till Pi:n?

Permalänk
Medlem
Skrivet av Baxtex:

Ber om ursäkt här, verkar som att jag hade ställt in den publika ipn fel, nu verkar min port fungera! Testade att gå in på min URL från telefonen(mobilnätet), men jag kommer direkt till routern konstigt nog. :S

Du har en router som lyssnar på port 80. Förutom att det är extremt "bad practice" att ha routerns management öppet åt internet så innebär det även att du INTE kan göra en PF på p80 eftersom den är upptagen av routern.

Du bör stänga av så att routern inte lyssnar på port 80.

Permalänk
Medlem
Skrivet av madtop:

Du har en router som lyssnar på port 80. Förutom att det är extremt "bad practice" att ha routerns management öppet åt internet så innebär det även att du INTE kan göra en PF på p80 eftersom den är upptagen av routern.

Du bör stänga av så att routern inte lyssnar på port 80.

Verkar inte gå:

https://www.neowin.net/forum/topic/925758-dd-wrt-access-admin...

Men jag har nu flyttat servern som web interfacet kör på till en obskyr port så att 80 ska vara ledig.
Men nu är jag tillbaka på ruta ett, jag forwarde 8085 istället, går inte att nå. 80 går inte heller.

Permalänk
Medlem
Skrivet av Baxtex:

Verkar inte gå:

https://www.neowin.net/forum/topic/925758-dd-wrt-access-admin...

Men jag kan forwarda port 80 till "ingenting" och välja en annan port till Pi:n.

Men nu är jag tillbaka på ruta ett, jag forwarde 8085 istället, går inte att nå.

Och din apache är bunden till 8085? Når du den lokalt http://192.168.1.142:8085 ?
Och du provar från internet (t.ex via mobilen med wifi avstängt) Och lyssnar med "sudo tcpdump -i eth0 port 8085"
Och du har ingen ytterligare router inkopplad?

Då vet jag inte...
Gör en fabriksåterställning av routern.

Edit: kör ssh mot routern och logga in.
testa att sniffa i routern med tcpdump. Dels på lan-if och dels på wan-if
Kolla ip på wan-if
Kolla iptables -L | grep 8085

Permalänk
Medlem
Skrivet av madtop:

Och din apache är bunden till 8085? Når du den lokalt http://192.168.1.142:8085 ?
Och du provar från internet (t.ex via mobilen med wifi avstängt) Och lyssnar med "sudo tcpdump -i eth0 port 8085"
Och du har ingen ytterligare router inkopplad?

Då vet jag inte...
Gör en fabriksåterställning av routern.

Edit: kör ssh mot routern och testa att sniffa i routern med tcpdump.
Dels på lan-if och dels på wan-if

Ja servern ska vara på 8085 och jag kan nå den lokalt. Om jag testar över internet så når jag inte den, porten är inte ens öppen enligt canyouseeme. Jag har Telias tg vad den nu heter i bryggat läge, min netgear R7000 med DDWRT samt en gammal asus router som jag använder som accesspunkt(Denne har address 192.168.1.2 och har dhcp avstängt).

Får väl bli en återställning, ska bara samla kraft inför det, så himla mycket inställningar jag måste göra om.

Verkar inte kunna ssh:a in till routern ens, den godtar inte mitt lösenord som jag använt nu i några år... Funkar fint i web interfacet. Nej en återställning är nog på sin plats.

Permalänk
Medlem
Skrivet av Baxtex:

Kan nämna att jag tunnlar all min trafik via en VPN, men har publikt ip så det borde inte spela någon roll.

Du kanske ska berätta lite mer om denna setupen.

Permalänk
Medlem
Skrivet av Baxtex:

Ja servern ska vara på 8085 och jag kan nå den lokalt. Om jag testar över internet så når jag inte den, porten är inte ens öppen enligt canyouseeme. Jag har Telias tg vad den nu heter i bryggat läge, min netgear R7000 med DDWRT samt en gammal asus router som jag använder som accesspunkt(Denne har address 192.168.1.2 och har dhcp avstängt).

Får väl bli en återställning, ska bara samla kraft inför det, så himla mycket inställningar jag måste göra om.

Verkar inte kunna ssh:a in till routern ens, den godtar inte mitt lösenord som jag använt nu i några år... Funkar fint i web interfacet. Nej en återställning är nog på sin plats.

Och du är riktigt säker på att din TG7x9 är i bryggat läge?
Kolla vad din dd-wrt har för ip på wan-if. Ska vara skilt från 192.168.1.x. Är det samma ip som du ser på tex http://www.whatsmyip.org/ ?

Och du är säker på att din AP jobbar som en AP och inte en router/NAT? Du har bara sladdar i dess LAN-portar och inget i WAN-porten? Hur ser ARP-tabellen ut i din raspberry (arp -an)? Ser du dd-wrts mac-adress där?

Permalänk
Medlem
Skrivet av iXam:

Du kanske ska berätta lite mer om denna setupen.

Skrivet av madtop:

Och du är riktigt säker på att din TG7x9 är i bryggat läge?
Kolla vad din dd-wrt har för ip på wan-if. Ska vara skilt från 192.168.1.x. Är det samma ip som du ser på tex http://www.whatsmyip.org/ ?

Och du är säker på att din AP jobbar som en AP och inte en router/NAT? Du har bara sladdar i dess LAN-portar och inget i WAN-porten? Hur ser ARP-tabellen ut i din raspberry (arp -an)? Ser du dd-wrts mac-adress där?

Har första jacket i källaren så har TG:n där, ringde Telia och lät de brygga den. Från den har jag sedan ethernet till min router Netgear R7000 som kör DD-WRT på övervåningen. Det är denna som alla mina enheter är anslutna till. Från R7000 har jag även en ethernet kabel som går till en gammal Asus router som jag slagit på "Access point" läge. Denna befinner sig ca 50m från huset, sitter i en liten stuga. Kabeln satt jag i en av de fyra rj45 uttagen på den. Denna setup har fungerat fint i något år.

Kör jag arp -an ser jag R7000 ip address och mac address och min pc:s ip och mac.

Permalänk
Medlem

Men var kör du vpn klienten någonstans? Du säger att du har fast IP på vpn men är alla portar öppna eller kan du öppna de manuellt?

Skickades från m.sweclockers.com

Permalänk
Medlem

Kolla i gränssnittet på din r7000 om den har en publik IP-adress på WAN-sidan. Så att bryggningen av telias router fungerar korrekt

Permalänk
Medlem
Skrivet av davidodbro:

Men var kör du vpn klienten någonstans? Du säger att du har fast IP på vpn men är alla portar öppna eller kan du öppna de manuellt?

Skickades från m.sweclockers.com

På min router. Har en fast address och alla portar är öppna:
https://www.ovpn.se/sv/features/public-ipv4

Skrivet av jocke92:

Kolla i gränssnittet på din r7000 om den har en publik IP-adress på WAN-sidan. Så att bryggningen av telias router fungerar korrekt

Bryggningen fungerar korrekt och har så gjort i några år.

Då jag alltid har samma ip borde det vara enkelt för mig att sätta upp DNS. Jag har ett domännamn hos binero som jag tidigare haft parkerat som jag kan testa med. Jag gick in och ändrade från parkerad till DNS och la till en pekare på min publika ip. Men det var ingenstans jag kunde ange port.

Permalänk
Medlem
Skrivet av Baxtex:

På min router. Har en fast address och alla portar är öppna:
https://www.ovpn.se/sv/features/public-ipv4

Men ditt problem är ju att portarna inte är "öppna".
Hur vet du att VPN:et fungerar som det ska? Är det inte läge att testa utan VPN?

Om jag hade varit i ditt läge skulle jag loggat in på min router och sniffat med tcpdump på dels WAN-interface och dels LAN-interfacet. Då får du snabbt reda på om felet ens ligger i din router.

Permalänk
Medlem
Skrivet av madtop:

Men ditt problem är ju att portarna inte är "öppna".
Hur vet du att VPN:et fungerar som det ska? Är det inte läge att testa utan VPN?

Om jag hade varit i ditt läge skulle jag loggat in på min router och sniffat med tcpdump på dels WAN-interface och dels LAN-interfacet. Då får du snabbt reda på om felet ens ligger i din router.

Min Plex server fungerar fint att nå utifrån, använder port 32400 t ex.

Permalänk
Medlem
Skrivet av Baxtex:

Min Plex server fungerar fint att nå utifrån, använder port 32400 t ex.

Jaha - men då vet vi ju att dina PF's i routern funkar.

Jag blir inte riktigt klok på vad du egentligen har för problem, det är ju bevisligen inga problem att göra en PF i routern.
Hur har du satt upp din webserver? Tillåter den anrop från andra nät?

Och sedan kan jag inte låta bli att bli lite irriterad. Varför kommer du inte med all info på en gång? Om du sagt att du redan har en fungerande PF så hade det varit betydligt enklare att lista ut vad du har för problem.

Permalänk
Medlem
Skrivet av Baxtex:

Min Plex server fungerar fint att nå utifrån, använder port 32400 t ex.

Och vart ligger plex? I routern?

Skickades från m.sweclockers.com

Permalänk
Medlem
Skrivet av madtop:

Jaha - men då vet vi ju att dina PF's i routern funkar.

Jag blir inte riktigt klok på vad du egentligen har för problem, det är ju bevisligen inga problem att göra en PF i routern.
Hur har du satt upp din webserver? Tillåter den anrop från andra nät?

Och sedan kan jag inte låta bli att bli lite irriterad. Varför kommer du inte med all info på en gång? Om du sagt att du redan har en fungerande PF så hade det varit betydligt enklare att lista ut vad du har för problem.

Well, problemet är att jag inte kommer åt hemsidan utanför nätet. Har inte gjort något speciellt med apache servern, följde bara installations instruktionerna som jag hittade här: https://www.raspberrypi.org/documentation/remote-access/web-s...
Jag kommer åt min sida på mitt lokala nätverk just fine.

Sorry, hade inga tankar på det, använder det väldigt sällan.

Skrivet av davidodbro:

Och vart ligger plex? I routern?

Skickades från m.sweclockers.com

Min plex server finns på min stationära dator.

Permalänk
Medlem
Skrivet av Baxtex:

Well, problemet är att jag inte kommer åt hemsidan utanför nätet. Har inte gjort något speciellt med apache servern, följde bara installations instruktionerna som jag hittade här: https://www.raspberrypi.org/documentation/remote-access/web-s...
Jag kommer åt min sida på mitt lokala nätverk just fine.

Sorry, hade inga tankar på det, använder det väldigt sällan.

Min plex server finns på min stationära dator.

Well, vi är överens om att det fungerar att göra port-forward i din router och att du kan nå servar på ditt hemmanät.
Vilket i sin tur innebär att ditt trådämne är felaktigt och vi har lagt ner en jävla massa tid på fel saker.

Och jag tycker fortfarande att du bör lära dig att använda tcpdump.
Med hjälp av tcpdump kan du väldigt snabbt få koll på varför det inte fungerar. Du kan se om det kommer paket till routerns WAN, du kan se om dessa paket dyker upp på LAN, du kan se om paketen kommer till din Pi och du kan se om din Pi svarar på anropen.