[RPi] Hjälp med att få SSH att fungera utanför LAN

Permalänk
Medlem

[RPi] Hjälp med att få SSH att fungera utanför LAN

Hej, som titeln insinuerar så vill jag ha hjälp med att kunna nå min Pis SSH-server utanför LAN. Jag har försökt meckat själv men stött på en stor mur som hindrar mig från att själv klura ut hur jag ska göra.

Jag har en ny build av Rasbian (Wheezy) och en Dlink DIR-825 router.

i Pin så har jag ändrat /etc/network/interfaces till:

auto lo iface lo inet loopback iface eth0 inet static address 192.168.3.107 netmask 255.255.255.0 gateway 192.168.3.1 allow-hotplug wlan0 iface wlan0 inet manual wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf iface default inet dhcp

och även reserverat IP:n i routern till min Pi.

enligt /etc/ssh/sshd_config så är det även port 22 som den lyssnar efter.

I routern har jag även gjort en virtuell server like so:

och även försökt att bara använda Port Forwarding på port 22 till Pins IP, inget fungerar. Detta gör mig otroligt frustrerad och jag hoppas att ni här kan hjälpa mig med detta =(

Permalänk
Medlem

Det hela ser ju vettigt ut, fungerar SSH lokalt så ska det inte behövas göra nått mer på Pi:n.

Fråga: Varifrån testar du när du försöker ansluta? Om du försöker ansluta till ditt externa ip från en annan maskin bakom så kommer det antagligen inte funka, många konsument-"routers" stöder inte nat-reflection.

Så för att testa din portforward måste du nog helst köra från ett annat publikt ip bortom routern.

Permalänk
Medlem

När jag försöker ansluta genom connectbot på mobilens 3G-nät så fungerar det inte iaf =S

Permalänk

Kan det vara någon brandvägg som hindar dig från att kommunicera med pajjen?

Hittade lite om iptabels ->

iptables -I INPUT -p tcp --dport 22 -j ACCEPT

Visa signatur

Stationär Dator : FD define r3|Corsair RM 750W|i7 4770K +NH-U9B SE2|Z87-DS3H|ASUS R9 290 4GB DirectCuII|A-data 1600 DDR3 8GB|2TB + 1TB + 1 TB + 120Gb SSD
Bärbar dator : Acer Aspire TimelineX 5820TG

BeErNwHiSkY:Beer and Whisky!

Permalänk
Medlem

den tycker att --dport är ett unknown option, och kör jag bara -dport så tycker den att 22 är ett bad argument, saknar jag någon modul då måntro? jag är rätt grön gällande linux så versionen för mindre begåvade människor funkar bra

Permalänk
Skrivet av Tenbin:

den tycker att --dport är ett unknown option, och kör jag bara -dport så tycker den att 22 är ett bad argument, saknar jag någon modul då måntro? jag är rätt grön gällande linux så versionen för mindre begåvade människor funkar bra

Lyckades i alla fall på min paj dock tror ja inte iptables är rätt vid närmare fundering. Så behövs nog en annan lösning!

( sudo iptables -I INPUT -p tcp --dport 22 -j ACCEPT funkade bra )

Visa signatur

Stationär Dator : FD define r3|Corsair RM 750W|i7 4770K +NH-U9B SE2|Z87-DS3H|ASUS R9 290 4GB DirectCuII|A-data 1600 DDR3 8GB|2TB + 1TB + 1 TB + 120Gb SSD
Bärbar dator : Acer Aspire TimelineX 5820TG

BeErNwHiSkY:Beer and Whisky!

Permalänk
Medlem

provade både med port 22 (som är den privata) och 2212 (som är den publika), kommer fortfarande inte in =S

Permalänk
Medlem

Kör "iptables -L" (eventuellt med sudo framför) och se om det ens finns några regler för iptables. Om inget är konfat så kommer den släppa igenom allt och då är problemet någon annanstans.

Visa signatur

WS: Fractal Design Pop Silent | Seasonic Prime G12 GC 550W | Gigabyte B650 Eagle AX | Ryzen 7 7700 | Corsair 64GB DDR5 | Asus Xonar DX | Arch Linux (x86_64) | Eizo EV2795
HTPC: Philips 50PUS8804, Kodi samt extern usb-disk
Server: Raspberry Pi 4 | 8GB RAM | HDD 750GB | Arch Linux (armv7h)

Permalänk
Medlem

outputen från iptables -L är:

Chain INPUT (policy ACCEPT) target prot opt source destination ACCEPT tcp -- anywhere anywhere tcp dpt:ssh ACCEPT tcp -- anywhere anywhere tcp dpt:2212 ACCEPT tcp -- anywhere anywhere tcp dpt:ssh Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination

Permalänk
Medlem

Kolla på "port forwarding" på d-link routern istället för "virtual servers".

Dessutom förstår jag inte varför din public port är 2212? Sätt den bara till 22.

Du ska alltså inte göra något på din RPI eller iptabels eller andra förslag du fått som rör raspberry pi, det tror jag verkligen inte.

PM:a mig din externa ip-adress så kan jag hjälpa dig komma fram till vart felet ligger.

Visa signatur

HTPC - Bygglogg; http://www.sweclockers.com/album/?id=2902
HTPC - Galleri; http://www.sweclockers.com/galleri/6562-htpc-galleribilder
42U - Bygglogg; http://www.sweclockers.com/galleri/7862-42u-rackskap-i-hemmet
i7 8700K, Antec kühler 620, Asus ROG Strix Z370-I Gaming, Corsair Vengeance RGB DDR4-2666 2x16GB RAM, ASUS GTX 1070

Permalänk
Medlem

Har provat med port forwarding också, gick ungefär lika bra =/ har läst att det är bra att inte ha port 22 som public då man slipper script kiddies som försöker brute forca servern. Ska kolla om det löser sig med port forwarding, annars PMar jag IPn

Permalänk
Medlem
Skrivet av Tenbin:

Har provat med port forwarding också, gick ungefär lika bra =/ har läst att det är bra att inte ha port 22 som public då man slipper script kiddies som försöker brute forca servern. Ska kolla om det löser sig med port forwarding, annars PMar jag IPn

Då måste du byta i SSH configen om du ska byta port.

Visa signatur

HTPC - Bygglogg; http://www.sweclockers.com/album/?id=2902
HTPC - Galleri; http://www.sweclockers.com/galleri/6562-htpc-galleribilder
42U - Bygglogg; http://www.sweclockers.com/galleri/7862-42u-rackskap-i-hemmet
i7 8700K, Antec kühler 620, Asus ROG Strix Z370-I Gaming, Corsair Vengeance RGB DDR4-2666 2x16GB RAM, ASUS GTX 1070

Permalänk
Medlem

gäller det även om den privata är 22? eller menar du bara för port forwarding?

Permalänk
Medlem
Skrivet av Tenbin:

gäller det även om den privata är 22? eller menar du bara för port forwarding?

Om du inte vill ha port 22 för din SSH server, ska du ange de i SSH configen så din SSH server inte svarar på port 22.

Visa signatur

HTPC - Bygglogg; http://www.sweclockers.com/album/?id=2902
HTPC - Galleri; http://www.sweclockers.com/galleri/6562-htpc-galleribilder
42U - Bygglogg; http://www.sweclockers.com/galleri/7862-42u-rackskap-i-hemmet
i7 8700K, Antec kühler 620, Asus ROG Strix Z370-I Gaming, Corsair Vengeance RGB DDR4-2666 2x16GB RAM, ASUS GTX 1070

Permalänk
Medlem

nano /etc/ssh/sshd_config

# What ports, IPs and protocols we listen for Port 2212

CTRL+O Yes[ENTER] CTRL+X

sudo /etc/init.d/ssh reload

Sedan får du ställa in både public och private i din router och peka på porten 2212.

Antar att du har en annan användare utöver root som du använder samt får köra sudo? I så fall sätter i i sshd-configen:

PermitRootLogin no

Och lägger till din användare:

AllowUsers simon

Rekommenderar även att du installerar t.ex. DenyHosts.

Visa signatur

pfSense: GA-J1900N-D3V Quad-core Celeron 2GHz, Samsung 4GB, pfSense 2.2.2@USB
ESXi: i5 3470S, Gigabyte GA-B75N, Corsair XMS3 16GB, Intel PRO/1000 VT Quad GbE, Streacom F7C, ESXi@USB
Campfire Audio Lyra II, HiFiMAN HE-400, Yamaha EPH-100, Audioengine D1, FiiO E10

Permalänk
Medlem
  1. Iptables: Jag utgår ju från att det är testat som så att man kommer åt PI inom det interna nätverket... Funkar det lokalt så är inte iptables problemet.

  2. Angående portnummer, hans routerconfig såg ju korrekt ut, publik port 2212 mappar mot lokal port 22. Det är fullt legit, man behöver inte ha samma port även internt vilket gör att han kan lämna sin port 22 intakt på pi:n.

Störst sannolikhet är som nån var inne på att det är configen portforwarden som strular.
Eventuellt att det är nått problem med klienten på telefonen.

Nya test:
A) Kan du ansluta till PI:n med putty från din windowsmaskin bakom routern?
B) Om du ansluter telefonen till ditt wlan, bakom routern, fungerar connectbot då?

Är det "ja" på bägge av dom så är det nått strul med portforward i din router.

Permalänk
Medlem
Skrivet av simonw:

nano /etc/ssh/sshd_config

# What ports, IPs and protocols we listen for Port 2212

CTRL+O Yes[ENTER] CTRL+X

sudo /etc/init.d/ssh reload

Sedan får du ställa in både public och private i din router och peka på porten 2212.

Antar att du har en annan användare utöver root som du använder samt får köra sudo? I så fall sätter i i sshd-configen:

PermitRootLogin no

Och lägger till din användare:

AllowUsers simon

Rekommenderar även att du installerar t.ex. DenyHosts.

Helt korrekt!

Skrivet av BasseBaba:
  1. Iptables: Jag utgår ju från att det är testat som så att man kommer åt PI inom det interna nätverket... Funkar det lokalt så är inte iptables problemet.

  2. Angående portnummer, hans routerconfig såg ju korrekt ut, publik port 2212 mappar mot lokal port 22. Det är fullt legit, man behöver inte ha samma port även internt vilket gör att han kan lämna sin port 22 intakt på pi:n.

Störst sannolikhet är som nån var inne på att det är configen portforwarden som strular.
Eventuellt att det är nått problem med klienten på telefonen.

Nya test:
A) Kan du ansluta till PI:n med putty från din windowsmaskin bakom routern?
B) Om du ansluter telefonen till ditt wlan, bakom routern, fungerar connectbot då?

Är det "ja" på bägge av dom så är det nått strul med portforward i din router.

Jag och TS satt och testa lite igår, det kom fram senare att det tydligen sitter flera routrar på vägen?! Alltså måste TS komma åt den sista routern i huset (antar det bara finns en till utöver hans) och öppna portar. Allt funkar lokalt till den, så inget tjafs med iptables.

Visa signatur

HTPC - Bygglogg; http://www.sweclockers.com/album/?id=2902
HTPC - Galleri; http://www.sweclockers.com/galleri/6562-htpc-galleribilder
42U - Bygglogg; http://www.sweclockers.com/galleri/7862-42u-rackskap-i-hemmet
i7 8700K, Antec kühler 620, Asus ROG Strix Z370-I Gaming, Corsair Vengeance RGB DDR4-2666 2x16GB RAM, ASUS GTX 1070