OpenVPN සේවාදායක දෙකක සේවාලාභීන්ට එකිනෙකා වෙත ළඟා විය හැකිද?
OpenVPN සේවාදායක දෙකක් සේවාලාභී තටාක දෙකක් සාදයි, එක් ජාලයක් නොවේ. වෙන් වූ උපජාල, දෙපසටම මාර්ග සහ පැහැදිලි විශ්වාස මායිමක් සහිතව ඒවා අතර මාර්ගගත කරන්න.
දෙවන OpenVPN සේවාදායකයක් ස්ථාපිත කිරීමෙන් සේවාලාභීන්ට සම්බන්ධ වීමට දෙවන ස්ථානයක් ලැබේ, ඊට වැඩි කිසිවක් නොවේ. එය එම සේවාලාභීන් පළමු සේවාදායකයේ ජාලයට නොයවයි, client-to-client නම් විකල්පය එක් සේවාදායක ක්රියාවලියක් තුළ යැවීම පමණක් වෙනස් කරයි. එම තටාක දෙක එක් ජාලයක් බවට පත්වන්නේ ඔබ චේතනාන්විතව ඒවා අතර මාර්ගගත කරන විටය, එක් එක් දිශාවට හිමිකරුවෙකු සමඟ. පහත සියල්ල භාවිතා කරන්නාගේ අවකාශ TUN ප්රකාරය උපකල්පනය කරයි, එහි එම අභ්යන්තර යැවීම වසා ඇති බැවින් තීරණය කර්නලයට හිමිය.
මිථ්යාව: එක් ගිණුම් ලැයිස්තුවක්, එක් ජාලයක්
සත්යාපනය සහ ළඟාවිය හැකිකම එකට මිශ්ර වන්නේ දෙකම සේවාදායක වින්යාසයේ පවතින නිසාය. දෙවරිතම ගේට්වේ එකකට පිවිසිය හැකි පරිශීලකයෙකු බාහිරව දොරවල් දෙකක් ඇති එක් පද්ධතියක පරිශීලකයෙකු ලෙස පෙනේ. ඇතුළත, සෑම සේවාදායකයක්ම තමන්ගේම තටාකයෙන් ලිපින ලබා දෙන අතර තමා අවසන් කරන සේවාලාභීන්ට පමණක් මාර්ග ස්ථාපනය කරයි. එබැවින් ගේට්වේ A හි සේවාලාභියෙකු ගේට්වේ B හි සේවාලාභියෙකුට පැකට්ටුවක් යවන විට තම සේවාදායකයා කිසිදා නොඇසූ ගමනාන්තයක් ඉල්ලා සිටී. එම පැකට්ටුව A හි පෙරනිමි මාර්ගයට ගොස්, උමං මාර්ගයෙන් පිටවී, එයට අවසර දෙන ලෙස කිසිදා නොකියන ලද ෆයර්වෝලයකට ළඟා වේ.
එබැවින් දෙවන සේවාදායකයක් එකතු කිරීම අතිරික්තතාව, සොයාගැනීම හෝ හවුල් නාද විකාශ වසමක් එකතු නොකරයි. එය සැලසුමක් අවශ්ය මාර්ගගත ජාලයක් එකතු කරයි, එම සැලසුම ලිපිනකරණයෙන් ආරම්භ වේ.
සෑම ගේට්වේ එකකටම තමන්ගේම තටාකයක් සහ සංක්රාන්ති ලිපිනයක් දෙන්න
වෙනත් කිසිවක් සමඟ අතිච්ඡාදනය නොවිය හැකි පරාස දෙකක්, සහ සත්කාරක අතර කුඩා සංක්රාන්ති සබැඳියක්, මුළු ලිපින සැලසුමයි. සංක්රාන්තිය ඔබ පාලනය කරන පෞද්ගලික කොටසක තබන්න, සහ කිසිදු සේවාදායකයක් බදු දීමට පෙර එම සංඛ්යා ලියා තබන්න.
| Gateway | Client pool | Transit address |
|---|---|---|
| gateway-a | 10.64.10.0/24 | 172.28.44.1/30 |
| gateway-b | 10.64.20.0/24 | 172.28.44.2/30 |
පැතිකඩ සමානව තබා ගැනීම සඳහා සේවාදායක දෙකටම එකම තටාකය දීමේ පරීක්ෂාවට එරෙහි වන්න. හවුල් පරාසයක් තුළ අත්තනෝමතික ලිපිනයක් දැන් සත්කාරක දෙකෙන් කවරකු සතුදැයි කර්නල මාර්ගයට කිව නොහැක, එබැවින් මාර්ගගත වගුව එක් ගේට්වේ එකකට යොමු වන අතර සේවාලාභියා අනෙකට සම්බන්ධ වී තිබිය හැක. අතුරුමුහුණත් නාම දේශීය සම්මුතීන්, හවුල් තත්ත්වයක් නොවේ. මෙහි සත්කාරක දෙකම උමං උපාංගය tun0 ලෙසත් සංක්රාන්ති සබැඳිය transit0 ලෙසත් හඳුන්වයි, එය කිසිදු ගැටළුවක් නොවේ මන්ද කිසිදු පැකට්ටුවක් එම නාම රැගෙන නොයන බැවිනි.
දෙපසම මාර්ගය ස්ථාපනය කරන්න
සෑම ගේට්වේ එකකටම සංක්රාන්ති ලිපිනය හරහා අනෙකාගේ තටාකයට මාර්ගයක් අවශ්ය වන අතර, ඕනෑම එකකට හොප් එකක් ලෙස ක්රියා කිරීමට යැවීම සක්රීය විය යුතුය. පළමුව වර්තමාන වගුව තහවුරු කරන්න, පසුව සටහන එකතු කර නැවත සම්බන්ධ වීමේ කොක්කක් වෙනුවට සත්කාරකයේ ජාල කළමනාකරු හරහා එය ස්ථිර කරන්න.
sysctl net.ipv4.ip_forward
ip route add 10.64.20.0/24 via 172.28.44.2 dev transit0
ip route get 10.64.20.37
තටාක මාරු කර අනෙක් සත්කාරකයේ එය පිටපත් කරන්න. අසම්බන්ධිත ස්ක්රිප්ටයකින් එකම මාර්ගය නැවත නැවත එකතු කිරීම යනු සත්කාරකයකට පිටපත් කිහිපයක් සහ ඊළඟ වතාවේ කිසිවෙකු වගුව කියවන විට අද්භූත වෙනසක් ඇති වීමයි. සංක්රාන්ති සබැඳියම උමං මාර්ගයක් නම්, මාර්ගය එම උමං මාර්ගයේ ටොපොලොජියට යොමු වන අතර හොප් එක එහි නැවත සම්බන්ධ වීමෙන් පවතින්නට ඕනෑ. තත්පර තිහක් සඳහා අතුරුදහන් වන සංක්රාන්ති ලිපිනයක් තටාක අතර මාර්ගයද රැගෙන යයි, එය සොයා ගැනීමට වඩා ප්රකාශ කිරීමට වටිනා නිර්මාණ ගුණාංගයකි.
හිමිකම් නොමවා සේවාලාභී මාර්ගය තල්ලු කරන්න
සේවාලාභීන්ට දුරස්ථ තටාකයට මාර්ගයක් අවශ්යය, එසේ නොවුනහොත් ඔවුන්ගේම මෙහෙයුම් පද්ධතිය පැකට්ටුව ඔවුන්ගේ පෙරනිමි ගේට්වේ වෙත යවන අතර උමං මාර්ගය එය කිසිදා නොදකී. එය ලබා දීමට ස්වාභාවික ස්ථානය සේවාදායක වින්යාසයයි.
push "route 10.64.20.0 255.255.255.0"
අනෙක් සේවාදායකයේ වින්යාසයේ පිටපත් පේළිය තබන්න, පසුව පරීක්ෂණ සේවාලාභියෙකු නැවත සම්බන්ධ කර ඔහුගේ වගුව කියවන්න. තල්ලු කරන ලද මාර්ග නොසලකා හරින සේවාලාභියෙකුට තමන්ගේම අනුමත වින්යාසයක් අවශ්යය, සහ කිසිදා නොපැමිණෙන මාර්ගයක් ප්රවේශ පාලනයක් නොවේ. අනෙක් ගේට්වේ හි මුළු තටාකය සඳහා සේවාලාභියෙකුට iroute නොදෙන්න. එම උපදෙස් පවතින්නේ එක් සම්බන්ධිත සේවාලාභියෙකු පිටුපස ඇති උපජාලයක් සඳහාය, ගේට්වේ අතර අස්ථානගත මාර්ගයක් වැසීමට එය භාවිතා කිරීමෙන් තමාට ළඟා විය නොහැකි ලිපින තමා සතු යැයි විශ්වාස කරන සේවාදායකයක් ඇති වේ.
එක් ඉල්ලීමක් ඔප්පු කර අනෙකක් ප්රතික්ෂේප කරන්න
සැබෑ ක්රියාවක් තෝරන්න, උදාහරණයක් ලෙස 10.64.10.21 හි සේවාලාභියෙකුගෙන් 10.64.20.37 හි සේවාවකට HTTPS, සහ සත්කාරක දෙකෙහිම හරියටම එයට අවසර දෙන්න. සෑම ෆයර්වෝලයක්ම තම ඇතුළු පැත්තේ ඉල්ලීම සහ ආපසු පැත්තේ නිරීක්ෂිත පිළිතුර පිළිගනී; ගමනාන්තයේම සේවා ප්රතිපත්තියට තවමත් එය පිළිගත යුතුය.
iptables -A FORWARD -i tun0 -o transit0 -s 10.64.10.21 -d 10.64.20.37 -p tcp --dport 443 -j ACCEPT
iptables -A FORWARD -i transit0 -o tun0 -d 10.64.10.21 -s 10.64.20.37 -p tcp --sport 443 -m conntrack --ctstate ESTABLISHED -j ACCEPT
පරස්පර මාර්ග ඇති විට මූලාශ්ර NAT අවශ්ය නොවන අතර මෙහි සක්රීයව හානිකරය: මූලාශ්රය පරිවර්තනය කිරීම ඉල්ලීම කළේ කවර සේවාලාභියාද යන්න සඟවා ගමනාන්ත පැත්තේ මූලාශ්ර පාදක ප්රතිපත්තිය අසාර්ථක කරයි. අන්තර්ජාල පිටවීම සඳහා ඇති දැනටමත් මාස්කරේඩ් නියමය මෙම මාර්ගයද නොගන්නා බව පරීක්ෂා කරන්න. පසුව ප්රතික්ෂේපය පරීක්ෂා කරන්න. තටාක B හි දේශීයව තිබිය යුතු සේවාවක් තටාක A වෙතින් ළඟා විය නොහැකිව තිබිය යුතුය, එකම ගේට්වේ හි සේවාලාභී යුගල ද පරීක්ෂා කළ යුතුය, මන්ද ඔබ දැන් වෙනස් කළ යැවීමේ ප්රතිපත්තිය ඔවුන්ටද අදාළ වන බැවිනි.
මානසික ආකෘතියට තවත් එක් නිවැරදි කිරීමක්: සංක්රාන්ති සබැඳිය විකේතනය කළ අභ්යන්තර පැකට්ටු රැගෙන යයි, එබැවින් එය පෞද්ගලික සහතිකයක් නොව විශ්වාස මායිමකි. එය ඔබ පාලනය නොකරන ජාලයක් හරහා ගියහොත්, එම හොප් එක අනුමත සංකේතන උමං මාර්ගයකින් ආරක්ෂා කර එහි සැබෑ ටොපොලොජිය හරහා මාර්ගගත කරන්න. අන්ත සිට අන්ත දක්වා TLS තවමත් යෙදුමම සත්යාපනය කරයි, එබැවින් අභ්යන්තර සේවාව එය දිගටම භාවිතා කළ යුතුය.