GNU/Linux >> Znalost Linux >  >> Linux

Připojení Ssh odmítnuto zevnitř sítě Lan?

Používám Fedoru 19 a mám problém s ssh .

Ssh je v provozu a mohu se připojit, když zadám svou IP lan. Ale když zkusím název svého serveru (blahblah.no-ip.org ) Bylo mi odmítnuto připojení. No-ip již běží jako služba a funguje správně (odesílá správnou IP).

Na routeru jsem již nastavil přesměrování portů, změnil jsem také port ssh jak na službě, tak na přesměrování portů routeru (pro případ, že by se můj milovaný ISP rozhodl tyto porty zablokovat). Ale přesto mi bylo připojení odmítnuto a když jsem nmap název hostitele Vidím, že port ssh je uzavřen.

Jedna věc však:mám dva počítače pod stejnou externí IP (nastavil jsem přesměrování portů na správnou interní IP). Když nmap blahblah.no-ip.org Otevřel jsem port 23 a 80. 80 se zdá být v pořádku, ale nikdy jsem na svém počítači nespustil službu telnet.

Nějaké nápady, co ještě zkusit? Router je zte zxv10 a přesměrování portů je správně nastaveno. Říkám to, protože jsem již nastavil přesměrování portů pro záplavu a funguje správně.

Přijatá odpověď:

Není možné se připojit na veřejnou IP adresu předávanou portem ze stejné LAN. Abych to vysvětlil, budu potřebovat příklad.

Předpokládejme, že soukromá IP vašeho routeru je 192.168.1.1 s veřejnou IP 10.1.1.1. Váš server je na 192.168.1.2 portu 2222. Nastavili jste přesměrování portů z 10.1.1.1:1111 na 192.168.1.2:2222.

Pokud s vámi chce někdo na internetu (10.3.3.3) mluvit, vygeneruje paket:

Source: 10.3.3.3 port 33333
Dest:   10.1.1.1 port 1111

Váš router přijme paket 10.1.1.1 a přepíše jej:

Source: 10.3.3.3 port 33333
Dest:   192.168.1.2 port 2222

Váš server přijme tento paket a odešle odpověď:

Source: 192.168.1.2 port 2222
Dest:   10.3.3.3 port 33333

Váš router přijme tento paket na 192.168.1.1 a přepíše jej:

Source: 10.1.1.1 port 1111
Dest:   10.3.3.3 port 33333

A spojení funguje a všichni jsou šťastní.

Nyní předpokládejme, že se připojujete zevnitř vaší LAN (192.168.1.3). Vygenerujete paket:

Source: 192.168.1.3 port 33333
Dest:   10.1.1.1 port 1111

Váš router přijme paket 10.1.1.1 a přepíše jej:

Source: 192.168.1.3 port 33333
Dest:   192.168.1.2 port 2222

Váš server přijme tento paket a odešle odpověď:

Source: 192.168.1.2 port 2222
Dest:   192.168.1.3 port 33333

Zde jsme narazili na problém. Protože cílová IP je ve vaší LAN, váš server neposílá tento paket do routeru k přepsání. Místo toho jej odešle přímo na číslo 192.168.1.3. Ale tento stroj neočekává odpověď od 192.168.1.2 portu 2222. Očekává ji od 10.1.1.1 portu 1111. A tak odmítá poslouchat tento „falešný“ paket a věci nefungují.

Související:SSH 7.4 prodloužená pauza u „závazek:síť“?

Způsob, jak to obejít, je nakonfigurovat svůj router (který také poskytuje DNS pro moji LAN), aby vrátil soukromou IP adresu mého serveru, když vyhledám název hostitele DDNS. Tímto způsobem, když jsem ve své domácí síti, připojuji se přímo k serveru a přeskakuji přesměrování portů. (Toto řešení funguje pouze v případě, že vaše přesměrování portu nemění číslo portu, pouze IP adresu. A na jeden veřejný název hostitele můžete mít pouze 1 server.)


Linux
  1. Připojení odmítlo MongoDB errno 111

  2. Spusťte skript prostředí z příkazu docker-compose uvnitř kontejneru

  3. SSH:připojení k hostiteli localhost port 22:Připojení odmítnuto

  1. Mám změnit výchozí port SSH na linuxových serverech?

  2. IPTables – Port na jinou IP a port (zevnitř)

  3. Přístup na webový server DNAT'ted zevnitř LAN

  1. Jak zkontrolovat rychlost vašeho ssh připojení

  2. Ssh – spouštět vzdálené příkazy, zcela se odpojit od připojení Ssh?

  3. Změňte výchozí číslo portu serveru SSH