ගිනිපවුරු ගොනුවක් විවෘත කිරීමට පෙර අවසරය තීරණය කරන්න: සත්යාපිත සේවාලාභීන්ට එක් නිශ්චිත උපජාලයකට සම්බන්ධතා විවෘත කළ හැකි අතර, සේවාලාභියා අමතර මාර්ග ස්ථාපනය කළත් ද්වාරය අනෙක් සියලුම සංක්රාමික මාර්ගය ප්රතික්ෂේප කළ යුතුය. එම වාක්යයම නිර්මාණයයි, සහ පහත සෑම නීතියක්ම එය බලාත්මක කිරීමට ඇත. මීට වඩා පුළුල් යමක්, උදාහරණයක් ලෙස මුළු පෞද්ගලික ලිපින අවකාශය, ටනලය හරහා අන්තර්ජාලයට යාම හෝ සමවයස් අතර ගමන්, තමන්ගේම තීරණයක් අවශ්ය වන වෙනත් නිර්මාණයකි. නීති දිගු කලක් තිස්සේ කම්මැලි ලෙසද තැනී ඇත, මන්ද දක්ෂ ගිනිපවුරක් යනු පසුව කිසිවෙකුට විග්රහ කළ නොහැකි එකකි.

මුලින්ම ටොපොලොජිය සහ අවසරය ලියන්න

උදාහරණය භාවිතා කරන්නේ පරිශීලක අවකාශයේ TUN උපාංගය ලෙස හැඳින්වෙන Community OpenVPNtun0 සේවාදායකයක්, සේවාලාභී තටාකයක් 10.77.0.0/24, සහ සම්බන්ධිත උපජාලයක් 192.168.60.0/24 lan0 මතය. IPv4 යැවීම දැනටමත් ක්රියා කරන අතර LAN ට දැනටමත් තටාකය වෙත ආපසු මාර්ගයක් ඇත, එබැවින් මෙහි කිසිවක් ඒවා අතර පරිවර්තනය මත රඳා නොපවතී.

මෙම සත්කාරකයේ ගිනිපවුර UFW හි අයිතියයි, සහ කිසිදු ධාරක නීති කට්ටලයක් හෝ වෙනම nftables වගුවක් කලින් පිළිගැනීමේ මාර්ගයක් ස්ථාපනය කළ නොහැක. පෙරහන මඟ හරින ගලායාම් බැස්සවීමේ කෙටි මාර්ගයක් ආරක්ෂක දාම පමණක් අලංකාර කරනු ඇත, එබැවින් කිසිවක් සක්රීය නොවන බව තහවුරු කරන්න. OpenVPN හිම client-to-client යැවීම අක්රීයව තබන්න, මන්ද මෙහෙයුම් පද්ධතියේ පෙරහන කිසි විටෙක නොතරණ සමවයස් අතර ගමන් එයින් සීමා කළ නොහැක. බාහිර සවන්දෙන්නා සහ පරිපාලන නීති ඇති ආකාරයටම රැඳේ, මන්ද මෙම වෙනස ගිනිපවුර ප්රතිස්ථාපනය නොකර විකේතනය කළ ටනල් ගමන් නියාමනය කරයි.

ආරක්ෂකයන් UFW හි මුල් පිළිගැනීම්වලට පෙර තබන්න

මාර්ග අවසරයක් සහ ඉන් පසු ප්රතික්ෂේපයක් දැඩි සීමාවකට ප්රමාණවත් නොවේ. සම්මත before නීති ඕනෑම පරිශීලක නීතියක් සලකා බැලීමට පෙර ස්ථාපිත ගමන් සහ ඇතැම් ICMP පිළිගනී, එබැවින් පසුගිය සතියේ අවසර දුන් ගැලීමක් තවමත් තත්ත්වය ඇති නිසාම නව ගමනාන්ත සීමාවෙන් පිටත රැඳිය හැක. UFW ගොනු උපස්ථ කර සංස්කරණයට පෙර බැන්ඩ්-එළිමහන් කොන්සෝලයක් විවෘතව තබන්න.

ගොනුවේ *filter කොටසේ /etc/ufw/before.rules, පවතින ප්රකාශවලට යාබදව සහ ඕනෑම නීති පේළියකට පෙර දාම දෙකක් ප්රකාශ කරන්න.

:vpn-src-guard - [0:0]
:vpn-reply-guard - [0:0]

ප්රකාශවලින් පසු වහාම, සහ ආදාන හා යැවීමේ අවසරවලට පෙර, ඒවාට පනින්න සහ ඒවා ඉඩ දෙන දේ නිර්වචනය කරන්න.

-A ufw-before-input -i tun0 -j DROP
-A ufw-before-forward -i tun0 -j vpn-src-guard
-A ufw-before-forward -o tun0 -j vpn-reply-guard

-A vpn-src-guard -o lan0 -d 192.168.60.0/24 -s 10.77.0.0/24 -m conntrack --ctdir ORIGINAL -j RETURN
-A vpn-src-guard -j DROP

-A vpn-reply-guard -i lan0 -d 10.77.0.0/24 -s 192.168.60.0/24 -m conntrack --ctstate RELATED,ESTABLISHED --ctdir REPLY -j RETURN
-A vpn-reply-guard -j DROP

කොටසේ ඉතිරිය සහ එහි COMMIT පේළිය තබා ගන්න. දෙවන පෙරහන් වගුවක් අලවා ගැනීම හෝ සම්බන්ධයක් නැති නීති මැකීම ගිනිපවුරු වෙනසක් බාධාවක් බවට පත්වන මාර්ගයයි, සහ ගොනුව වැදගත් වන එකම පිටපත වීමෙන් එක් නැවත ඇරඹීමක් පමණක් ඈතින්.

සෑම ආරක්ෂකයෙක් ඉඩ දෙන සහ ප්රතික්ෂේප කරන දේ කියවන්න

පළමු දාමය සැකසීම දිගටම කරගෙන යන්නේ මූලාශ්රය තටාකයේ, ගමනාන්තය එම එකම උපජාලය, පිටවන අතුරුමුහුණත LAN, සහ පැකට්ටුව එහි ගැලීමේ මුල් දිශාවට ගමන් කරන විට පමණි. ටනලයෙන් පැමිණෙන අනෙක් සියල්ල ඉවත ලැබේ, තටාකයෙන් පිටත මූලාශ්රය සහ අවසර දුන් උපජාලයෙන් ඔබ්බට ඕනෑම ගමනාන්තයක් ඇතුළුව.

සමවයස් පැකට්ටුවක් tun0 වෙත ඇතුළු වී එයින් පිටවේ, එබැවින් ගමනාන්ත පරීක්ෂාවකට ළඟා වීමටත් පෙර එය LAN අතුරුමුහුණත පරීක්ෂණයේ අසාර්ථක වේ. LAN සිට සේවාලාභීන් දෙසට නව සම්බන්ධතා ද පිළිතුරු දිශා පරීක්ෂණයේ අසාර්ථක වේ, එය පෙරනිමියෙන් ප්රතිලෝම ඇමතුම් මාර්ගය වසා දමයි.

RETURN ඉලක්කය සාමාන්ය UFW ප්රතිපත්තිය ක්රියාත්මකව තබයි. මෙම දාම පෙරහන් කරයි, සහ ඊළඟට එකතු කරන මාර්ග අවසරය ජීවත් වූ පැකට්ටුවක් පිළිගනු ලබන්නේද යන්න තවමත් තීරණය කරයි. එම වෙන්වීම නිසාම පසුව අවසර දුන් උපජාලය එකම තැනක වෙනස් කළ හැක. ආරක්ෂකයන් පැකට්ටු සෘජුවම පිළිගත්තේ නම්, සෑම අනාගත නීතියක්ම දෙවරක් එකතු කළ යුතු වන්නේය.

උපජාලයට අවසර දී පැති දොරවල් වසන්න

පළමුව මාර්ග අවසරය පෙරදසුන් කරන්න, පසුව යෙදීමට පෙරදසුන් ධජය ඉවත් කරන්න: sudo ufw --dry-run route allow in on tun0 out on lan0 from 10.77.0.0/24 to 192.168.60.0/24. ඉන් පසු පරිශීලක නීතිවල අනුපිළිවෙල සමාලෝචනය කරන්න, මන්ද කලින් ප්රතික්ෂේපයක් තවමත් පසුව එන අවසරයක් පරාජය කරයි. මුළු උපජාලයටම අවසරය ද වැරදි හැඩයකි, එක් සත්කාරකයක HTTPS වරාය පමණක් ළඟා විය හැකි විය යුතු විට.

ආදාන ඉවත ලැබීම කරන දේ සැලකිල්ලට ගන්න: ටනල් සේවාලාභීන්ට ද්වාරයේම කිසිදු සේවාවකට ළඟා විය නොහැක, එහි LAN ලිපිනයට බැඳුණු DNS සවන්දෙන්නෙකු ඇතුළුව. එහි DNS සත්කාරකත්වය ඉවත ලැබීමට පෙර හිතාමතා කළ ව්යතිරේකයක් සහ සංශෝධිත අවසර ගිවිසුමක් අවශ්ය වේ. UFW IPv6 කළමනාකරණය කරන්නේ නම්, tun0 සඳහා before6.rules ගොනුවේ ද ගැලපෙන ඉවත ලැබීම් එකතු කරන්න, මන්ද IPv4 ගමනාන්ත ලැයිස්තුවක් IPv6 පැකට්ටු ගැන කිසිවක් නොකියයි.

පෙරදසුන නොව, පූරණය වූ ප්රතිපත්තිය සත්යාපනය කරන්න

නැවත පූරණය පෙරදසුන් කරන්න, නඩත්තු කවුළුවක එය යොදන්න, සහ සජීවී නීති කට්ටලය කියවන්න.

sudo ufw --dry-run reload
sudo ufw show raw

ටනල් ආරක්ෂකයන් පෙරනිමි තත්ත්වය සහ ICMP අවසරවලට පෙර දිස්වන බව තහවුරු කරන්න. සාමාන්ය ufw status අතින් සංස්කරණය කළ before නීති නොපෙන්වයි, එබැවින් ක්රියාකරුවන් නීතියක් නැති බව නිගමනය කරන අතර එය ඇත්ත වශයෙන්ම පූරණය වී ඇත. කැබැල්ලක් සෙවීම වෙනුවට අමු ලැයිස්තුව ඉහළ සිට පහළට කියවන්න. ආරක්ෂකයන් තත්ත්ව අවසරයකින් පසු දිස්වන්නේ නම්, සීමාව ගොනුව යෝජනා කරන දේ නොකරයි.

පසුව පෙළ නොව, හැසිරීම පරීක්ෂා කරන්න. අවසර දුන් සත්කාරකයකට නව සම්බන්ධතාවක් විවෘත කර පිළිතුර නිරීක්ෂණය කරන්න, උපජාලයෙන් පිටත ගමනාන්තයකට හානිකර නොවන ඉල්ලීමක් යවා එය මිය යන බව තහවුරු කරන්න, සමවයස් සම්බන්ධතාවක් උත්සාහ කරන්න, ද්වාරයේ දේශීය සේවාවක් උත්සාහ කරන්න, සහ නොඉල්ලූ LAN සිට සේවාලාභියා දක්වා සම්බන්ධතාවක් උත්සාහ කරන්න. වෙනසට පෙර පැවති විෂය පථයෙන් පිටත ගැලීමක් ඇතුළත් කරන්න, සහ යන්ත්රයේ මුළු ලුහුබැඳීම් වගුවම හිස් කිරීම වෙනුවට එම ගැලීම පමණක් ඉවත් කරන්න.

නීති සමඟ සීමා ද වාර්තා කරන්න: මෙය සංක්රාමණය සීමා කරයි, වෙනත් කිසිවක් නොවේ. මෙය සේවාලාභියාට තමන්ගේම අන්තර්ජාල සම්බන්ධතාව භාවිත කිරීම වළක්වන්නේ නැත, අවසර දුන් LAN සත්කාරකයාට ගමන් තවදුරටත් යැවීම වළක්වන්නේ නැත, සහ අවසර දුන් සේවා තුළ සත්යාපනය ආදේශ නොකරයි.

අදාළ ලිපි