Konfiguriranje porta za naprijed na Windows

U sustavu Windows, počevši od sustava Windows XP, postoji ugrađena opcija instalacije prosljeđivanje / prosljeđivanje luka (luka za prosljeđivanje). Zbog ove značajke, dolazna TCP veza (IPv4 ili IPv6) na bilo koji lokalni priključak) može se preusmjeriti na drugi port ili čak na ulaz na udaljenom računalu. Štoviše, nije nužno da sustav ima uslugu slušanja na ovom priključku.

Na Linuxu je prosljeđivanje porta prilično jednostavno pomoću iptables. U sustavima Windows Server, usmjeravanje porta obično koristi uslugu usmjeravanja i udaljenog pristupa (RRAS). No, postoji lakši način konfiguriranja porta za prosljeđivanje, koji jednako dobro funkcionira na bilo kojoj verziji sustava Windows..

Prosljeđivanje porta na Windows konfigurirano je iz naredbenog retka putem načina Portproxy Netsh timovi. Sintaksa naredbe je sljedeća:
netsh sučelje portproxy dodajte v4tov4 listenaddress = localaddress listeport = localport connectaddress = destaddress connectport = destport
gdje,

  • listenaddress - lokalna IP adresa na kojoj se očekuje veza
  • listenport - lokalni TCP port za slušanje (dolazna veza očekuje se na njemu)
  • connectaddress - lokalna ili udaljena IP adresa ili DNS ime na koje bi se trebala preusmjeriti dolazna veza
  • connectport - TCP port na koji će se preusmjeriti veza s porta za poslužitelj

Recimo da je naš zadatak omogućiti RDP usluzi da odgovori na nestandardni port, na primjer, 3340 (naravno, taj se port može promijeniti u postavkama same usluge, ali mi koristimo RDP da pojednostavimo demonstraciju tehnike preusmjeravanja). Da bismo to učinili, moramo dolazni promet preusmjeriti na TCP port 3340 na drugi lokalni port - 3389 (standardni rdp port).

primjedba. Ne bi trebao poslušati ovaj port na sustavu druga služba.

Pokrenite naredbenu liniju s administratorskim pravima i izvršite.

netsh sučelje portproxy dodajte v4tov4 listeport = 3340 listenaddress = 10.10.1.110 connectport = 3389 connectaddress = 10.10.1.110

Gdje je 10.10.1.110 trenutna IP adresa ovog računala

Pomoću netstata provjeravamo da se port 3340 sluša na računalu:

netstat -ano | findstr: 3340

primjedba. Ako ova naredba ne vrati ništa i prosljeđivanje porta kroz mrežno sučelje portproxy ne radi, provjerite je li iphlpsvc usluga omogućena na vašem sustavu (IP Helper / IP Helper Service).

A na mrežnom sučelju za koje se stvara pravilo prosljeđivanja porta mora biti omogućena podrška za IPv6.

Ovo su preduvjeti za ispravan rad prosljeđivanja luka. Ako nisu omogućeni IP Helper i IPv6, mehanizam za preusmjeravanje ne radi.

Proces koji sluša na ovom priključku možete odrediti pomoću njegovog PID-a (u našem primjeru PID je 636):

popis zadataka | findstr 636

Pokušat ćemo se povezati s ovim računalom iz udaljenog sustava pomoću bilo kojeg rdp klijenta. Kao rdp port morate navesti 3340 (port je naveden nakon dvotočke nakon adrese rdp poslužitelja), na primjer, 10.10.1.110:3340:

Veza se mora uspješno uspostaviti.

Važno je. Provjerite jesu li u postavkama vašeg vatrozida (vatrozid Windows ili vatrozid treće strane, koji su često uključeni u antivirusni softver) dopuštene dolazne veze na novi ulaz. Ako je potrebno, možete dodati novo pravilo vatrozidu sustava Windows naredbom:

netsh advfirewall firewall dodaj naziv pravila = "RDP_3340" protokol = TCP dir = in localip = 10.10.1.110 localport = 3340 action = dozvoli

Prilikom izrade pravila dolaznog vatrozida putem grafičkog sučelja za priključak 3340, ne trebate povezati nijedan program jer ovaj priključak sluša isključivo mrežni upravljač.

Možete stvoriti bilo koji broj pravila za prosljeđivanje ulaza u sustavu Windows. Sva pravila portproxy sučelja mreže su trajna i postoje u sustavu nakon ponovnog pokretanja Windows.

Prikazujemo popis svih pravila za prosljeđivanje TCP porta u sustavu:

netsh sučelje portproxy prikaži sve

U našem slučaju postoji samo jedno pravilo prosljeđivanja s porta 3340 na 3389:

Slušajte na ipv4: Spajanje na ipv4:
Adresa adrese Port Port
--------------- ----------  --------------- ----------
10.10.1.110 3340 10.10.1.110 3389

vijeće. Također, postavke načina portproxy mogu se dobiti ovako:
smeće za mrežni portproxy sučelje
# ===========================
Konfiguracija proxy porta
# ===========================
pushpro sučelje portproxy
reset
dodajte v4tov4 listeport = 3340 connectaddress = 10.10.1.110 connectport = 3389
popd
# Kraj konfiguracije proxy porta

Da biste uklonili određeno pravilo za preusmjeravanje:

netsh sučelje portproxy delete v4tov4 listeport = 3340 listenaddress = 10.10.1.110

Da biste izbrisali sva dostupna pravila preusmjeravanja:

resetiranje mrežnog sučelja portproxy 
Važno je. Takav program preusmjeravanja funkcionira samo za TCP portove ... Promet na UDP portovima ne može se preusmjeriti. Također ne možete koristiti adresu 127.0.0.1 kao poveznicu.

Ako trebate preusmjeriti dolaznu TCP vezu na drugo računalo, naredba može izgledati ovako:

netsh sučelje portproxy dodajte v4tov4 listeport = 3389 listenaddress = 0.0.0.0 connectport = 3389 connectaddress = 192.168.1.100

Ovo pravilo će preusmjeriti sve dolazne RDP zahtjeve (na port 3389) s ovog računala na udaljeno računalo s IP adresom 192.168.1.100

Još jedna implicitna značajka portproxy-a je mogućnost stvaranja izgleda lokalnog rada bilo koje udaljene mrežne usluge.

Na primjer, stvaramo takvo preusmjeravanje iz lokalnog ulaza 8888 na udaljenu adresu 213.180.204.3:

netsh sučelje portproxy dodajte v4tov4 listeport = 8888 connectport = 80 connectaddress = 213.180.204.3 protokol = tcp

Sada, ako u pregledniku prijeđete na adresu http: // localhost: 8888 /, otvorit će se početna stranica Yandexa. tj unatoč činjenici da preglednik pristupa lokalnom računalu, otvara udaljenu stranicu.

Prosljeđivanje porta također se može koristiti za prosljeđivanje priključka s adrese vanjske mrežne kartice na port na virtualnom računalu koji radi na istom računalu.

Bilo je i slučajeva da su u sustavu Windows Server 2012 R2 pravila za prosljeđivanje portova funkcionirala samo do ponovnog pokretanja sustava, a nakon ponovnog pokretanja su resetirana. U tom slučaju trebate provjeriti postoje li povremeni prekidi na mrežnom sučelju i ako se IP adresa ne mijenja kad se OS pokrene (bolje je koristiti statički IP). Kao zaobilazno rješenje morao sam dodati skriptu s mrežnim pravilima portproxy sučelja u Windows planer koji se pokreće kada se sustav pokrene.

U sustavu Windows Server 2003 / XP da biste preusmjeravanje radili, morate dodatno omogućiti postavku registra IPEnableRouter = 1 u grani HKEY_LOCAL_MACHINE \ SYSTEM \ ControlSet001 \ Services \ Tcpip \ Parametri