Pi VPN සේවාලාභියා ලෙස: එක් කළමනාකරුවෙක්ද නැතිනම් තමන්ගේම ස්ක්රිප්ට් එකක්ද?
Raspberry Pi එකක NetworkManager පැතිකඩක් අතින් ලියූ සේවාලාභී ස්ක්රිප්ට් එකක් සමඟ සසඳන්න, සම්පූර්ණ උමං මාර්ගය, DNS, IPv6 සහ උමං මාර්ගය වැටෙන විට හැසිරීම ඇතුළුව.
තමන්ගේම පිටවන රහස්ය ගමනාගමනය පමණක් ආරක්ෂා කළ යුතු Raspberry Pi එකකට යථාර්ථවාදී නිර්මාණ දෙකක් ඇත: ජාල කළමනාකරුට උමං මාර්ගය හිමිකර ගැනීමට ඉඩ දෙන්න, නැතිනම් එය හිමිකර ගන්නා ස්ක්රිප්ට් එකක් තබා ගන්න. දෙකටම රහස්ය ගමනාගමනය ගෙන යා හැක. ඒවා වෙනස් තැන්වල අසාර්ථක වේ, සහ රාත්රී දෙකට දුරස්ථව ඔබට රෝග විනිශ්චය කළ හැකි අසාර්ථකත්වය තෝරා ගැනීමට වටින්නේ එයයි. හිමිකාරිත්වය අනුව, IPv6 සහ DNS සම්බන්ධ වූ පසු සම්පූර්ණ උමං මාර්ගයේ අර්ථය කුමක්ද යන්න අනුව, සහ උමං මාර්ගය වැටෙන මොහොතේ කුමක් සිදුවේද යන්න අනුව ඒවා සසඳන්න.
එක් උමං මාර්ගයකට හිමිකරුවන් දෙදෙනෙක්
නිර්මාණය A යනු පද්ධතියේ ජාල කළමනාකරු තුළ ඇති පැතිකඩකි: ආයාත කළ OpenVPN පැතිකඩක් හෝ ස්වදේශීය WireGuard සම්බන්ධතාවයක්, එය පැටවීමේදී Ethernet සහ Wi-Fi ඔසවන එම සේවාව විසින්ම සක්රීය කරයි. නිර්මාණය B යනු ඔබේම ඒකකයකි, එය සේවාලාභියා සෘජුවම ධාවනය කරයි, විසඳනයේ වින්යාසය සංස්කරණය කරයි, සහ තමන්ගේම මාර්ග සහ ගිනිපවුරු නීති ස්ථාපනය කරයි. දෙකම නීත්යානුකූල නිර්මාණ වේ; ඒවා වෙනස් වන්නේ මාර්ගගත කිරීමේ වගුව වෙනස් කිරීමට අවසර ඇත්තේ කාටද යන්නෙනි.
හිමිකරුවන් වෙනස් බැවින් අසාර්ථකතා ද වෙනස් ය. A හිදී, සක්රීය නොවන පැතිකඩක් අතුරුමුහුණත ඉහළින් සහ උමං මාර්ගය පහළින් තබයි, සහ කළමනාකරුගේ ලොග කියන්නේ ඇයි කියා ය. B හිදී, අඩක් සාර්ථක වන ස්ක්රිප්ට් එකක් එය සෑදූ ක්රියාවලියෙන් පසුව ද රැඳෙන මාර්ග ඉතිරි කරයි. දෙකම ධාවනය කිරීම නරකම ප්රතිඵලයයි: ක්රියාවලි දෙකක් පෙරනිමි මාර්ගය ලියයි, පැටවීමේදී විසඳන සංස්කරණ දෙකක් තරඟ කරයි, සහ කරකැවීමට රහස් කට්ටල දෙකක්.
එක් උමං මාර්ගයකට එක් හිමිකරුවෙකු තෝරන්න, සහ කිසිවක් පරීක්ෂා කිරීමට පෙර අනෙක අක්රීය කරන්න. හිමිකරුවන් දෙදෙනෙක් යනු උමං මාර්ගය ඉහළින් තිබියදී කිසිවක් විසඳා නොගන්නා විට බැලීමට ස්ථාන දෙකක් ද වේ. එම එකම නීතිය Pi VPN සාකච්ඡාවල විස්තර කර ඇති ව්යාකූල තත්ත්ව බොහොමයක් වළක්වයි.
ආයාතයක් සාදන දේ, සහ නොසාදන දේ
Raspberry Pi OS Bookworm සහ ඉන් පසු අනුවාදවල පෙරනිමි ජාල වින්යාස මෙවලම NetworkManager වන බැවින්, සේවාලාභී උමං මාර්ගයකට පැතිකඩ ස්වාභාවික නිවසයි. ආයාතයට ගැළපෙන ප්ලගිනය ස්ථාපනය කර තිබිය යුතුය; එය නොමැතිව ආයාතය අනුග්රහය නොදක්වන සම්බන්ධතා වර්ගයක් පිළිබඳ පණිවිඩයක් සමඟ අසාර්ථක වේ, එය නතර වී ප්ලගිනය ස්ථාපනය කිරීමේ අවංක සංඥාවයි.
nmcli connection import type openvpn file ./provider.ovpn
nmcli connection show
nmcli --ask connection up id provider-name
ආයාතය පැතිකඩක් ගබඩා කරයි. එය අනෙක් පැත්ත ළඟා විය හැකි බව ඔප්පු නොකරයි, සහ ගොනුවේ සෑම උපදෙසක්ම පරිවර්තනයෙන් ගැලවී ඇති බවට සහතික නොවේ. ලැබුණු සම්බන්ධතාවය නැවත කියවා අනන්යතාවය සහ විශ්වාසය දරන කොටස් පරීක්ෂා කරන්න: සහතිකය, දුරස්ථ සත්කාරකය සහ වරාය, සහ මුරපදය ඉල්ලා සිටීද නැතිනම් ගබඩා කරයිද.
--ask සමඟ සක්රීය කිරීම හවුල් යන්ත්රයක ෂෙල් ඉතිහාසයෙන් පිටත මුරපද වැකියක් තබයි. අධීක්ෂණයක් නොමැති Pi එකකට, අවසානයේ ඔබට අවශ්ය වන්නේ පැතිකඩ පැටවීමේදී ඉහළ එනවා දැකීමටය, එය අතින් එක් වරක් ඔසවනවාට වඩා වෙනස් තීරණයකි.
සම්පූර්ණ උමං මාර්ගය, නිර්මාණ දෙක සසඳා බැලීමේදී
සම්පූර්ණ උමං මාර්ගයක් යනු මාර්ග ගැන ප්රකාශයක් මිස අභිප්රාය ගැන නොවේ, සහ නිර්මාණ දෙක එය වෙනස් ලෙස ප්රකාශ කරයි. පැතිකඩ ප්රවේශය කළමනාකරුගෙන් ඉල්ලා සිටින්නේ පෙරනිමි මාර්ගයක් සහ එහි විසඳන සැකසීම් ස්ථාපනය කරන ලෙසයි; ස්ක්රිප්ට් ප්රවේශය ස්ක්රිප්ට් කියන දේ කරයි, කිසිවක් නොකිරීම ද ඇතුළුව. කිසිදු නිර්මාණයක් නොකියා නම් IPv6 ආවරණය නොකරයි, සහ නොසැලූ IPv6 පෙරනිමි මාර්ගයක් IPv4 පරිපූර්ණ ලෙස පෙනෙන අතරේ උමං මාර්ගයෙන් පිටතට ගමනාගමනය සතුටින් ගෙන යනු ඇත.
ip -4 route get 198.51.100.23
ip -6 route show default
resolvectl query example.org
මාර්ග සෙවීම සඳහා ලේඛන ලිපිනයක් භාවිත කර එය පරීක්ෂා කිරීමට අවසර ඇති සත්කාරකයකින් ආදේශ කරන්න. පළමු විධානය පෙන්වන්නේ Pi සාමාන්ය ගමනාන්තයකට කුමන අතුරුමුහුණත භාවිත කරයිද යන්නය; දෙවැන්න පෙන්වන්නේ IPv6 පෙරනිමි මාර්ගය තවම තිබේද යන්නය; තුන්වැන්න කුමන විසඳනය පිළිතුරු දුන්නේද යන්න ඔප්පු කරයි. සම්පූර්ණ උමං මාර්ගයක් ගැන කිසිදු ප්රකාශයක් විශ්වාස කිරීමට පෙර තුනම කියවන්න.
සැපයුම්කරුගේ උපදෙස් සම්පූර්ණ උමං මාර්ගයක් පොරොන්දු වුවත් IPv6 පෙරනිමි මාර්ගය රැඳී තිබේ නම්, Pi යනු කාන්දු වෙමින් පවතී. ඉහළ සබැඳියේ IPv6 අක්රීය කරන්න හෝ පැතිකඩට එය ඉල්ලා සිටින ලෙස කියන්න, සහ පසුව සොයා ගැනීම වෙනුවට දැනුවත්ව තීරණය කරන්න.
විවෘත අසාර්ථකත්වය සහ සංවෘත අසාර්ථකත්වය
උමං මාර්ගය වැටෙන විට, තම පෙරනිමි මාර්ගය අහිමි වන මාර්ගගත කිරීමේ වගුවක් සරලව භෞතික ඉහළ සබැඳියට ආපසු යයි, සහ ගමනාගමනය විවෘතව දිගටම පවතී. එය විවෘත අසාර්ථකත්වයකි, සහ යමක් එය වළක්වන්නේ නැත්නම් එය නිර්මාණ දෙකේම පෙරනිමි හැසිරීමයි. බොහෝ දෙනා එය සති කිහිපයකට පසු ගිනිපවුරු ලොගයක් කියවීමෙන් සොයා ගනී.
සංවෘත අසාර්ථකත්වය උමං මාර්ගය පහළින් තිබියදී ඔබේ දුරස්ථ ප්රවේශය ගෙන යයි, එබැවින් කළමනාකරණ මාර්ගයට දැනුවත් සුවිශේෂයක් අවශ්ය වේ. එක් ක්රමයක් වන්නේ උමං මාර්ගයෙන් පිටත VPN සගයාගේ ලිපිනයට පමණක් අවසර දෙන නීතියකි:
sudo nft add table inet vpnkill
sudo nft 'add chain inet vpnkill out { type filter hook output priority 0; policy accept; }'
sudo nft add rule inet vpnkill out oifname != "tun0" ip daddr != 203.0.113.24 reject
මෙහෙයුම් වියදම අවංකව සසඳන්න. පැතිකඩකට සාමාන්යයෙන් මෙම නීතිය ප්රකාශ කළ නොහැක, එබැවින් සංවෘත අසාර්ථකත්වය ඔබව ස්ක්රිප්ට් නිර්මාණය දෙසට හෝ උමං මාර්ගයෙන් ස්වාධීනව නීතිය ස්ථාපනය කරන කුඩා ඒකකයක් දෙසට තල්ලු කරයි. කෙසේ වුවද, සතියක් ප්රතික්ෂේප ලොග් කරන්න: නිශ්ශබ්ද ප්රතික්ෂේපයක් කැඩුණු සේවාවක් මෙන්ම පෙනේ, සහ පරිශීලකයෙක් එක් අඩවියක් පූරණය වීම නතර වූ බව වාර්තා කරන විට ඔබට ගණකය අවශ්ය වනු ඇත.
තිරයක් නොමැති Pi එකකට තේරීම
රූපය දැනටමත් NetworkManager ධාවනය කරන්නේ නම්, උමං මාර්ගයට විශේෂ කිසිවක් අවශ්ය නොවේ නම්, සහ එය ඉහළ සබැඳිය ස්වයංක්රීයව අනුගමනය කරනවා ඔබට අවශ්ය නම්, පැතිකඩ ගන්න. ඔබට ප්රතිපත්ති මාර්ගගත කිරීම, ගමනාන්තය අනුව තෝරන උමං මාර්ග කිහිපයක්, හෝ උමං මාර්ගය ඉහළ එන්නට පෙර තිබිය යුතු සංවෘත-අසාර්ථකත්ව නීතියක් අවශ්ය නම්, ස්ක්රිප්ට් ගෙන එහි සෑම කොටසකම හිමිකාරිත්වය ගන්න, පැටවීමේ අනුපිළිවෙල සහ පිරිසිදු කිරීම ඇතුළුව. නිර්මාණ දෙක මිශ්ර කිරීම ඕනෑම එකකට වඩා මිල අධිකය.
ඒවා අතර සංක්රමණය ප්රධාන වශයෙන් අනුපිළිවෙල පිළිබඳ කරුණකි: පැරණි හිමිකරු අක්රීය කරන්න, පැරණි මාර්ගයක් හෝ විසඳන සටහනක් රැඳී නැති බව තහවුරු කරන්න, පසුව නව එක සක්රීය කර දෙවරක් නැවත පණගන්වන්න. එක් නැවත පණගැන්වීමක් දෙවැන්න විවෘත කරන තරඟයක් සඟවා තැබිය හැක. උමං මාර්ගය නොව, Pi පරීක්ෂා කිරීමෙන් අවසන් කරන්න: නමක් විසඳන්න, IPv4 හරහා යමක් ගෙන එන්න, ඔබ තබා ගත්තේ නම් IPv6 හරහා ද ගෙන එන්න, පසුව උමං මාර්ගය හෙළන්න සහ ඔබ තෝරාගත් හැසිරීම සැබවින්ම සිදුවන බව තහවුරු කරන්න. ip link හි අතුරුමුහුණතක් පරීක්ෂණයේ ආරම්භයයි, අවසානය නොවේ.