Մասնակից:ArmKingdom/Ավազարկղ

Վիքիպեդիայից՝ ազատ հանրագիտարանից
port forwarding via NAT router

Համակարգչային ցանցում պորտի փոխանցումը կամ պորտի քարտեզագրումը (անգլ.՝ Editing Port Forwarding) ցանցի հասցեների ուղղորդման (NAT) ծրագիր է, որը հղում է փոխանցում մեկ հասցեից և պորտի համարի համակցությունից մյուսը: Այս տեխնիկան առավել հաճախ օգտագործվում է պաշտպանված կամ դիմակավորված (ներքին) ցանցի վրա բնակվող սերվերի վրա ծառայություններ մատուցելու համար ՝ դարպասի (անգլ.՝ Gateway) հակառակ կողմում (արտաքին ցանց) հակառակորդի վրա, օգտագործելով վերափոխման նպատակակետ IP հասցեն և կապի համարը ներքին հաղորդավար[1][2]:

Նպատակը[խմբագրել | խմբագրել կոդը]

Պորտի փոխանցումը հնարավորություն է տալիս ցանցից դուրս համակարգիչներին (օրինակ ՝ համակարգիչներ ինտերնետում) միանալ հատուկ համակարգչին կամ ծառայությանը մասնավոր տեղական տարածքային ցանցում (LAN)[3]:

Սովորական լոկալ ցանցում հանգույցները ինտերնետ են ստանում DSL- ի կամ մալուխային մոդեմի միջոցով, որը միացված է երթուղիչին կամ ցանցի հասցեների թարգմանիչին (NAT / NAPT): Մասնավոր ցանցում հաղորդավարները միացված են Ethernet անջատիչին կամ հաղորդակցվում են անլար ցանցի միջոցով: NAT սարքի արտաքին ինտերֆեյսը կարգավորված է հանրային IP հասցեի միջոցով: Մյուս կողմից, երթուղիչի հետևում գտնվող համակարգիչները անտեսանելի են ինտերնետում հաղորդավարների համար, քանի որ յուրաքանչյուրը շփվում է միայն անձնական IP հասցեի միջոցով:

Պորտի փոխանցումը կարգավորելիս ցանցի կառավարիչը առանձնացնում է մեկ պորտի համարը դարպասի(gateway) վրա `մասնավոր ցանցում ծառայության հետ հաղորդակցվելու բացառիկ օգտագործման համար, որը գտնվում է հատուկ սերվերի վրա: Արտաքին հաղորդիչները պետք է իմանան այս նավահանգստի համարը և դարպասի հասցեն ՝ ցանցային ներքին ծառայության հետ շփվելու համար: Հաճախ, հայտնի ինտերնետային ծառայությունների պորտային համարները, ինչպիսիք են 80-րդ պորտը վեբ ծառայությունների համար (HTTP), օգտագործվում են պորտի փոխանցման մեջ, այնպես որ ընդհանուր ինտերնետային ծառայությունները կարող են իրականացվել մասնավոր ցանցերում հաղորդավարների վրա:

Բնորոշ ծրագրերը ներառում են հետևյալը.

  • Հասարակ HTTP սերվերի վարում մասնավոր LAN- ում
  • Secure Shell ից թույլատրել մասնավոր հաղորդավարին մուտքը Ինտերնետից
  • Թույլատրել FTP մասնավոր ցանցի վրա հաղորդավարին մուտքը Ինտերնետից
  • Առանձնակի LAN- ի ներսում հանրային մատչելի խաղի սերվերի վարում

Ադմինիստրատորները կարգավորում են պորտը դեպի դարպասի գործավար համակարգ: Linux- ի միջուկներում դա ձեռք է բերվում փաթեթային ֆիլտրի կանոններով iptables կամ netfilter միջուկի բաղադրամասերում: BSD և macOS գործառնական համակարգերը նախքան Yosemite- ը (OS 10.10.X) իրականացնում են այն Ipfirewall (ipfw) մոդուլում, մինչդեռ MacOS գործող համակարգերը, որոնք սկսվում են Yosemite- ով, այն իրականացնում են Packet Filter (pf) մոդուլում:

Երբ օգտագործվում է դարպասի սարքերում, պորտը կարող է իրականացվել մեկ կանոնով `նպատակակետային հասցեն և պորտըը թարգմանելու համար: (Linux միջուկի վրա, սա DNAT կանոն է): Աղբյուրի հասցեն և պորտըը, այս դեպքում, մնում են անփոփոխ: Երբ օգտագործվում է այն սարքերի վրա, որոնք ցանցի լռելյայն դարպաս չեն հանդիսանում, սկզբնաղբյուրը պետք է փոխվի, որպեսզի թարգմանիչ մեքենայի հասցեն լինի, կամ փաթեթները շրջանցեն թարգմանիչը, և կապը ձախողվի:

Երբ պորտը ուղղորդումը իրականացվում է proxy process- ով(օրինակ ՝ կիրառական շերտի firewall- ների, SOCKS վրա հիմնված firewall- ների կամ TCP միացման միջոցով), ապա ոչ մի փաթեթ իրականում չի թարգմանվում, միայն տվյալները վստահված են: Դա սովորաբար հանգեցնում է, որ աղբյուրի հասցեն (և պորտի համարը) փոխվում է վստահված մեքենայի հասցեին:

Սովորաբար մասնավոր host-երից միայն մեկը կարող է միանգամից օգտագործել որոշակի փոխանցված պորտ, բայց կարգավորումը երբեմն հնարավոր է տարբերակել մուտքը սկզբնաղբյուրի կողմից:

Unix-ի նման գործող համակարգերը երբեմն օգտագործում են պորտերի փոխանցում, որտեղ 1024-ից փոքր նավահանգստի համարները կարող են ստեղծվել միայն որպես արմատային օգտագործող ծրագրային ապահովման միջոցով: Superuser արտոնյալներով վազելը (պորտըը կապելու համար) կարող է անվտանգության ռիսկ հանդիսանալ հյուրընկալողի համար, հետևաբար նավահանգստի փոխանցումն օգտագործվում է ցածր համարակալված պորտը մեկ այլ բարձր համարակալված նավահանգստի վերահղման համար, այնպես որ այդ ծրագրային ծրագիրը կարող է գործել որպես ընդհանուր գործող նվազեցված արտոնություններով համակարգի օգտագործող:

Universal Plug and Play արձանագրություն (UPnP) ապահովում է առանձնահատկություն `բնակելի ինտերնետ դարպասներում ավտոմատ տեղադրելու պորտերի օրինակներ: UPnP- ն սահմանում է Internet Gateway Device Protocol (IGD), որը ցանցային ծառայություն է, որով Ինտերնետային դարպասը գովազդում է իր ներկայությունը մասնավոր ցանցում Simple Service Discovery Protocol (SSDP) միջոցով: Ծրագիր, որն ապահովում է ինտերնետի վրա հիմնված ծառայությունը, կարող է հայտնաբերել այդպիսի դարպասներ և օգտագործել UPnP IGD արձանագրություն ՝ դարպասի վրա պահելու համար նավահանգստի համարը և դարպասապահին առաջացնում է փաթեթներ փոխանցել իր ունկնդրին:

Պորտի փոխանցման տեսակներ[խմբագրել | խմբագրել կոդը]

Պորտի փոխանցումը կարելի է բաժանել հետևյալ հատուկ տեսակների ՝ տեղական, հեռավոր և դինամիկ պորտերի վերահասցեավորում[4] :

Տեղական պորտի ուղարկում[խմբագրել | խմբագրել կոդը]

Տեղական պորտի առաքումը պորտի ամենատարածված տեսակն է: Այն օգտագործվում է թույլ տալու համար, որ օգտագործողը տեղական համակարգչից կապի մեկ այլ սերվերի հետ կապի միջոցով, այսինքն `փոխանցի տվյալները անվտանգ մեկ այլ հաճախորդի ծրագրից, որն աշխատում է նույն համակարգչում, որպես Secure Shell (SSH) հաճախորդ: Տեղական պորտերի փոխանցմամբ օգտագործելով, որոշ վեբ էջեր արգելող firewall- ները կարող են շրջանցվել[5] :

SSH հաճախորդի միացումները փոխանցվում են, SSH սերվերի միջոցով, նախատեսված նպատակակետային սերվերին: SSH սերվերը կազմաձևված է, որպեսզի տվյալ պորտից տվյալները վերափոխի (որը տեղական է հյուրընկալողին, որը վարում է SSH հաճախորդը) ապահով թունելի միջոցով որոշակի նշված նպատակակետային հյուրընկալողի և պորտի միջոցով: Տեղական պորտը նույն համակարգչում է, ինչ SSH հաճախորդը, և այս պորտը «փոխանցվող պորտն» է: Միևնույն համակարգչի վրա ցանկացած հաճախորդ, որը ցանկանում է միանալ նույն նշանակման հյուրընկալողին և պորտին, կարող է կազմաձևվել `փոխանցված պորտին միանալու համար (այլ ոչ թե ուղղակիորեն դեպի նշանակման սերվերը և պորտը): Այս կապի հաստատումից հետո SSH հաճախորդը լսում է փոխանցված պորտում և դիմումներով ուղարկված բոլոր տվյալներն ուղղում դեպի այդ պորտ ՝ ապահով թունելի միջոցով դեպի SSH սերվեր: Սերվերը գաղտնագրում է տվյալները, այնուհետև վերահղում այն ​​դեպի նպատակակետ հյուրընկալող և պորտ[6] :

Հրամանի տողի վրա (անգլ.՝ Command Line (cmd)) «-L» - ը նշում է տեղական պորտի փոխանցումը: Տեղադրման սերվերը և երկու պորտային համարները պետք է ներառվեն: 1024-ից պակաս կամ 49150-ից ավելի պորտային համարները վերապահված են համակարգին: Որոշ ծրագրեր կաշխատեն միայն հատուկ աղբյուրի պորտերով, բայց մեծ մասի համար հնարավոր է օգտագործել ցանկացած աղբյուրի պորտի համարը:

Տեղական պորտի փոխանցում[խմբագրել | խմբագրել կոդը]

  • Օգտագործելով տեղական պորտի փոխանցումը ՝ փոստ ստանալու համար[7]
  • Միացրեք նոութբուքից մի կայք `SSH թունելի միջոցով:

Հեռակառավարման պորտի փոխանցում[խմբագրել | խմբագրել կոդը]

Պորտի փոխանցման այս ձևը հնարավորություն է տալիս կիրառել անվտանգ ցանցի (SSH) կապի սերվերի կողմից SSH- ի հաճախորդի կողմից բնակվող ծառայություններ մուտք գործելու ծառայություններ[8] : Բացի SSH- ից, կան նաև անհատական ​​թունելային սխեմաներ, որոնք օգտագործում են հեռավոր(remote) պորտի վերահասցեագրումը նույն ընդհանուր նպատակներով[9] : Այլ կերպ ասած, հեռավոր պորտի փոխանցումը թույլ է տալիս օգտվողներին միանալ թունելի, SSH- ի կամ այլի սերվերի կողմը դեպի հեռավոր ցանցային ծառայություն, որը գտնվում է թունելի հաճախորդի կողմում:

Հեռավոր(remote) պորտի վերահասցեավորումն օգտագործելու համար պետք է հայտնի լինեն նշանակման սերվերի հասցեն (թունելի հաճախորդի կողմում) և երկու պորտերի համարները: Ընտրված պորտերի համարները կախված են այն բանից, թե որ ծրագիրը պետք է օգտագործվի:

Հեռակառավարման պորտի փոխանցումը թույլ է տալիս այլ համակարգիչներ մուտք գործել հեռավոր սերվերների վրա հյուրընկալված ծրագրեր: Երկու օրինակ.

  • Ընկերության աշխատողն իր տանը հյուրընկալում է FTP սերվեր և ցանկանում է մուտք գործել FTP ծառայություն աշխատավայրում համակարգիչների միանալու համար: Դա անելու համար աշխատողը կարող է SSH- ի միջոցով հեռավոր պորտ փոխանցել ընկերության ներքին համակարգիչներին ՝ ներառելով նրանց FTP սերվերի հասցեն և օգտագործելով FTP- ի ճիշտ պորտային համարները (ստանդարտ FTP պորտը TCP / 21 է)[10]
  • Հեռավոր աշխատասեղանի սեսիաների բացումը հեռավոր պորտի փոխանցման սովորական կիրառում է: SSH- ի միջոցով դա հնարավոր է իրականացնել `բացելով վիրտուալ ցանցի հաշվարկային պորտը (5900) և ներառելով նպատակակետ համակարգչի հասցեն[6] :

Դինամիկ պորտի փոխանցում[խմբագրել | խմբագրել կոդը]

Դինամիկ պորտի փոխանցումը (DPF) firewall- ի կամ NAT- ի անցման պահանջարկային եղանակ է `firewall- ի անցքերի օգտագործմամբ: Նպատակը հնարավորություն է տալիս հաճախորդներին ապահով կերպով միանալ վստահելի սերվերին, որը հանդես է գալիս որպես միջնորդ ՝ մեկ կամ մի քանի նպատակակետային սերվերներ տվյալներ ուղարկելու / ստանալու նպատակով[6] :

DPF- ն կարող է իրականացվել `տեղադրելով տեղական դիմում, ինչպիսին է SSH- ը, որպես SOCKS վստահված սերվեր, որը կարող է օգտագործվել ցանցի կամ Ինտերնետի միջոցով տվյալների փոխանցումը մշակելու համար: Ծրագրերը, ինչպիսիք են վեբ զննարկիչները, պետք է կազմաձևվեն անհատական ​​կարգով `վստահված անձի միջոցով երթևեկությունը ուղղելու համար, որը հանդես է գալիս որպես անվտանգ թունելի մեկ այլ սերվերի: Երբ վստահված անձին այլևս անհրաժեշտ չէ, ծրագրերը պետք է կազմաձևվեն իրենց բնօրինակ պարամետրերին: DPF- ի ձեռնարկի պահանջների պատճառով, այն հաճախ չի օգտագործվում: [6]

Կապը հաստատվելուց հետո, DPF- ն կարող է օգտագործվել ՝ անվստահելի ցանցին միացված օգտագործողի համար լրացուցիչ անվտանգություն ապահովելու համար: Քանի որ տվյալները պետք է անցնեն անվտանգ թունելի միջոցով մեկ այլ սերվերի նախքան իր նախնական նպատակակետին ուղարկվելը, օգտագործողը պաշտպանված է փաթեթային խայթոցից, որը կարող է տեղի ունենալ LAN- ում[11] :

DPF- ն հզոր գործիք է `օգտագործելու շատ տարբերակներ; Օրինակ, սուրճ խանութի, հյուրանոցի կամ այլ կերպ նվազագույն անվտանգ ցանցի միջոցով ինտերնետին միացած օգտագործողը կարող է ցանկանալ օգտագործել DPF- ը ՝ որպես տվյալների պաշտպանության միջոց: DPF- ն կարող է օգտագործվել նաև արտաքին պատուհաններ մուտք սահմանափող firewall- երը շրջանցելու համար, ինչպիսիք են կորպորատիվ ցանցերում:

Ծանոթագրություններ[խմբագրել | խմբագրել կոդը]

  1. «Definition of: port forwarding». PC Magazine. Վերցված է 2008-10-11-ին.
  2. Rory Krause. «Using ssh Port Forwarding to Print at Remote Locations». Linux Journal. Վերցված է 2008-10-11-ին.
  3. Jeff "Crash" Goldin. «How to set up a home web server». Red Hat. Վերցված է 2008-10-11-ին.
  4. OpenSSH Port forwarding
  5. «Local and Remote Port Forwarding and the Reflection for Secure IT Client 7.1 or Higher - Tech Note 2433». Support.attachmate.com. 2012-11-09. Վերցված է 2014-01-30-ին.
  6. 6,0 6,1 6,2 6,3 «SSH/OpenSSH/PortForwarding - Community Ubuntu Documentation». Help.ubuntu.com. 2013-12-13. Վերցված է 2014-01-30-ին.
  7. «Local and Remote Port Forwarding and the Reflection for Secure IT Client 7.1 or Higher - Tech Note 2433». Support.attachmate.com. 2012-11-09. Վերցված է 2014-01-30-ին.
  8. http://www.vandyke.com (2005-06-12). «Tunneling with Secure Shell - Appendix A: Remote Port Forwarding». Vandyke.com. Վերցված է 2014-01-30-ին. {{cite web}}: External link in |author= (օգնություն)
  9. «Local versus Remote Port Forwarding». NetworkActiv. Վերցված է 8 June 2014-ին.
  10. «FTP Port Number 21 - Port 21 TCP». Compnetworking.about.com. 2013-12-19. Վերցված է 2014-01-30-ին.
  11. «SSH Dynamic Port Forwarding (Hacking Illustrated Series InfoSec Tutorial Videos)». Irongeek.com. Վերցված է 2014-01-30-ին.

Արտաքին հղումներ[խմբագրել | խմբագրել կոդը]