පෝට් ෆෝවර්ඩ් එදිරිව VPN ප්රවේශය: පැකට්ටුව ඇත්තටම යන්නේ කොහෙද
පෝට් ෆෝවර්ඩ් ගමනාන්තය නැවත ලියා එහි නතර වේ; VPN පළමුව පැකට්ටුව ඔතා ගනී. කුමන ස්ථරය කවරෙක් වෙනස් කරයි ද සහ HTTPS සඳහා එහි අර්ථය කුමක් දැයි බලන්න.
නිර්මාණ දෙකක්, එක් HTTPS යෙදුමක්, සහ පැකට්ටුව එක් එක් තුළ වෙනස් මාර්ගයක් ගනී. පෝට් ෆෝවර්ඩ් පැකට්ටුව ලැබෙන තැන වෙනස් කර ඉතිරිය නොසලකා හරි. VPN පළමුව එම පැකට්ටුව තවත් පැකට්ටුවක් තුළ රැගෙන යයි, එබැවින් යෙදුමේ ශ්රාවකයා වෙනස් මූලාශ්රයක් සහ කුඩා උපරිම ගෙවුම් භාරයක් දකී. මිනිසුන් තර්ක කරන සංකේතනය දෙක්හිම පවතී, මන්ද යෙදුම තවමත් HTTPS වේ; වෙනස් වන්නේ කවුරුන්ට සම්බන්ධතාවයක් විවෘත කළ හැකි ද සහ අතරමැදි ජාලයට නිරීක්ෂණය කළ හැක්කේ කුමක් ද යන්නයි. එම වෙනස ප්රායෝගික ප්රශ්න බොහොමයක් විසඳයි.
DNAT රීතිය ගමනාන්තය නැවත ලියා එහි නතර වේ
Linux ද්වාරයක සේවාවක් ප්රකාශයට පත් කිරීම යනු nat වගුවේ PREROUTING දාමයේ රීතියක්, හෝ nftables හි එහි සමානය. රීතිය පොදු ලිපිනය සහ තොටුපළ සමඟ ගැලපෙන අතර, පසුව ගමනාන්තය යෙදුමේ පුද්ගලික ලිපිනයට නැවත ලියයි. මූලාශ්ර ලිපිනය, මූලාශ්ර තොටුපළ සහ ගෙවුම් භාරය නොවෙනස්ව පවතී, සහ conntrack සිතියම වාර්තා කරයි, එබැවින් පිළිතුරු පිටවීමේදී නැවත ලියැවේ. මෙම හැසිරීම RFC 3022 හි විස්තර කර ඇති සම්ප්රදායික ලිපින පරිවර්තන ආකෘතියයි.
sudo iptables -t nat -A PREROUTING -d 203.0.113.10 -p tcp --dport 443 \
-j DNAT --to-destination 10.20.30.40:443
sudo iptables -t nat -L PREROUTING -n -v
sudo conntrack -L -p tcp --dport 443
යෙදුමේ ශ්රාවකයා සම්බන්ධතාවය පරිවර්තනයක් හරහා පැමිණි බව කිසිදා නොදනී. එය සේවාදායකයාගේ සැබෑ මූලාශ්ර ලිපිනය දකී, එය ප්රවේශ ලොග සහ වේග සීමා සඳහා ප්රයෝජනවත් වේ, සහ conntrack සිතියම ආපසු හරවන බැවින් පුද්ගලික ලිපිනයට පිළිතුරු දෙයි. එම මාර්ගයේ කිසිවක් විකේතනය හෝ නැවත සංකේතනය නොකරයි: TLS තවමත් සේවාදායකයා සහ යෙදුමේම සහතිකය අතර ක්රියාත්මක වේ.
රීතිය පසුව හමුවන අසාර්ථක ක්රම ද නිර්ණය කරයි. ද්වාරය යොමු කරයි නමුත් යෙදුමේ සත්කාරකයට සේවාදායකයා වෙත ආපසු මාර්ගයක් නොමැති නම්, පිළිතුරු වැරදි මූලාශ්රයක් සමඟ පිටවෙයි සහ අතට අත දීම නතර වේ. දෙවන රීතියක් මුලින්ම ගැලපෙන්නේ නම්, අනුපිළිවෙල ප්රතිඵලය තීරණය කරයි, සහ iptables -t nat -L -n -v කුමන රීතිය පැකට්ටුව ගත්තේ ද යන්න සනාථ කරන ගණක දක්වයි.
උමඟ ශ්රාවකයා දකින්නට පෙර පැකට්ටුව ඔතයි
VPN යෙදුම කිසිසේත් ප්රකාශ නොකරයි. සේවාදායකයා ද්වාරයේ පොදු ලිපිනයට යොමු කළ පිටත පැකට්ටුවක් ගොඩනඟා, ඇතුළත පැකට්ටුව එහි සංකේතනය කරයි, ද්වාරය එය විකේතනය කර ඇතුළත පැකට්ටුව පුද්ගලික ගමනාන්තයට යොමු කරයි. WireGuard හි පිටත ප්රවාහනය UDP වන අතර සාමාන්යයෙන් ඉහළ තොටුපළක; OpenVPN TCP 443 මත වූ විට මාර්ගය නිරීක්ෂණය කරන සියල්ලට පිටත පැකට්ටුව TLS වගේ පෙනේ.
උමඟ තුළ ඇතුළත පැකට්ටුව පුද්ගලික ලිපින රඳවා ගනී: සේවාදායකයාගේ උමඟ ලිපිනය, කියමු 10.8.0.6, සහ යෙදුම 10.20.30.40 හි. එබැවින් ශ්රාවකයා උමඟ තටාකයෙන් මූලාශ්රයක් දකී, සහ සෑම සේවාදායකයෙක්ම එම ද්වාරය ඊළඟ පිම්ම ලෙස බෙදා ගනී. VPN පිටුපස ඇති ප්රවේශ ලොග බොහෝ විට පරිශීලකයා වෙනුවට ද්වාරය පෙන්වන්නේ හරියටම මෙම හේතුව නිසාය, ද්වාරය මුල් මූලාශ්රය සුරකින්නේ නම් මිස.
ඇතුල් කිරීම ශීර්ෂ ඉඩ වැය කරයි, සහ මිනුම් කළ හැකි ප්රතිවිපාකයක් ඇති එකම යාන්ත්රණ මට්ටමේ වෙනස එයයි. පිටත IP ශීර්ෂය සහ UDP සහ WireGuard හිම ශීර්ෂය මාර්ගයේ MTU වෙතින් අනුභව කරයි, එබැවින් විශාල පැකට් කොටස් කළ යුතුය හෝ ඇතුළත TCP ගොඩගැස්ම තම MSS සීමා කළ යුතුය. යොමු කළ මාර්ගයේ ක්රියා කරන මාරු කිරීමක්, අතරමැදි උපාංගයක් කුඩා MTU දැනුම් දෙන ICMP ඉවත් කළ විට උමඟ මත නතර විය හැකිය.
ip route get 10.20.30.40
ping -M do -s 1400 10.20.30.40
sudo iptables -t mangle -A FORWARD -p tcp --tcp-flags SYN,RST SYN \
-j TCPMSS --clamp-mss-to-pmtu
නිරාවරණය තීරණය වන්නේ පිවිසුමේදී, සංකේතනයෙන් නොවේ
නිර්මාණ දෙකම එකම TLS ශ්රාවකයාගෙන් අවසන් වේ, එබැවින් දෙකටම එකම සහතිකය, එකම ප්රොටොකොල අනුවාද සහ එකම යෙදුම් පිවිසුම උරුම වේ. වෙනස් වන්නේ අතට අත දීම ආරම්භ කිරීමට අවසර ඇත්තේ කාට ද යන්නයි. පොදු යොමු කිරීමක් සමඟ, 203.0.113.10:443 වෙත ළඟා වන ඕනෑම සත්කාරකයක් ඔබේ යෙදුම් අවසරය සලකා බැලීමට පෙරම TCP අතට අත දීමක් සහ TLS ClientHello ලබා ගනී. උමඟ හරහා පමණක් ප්රවේශයේදී, ශ්රාවකයාට ළඟා විය හැක්කේ ද්වාරය උමඟට යොමු කරන ලිපිනවලින් පමණක් වන අතර, අමුත්තෙකුගේ SYN ද්වාර ප්රතිපත්තියේ මිය යයි.
එම වෙනස ප්රවේශ්යතාවය ගැන මිස රහස්යභාවය ගැන නොවේ. යොමු කළ HTTPS සේවාවක් සරල පෙළක් නොවන අතර, VPN යෙදුම් සත්යාපනයේ අවශ්යතාවය ඉවත් නොකරයි: උමඟට ඇතුළත් කිරීම උපාංගයකට මෙම ජාලයට පැකට් යැවිය හැකි ද යන්නට පිළිතුරු දෙන අතර, ගොනු යෙදුම පරිශීලකයෙකුට ලේඛනයක් කියවිය හැකි ද යන්නට පිළිතුරු දෙයි. දෙක මිශ්ර කිරීම නිසා කණ්ඩායම් සම්පූර්ණ LAN දෙන VPN එකක් සහ එක් හවුල් මුරපදයක් ඇති යෙදුමක් සමඟ අවසන් වේ.
ශ්රාවකයා සහ ප්රතිපත්තිය වෙන වෙනම පරීක්ෂා කරන්න, මන්ද ඒවායින් ඕනෑම එකක් ඔබ සිතනවාට වඩා පුළුල් විය හැකිය:
sudo ss -ltnp 'sport = :443'
sudo nft list ruleset
openssl s_client -connect 203.0.113.10:443 -servername files.example.com </dev/null
ss මඟින් ශ්රාවකයා 0.0.0.0 වෙත බැඳී ඇති බව පෙන්වන්නේ නම්, යෙදුම මාර්ගගත කිරීම සහ ෆයර්වෝල් ප්රතිපත්තිය අවසර දෙන ඕනෑම තැනක සිට ප්රවේශ්ය වන අතර, යොමු කිරීම ඇතුළු වීමේ එක් මාර්ගයක් පමණි. පුද්ගලික ලිපිනයට බැඳීම, හෝ ෆයර්වෝලයේ මූලාශ්ර පරාසය සීමා කිරීම, VPN තෝරා ගැනීමෙන් වෙන් වූ තීරණයක් වන අතර, නිරාවරණය සැබවින්ම අඩු කරන්නේ එම තීරණයයි.
මාර්ගය මනින්න, ලේබලය නොවේ
යොමු කිරීම වේගවත් යැයි කෙනෙකු පවසන විට, අවංක සංසන්දනය අනෙක් සියල්ල නියතව තබා ගනී: එකම සේවාදායකයා, එකම ප්රවේශ ජාලය, එකම ගොනුව, එකම TLS වින්යාසය, එකම යෙදුම් සත්කාරකය. සෑම මාර්ගයකටම මාරු කිරීම දෙවරක් ධාවනය කර මුළු කාලය, අසාර්ථක ගණන සහ ප්රතිචාරාත්මකභාවය සටහන් කරන්න, සම්බන්ධ නොවන වේග පරීක්ෂණයක ප්රතිදානය නොවේ.
curl -sS -o /dev/null -w '%{time_connect} %{time_appconnect} %{time_total}\n' \
https://files.example.com/report.pdf
mtr -rwc 20 203.0.113.10
mtr -rwc 20 10.20.30.40
එම සංඛ්යා සම්බන්ධතා ස්ථාපනය මාරු කිරීමේ කාලයෙන් වෙන් කරයි, එය වැදගත් වන්නේ මාර්ග දෙක සාමාන්යයෙන් සංකේතන පිරිවැයෙන් නොව යාම-ඊම ප්රමාදය සහ MTU වලින් වෙනස් වන බැවිනි. TLS කාර්යය නිර්මාණ දෙකේම කෙළවරවල සිදු වන අතර, උමඟක් ආවරණය, වෙනස් මාර්ගයක් සහ සමහරවිට වඩා කාර්යබහුල ද්වාරයක් එකතු කරයි. උමඟේ මාර්ගය දිගු නම් හෝ එහි ද්වාරය බර පටවා ඇත්නම්, වෙනස මාර්ගයට අයත් වේ, සංකේතන යන වචනයට නොවේ.
සේවාවට සැබවින්ම අවශ්ය පිවිසුම් ප්රතිපත්තිය තෝරන්න, පසුව මනින ලද වෙනසක් එය වෙනස් කිරීම සාධාරණීකරණය කරන්නේ ද යන්න තීරණය කරන්න. පොදු යොමු කිරීම විවෘත අන්තර්ජාලය සඳහා නිර්මිත සේවාවකට ගැලපේ, මූලාශ්ර සීමා, යාවත්කාලීන TLS සහ ඉදිරියේ අධීක්ෂණය සමඟ. උමඟ හරහා පමණක් ප්රවේශය පරිශීලකයින් දැනටමත් ලියාපදිංචි වී ඇති අභ්යන්තර මෙවලමකට ගැලපේ, ද්වාරයේ මාර්ගගත කිරීම සහ යෙදුමේ අවසර දෙකම සම්පූර්ණ LAN ට වඩා පටු නම්.
නිර්මාණය සම්පූර්ණ යැයි ප්රකාශ කිරීමට පෙර කරුණු හතරක් තහවුරු කරන්න: ශ්රාවකයා බැඳී ඇත්තේ කුමන ලිපිනයට ද, කුමන රීතියක් හෝ මාර්ගයක් පැකට්ටුව ඇතුළට ගනී ද, සේවාදායකයාගේ සැබෑ ලිපිනයේ සිට ආපසු මාර්ගය ක්රියා කරයි ද, සහ විශාල ගෙවුම් භාර MTU පසු කරයි ද. ඒවායින් එකකටත් ඉහත විධානයක් ඇති අතර, කිසිවකට «ආරක්ෂිත» යන වචනය හෝ කලාප පළල සටහනක් පිළිතුරු නොදෙයි.