කැදැලි WireGuard: මැදි පිම්මට තමන්ගේම වරායට පිළිතුරු දිය නොහැක
මැදි පිම්ම සියල්ල එකම උමගකට යවන විට, එහි ඇතුළු සේවාවට දෙන පිළිතුරු වැරදි මාර්ගයෙන් පිටවේ. අතුරුමුහුණතේ මූල-වරාය නියමය එය නිවැරදි කරයි.
WireGuard පිම්ම තුනක් පොදු ලිපිනයක් නොමැති ජාලයකට ළඟා වේ, පසුව මැද යන්ත්රය සවන් දිය යුතු වූ වරායේ පිළිතුරු දීම නවත්වයි. ඉදිරියට ඇති උමග තවමත් ක්රියා කරයි, දුරස්ථ සත්කාරකය තවමත් ප්රතිචාර දක්වයි, සහ පිටතින් නිහඬ වූයේ මැද සේවාදායකය පමණි. මෙම සංයෝගය ව්යාකූල වන්නේ එය තමන් විසින්ම සිදු කළ එකක් නිසාය: මැදි පිම්ම තමන්ගේම මාර්ගගත කිරීමේ වගුවට අවනත වේ, එම වගුව එහි පිළිතුරු වැරදි දිශාවට යවයි.
මැදි පෙට්ටිය සමඟ කතා කරන තෙක් ක්රියා කරන දාමය
නිදර්ශනාත්මක දාමයක් ගන්න: සේවාලාභී A UDP 500 හි සේවාදායක B වෙත ළඟා වේ, B UDP 500 හි සේවාදායක C දෙසට ඉදිරියට යයි. C තම එකම සහකරුගේ ලිපිනයෙන් පමණක් රථවාහන ගනී, එය එය පත්රයක් බවට පත් කර එහි හැසිරීම සරලව තබයි. B පත්රයක් නොවේ, මෙම අසාර්ථකත්වයේ සියලු රසවත් දේ එහි සිදු වේ.
මෙම වෙනස වැදගත් වන්නේ පත්ර සහ මැද භූමිකාවන් ප්රතිවිරුද්ධ දිශාවන්ට ඇද ගන්නා නිසාය. පත්රයකට කිසිදු ප්රතිවිපාකයක් නොමැතිව සියල්ල එකම උමගකට යැවිය හැක, මන්ද වෙනත් කිසිවක් එය මත රැඳී නොමැති නිසාය. මැදි පිම්ම එකවර සේවාලාභීන්ට අවසන් ලක්ෂ්යයක් සහ දුරස්ථ පැත්තට සේවාලාභියෙකි, එම කාර්යයන් දෙකට වෙනස් මාර්ගගත කිරීමක් අවශ්යය.
පිළිතුර උමග හරහා පිටවන්නේ ඇයි
B හි, C දෙසට මුහුණලා ඇති අතුරුමුහුණත අනුරූප පෙරනිමි මාර්ගය සමඟ AllowedIPs = 0.0.0.0/0 දරයි. එබැවින් B නිපදවන සෑම පැකට්ටුවක්ම එම උමගට යයි, වඩාත් නිශ්චිත දෙයක් ප්රමුඛත්වය නොගන්නේ නම්.
A සිට B වෙත යොමු කළ පැකට්ටුවක් පැමිණ පිළිගැනේ, මන්ද B ගමනාන්තය වන අතර දේශීය බෙදාහැරීම පළමුව සිදු වේ. පිළිතුර A හි පොදු ලිපිනයට ඉලක්ක කළ සම්පූර්ණයෙන්ම නව දේශීයව ජනනය කළ පැකට්ටුවකි, එම ගමනාන්තය උමග තුළ පෙරනිමි මාර්ගයට ගැලපේ. C එය ලබා ගනී, එම ලිපිනය හිමි නැත, එය ඉවත දමයි.
රෝග ලක්ෂණය ගිනිපවුරු ගැටලුවක් හෝ යතුරු නොගැලපීමක් ලෙස කියවේ, මෙහි දෙකම සත්ය නොවේ. C දෙසට උමගේ ගත් ග්රහණයක් පිළිතුරු වැරදි දිශාවට යන බව පෙන්වයි. එම එක් නිරීක්ෂණය කොපමණ වින්යාසයක් කියවීමටත් වඩා කාලය ඉතිරි කරයි, එබැවින් යතුරු වෙනස් කිරීමට පෙර එය ලියා තබන්න. ග්රහණය නොදුටු ඕනෑම අයෙක් උමගම කැඩී ඇතැයි සිතනු ඇත.
පටු අලුත්වැඩියාව: මූල වරායට ගැලපෙන ප්රතිපත්ති නීති
B හි සවන් දෙන සොකට්ටුවෙන් පිළිතුරු මූල වරාය 500 සමඟ පිටවේ. ප්රතිපත්ති නියමයකට එයට ගැලපී එම පැකට්ටු නැවත සාමාන්ය වගුවට යැවිය හැක:
ip rule add sport 500 table main priority 100
ip rule add sport 8080 table main priority 101
ප්රතිපත්ති නීති ප්රමුඛතා අනුපිළිවෙලින් විමසයි, ප්රධාන වගුව 32766 හි පිහිටයි, එබැවින් 100 හි නියමයක් උමගේ පෙරනිමි මාර්ගය කතා කිරීමට පෙර විමසනු ලැබේ. පිටතින් ළඟා විය හැකිව තිබිය යුතු සෑම වරායකටම එක් සටහනක් එක් කරන්න, ඊට වඩා කිසිවක් නොව, එවිට යවන ලද රථවාහන එය සඳහා ඉදි කළ උමග දිගටම භාවිත කරයි.
මෙම උපායේ සීමාව දැන ගන්න. sport තේරීම්කාරකය දේශීයව ජනනය කළ පැකට්ටුවලට ගැලපේ, එය පිළිතුරු අවස්ථාව හරියටම ආවරණය කරයි, B වෙනත් අයෙකු වෙනුවෙන් යවන රථවාහන චේතනාන්විතව ආවරණය නොකරයි. B පිටුපස සත්කාරක වන සේවාවකට තමන්ගේම පිළිතුරක් අවශ්යය, එහි ප්රතිවිරුද්ධය ලෙස පෙනී සිටීම පළමු සේවාවට ක්රියා කර දෙවැන්නට අසාර්ථක වන අලුත්වැඩියාවක් ලබා දෙයි.
නීතියට හිමිකරුවෙකු දෙන්න
විමසුම් තිරයේ ටයිප් කළ නීතියක් අතුරුමුහුණත නැවත ගොඩනැගෙන ඊළඟ වතාවේ අතුරුදහන් වේ. WireGuard සැකසුමක, අතුරුමුහුණත සාදන සහ ඉවත් කරන තැන එය තබන්න:
PostUp = ip rule add sport 500 table main priority 100
PostDown = ip rule del sport 500 table main priority 100
අතුරුමුහුණතේ හිමිකරු NetworkManager, බෙදාහැරීම් කොක්කක් හෝ බහාලුම් ඇතුළු වීමේ ලක්ෂ්යයක් නම්, යුගලය අතින් සංස්කරණය කළ ගොනුවට නොව එම හිමිකරුට අයත් වේ. නැවත සම්බන්ධ වූ පසු ඵලදායී නීති පරීක්ෂා කරන්න, පළමු ආරම්භයෙන් පසුව පමණක් නොව, මන්ද පළමු ආරම්භය සැමවිටම ක්රියා කරන අවස්ථාවය.
විකල්ප අවංකව සසඳන්න
මූල-වරාය නීතිය පිටවීමේ මාර්ග හතරෙන් එකක් වන අතර ඒවායින් පටුම වේ. උමගේ ප්රතිපත්තියට කිසිසේත් නොගැටෙන එක ප්රතිලාභයක් වන අතර, එබැවින් එය පසුකාලීන වෙනස්කම්වලින් බොහෝ විට ඉතිරි වේ. පටු අලුත්වැඩියා ද යෙදිය නොහැකි වූ විට ශබ්දයෙන් අසාර්ථක වේ, විස්තාරිත ව්යතිරේකයක් එහි හේතුව අතුරුදහන් වූ බොහෝ කලකට පසුවත් නිහඬව ක්රියා කරයි. වසර දෙකකින් පෙට්ටියේ හිමිකරු වෙනත් අයෙකු වන විට එම වෙනස අලංකාරයට වඩා වැදගත් වේ.
| Approach | What it costs | Where it breaks |
|---|---|---|
| Source-port policy rule | One rule per exposed port | Anything B forwards rather than originates |
| Destination exception route | A route pinned to specific client addresses | Clients whose address changes |
| Stop full-tunnelling on B | Loses the catch-all path toward C | Designs that depend on it |
| Split into two tunnels | More interfaces and more policy | Nothing, at the cost of complexity |
තෝරා ගැනීමෙන් පසු දෙකෙළවරින්ම සත්යාපනය කරන්න. A සිට, B හි වරායට සම්බන්ධතාවක් අරඹා ටික වේලාවක් කාර්යබහුලව තබන්න. B හි, ip route get <address-of-A> sport 500 වැනි දෙයකින් පිළිතුරු මාර්ගය සාධාරණීකරණය කිරීමට කර්නලයට කියන්න, එය උමග නොව WAN අතුරුමුහුණත නම් කරන බව තහවුරු කරන්න. ඉන් පසු, C පිටුපස කිසිවක් තවමත් දාමය හරහා පිළිතුරු දෙන බව පරීක්ෂා කරන්න, එය ව්යතිරේකය මඟ හැරීමක් බවට නොවී පටුව තිබූ බව සනාථ කරයි. අවසානයේ, වරාය නිර්මාණ සටහන්වල සටහන් කරන්න, නැතිනම් ඊළඟ ක්රියාකරු එය තවත් සේවාවක් මත නැවත සොයා ගනු ඇත.