VPN පමණක් ඇති iptables සත්කාරකය: tun උපාංගය නම් කරන්න, tun+ නොවේ
tun+ යන්ත්රයේ සෑම උමඟකටම ගැළපේ. එක් උපාංග නාමයක් ස්ථිර කරන්න, endpoint ව්යතිරේකය මුලින් තබන්න, සහ ප්රතිපත්තිය පරීක්ෂා කරන අතර ප්රතිසාධන මාර්ගයක් තබා ගන්න.
-o tun+ ලිවීම නිවැරදි උපදෙසක් ලෙස පෙනුනත් ඇත්ත වශයෙන් එය කර්නලයට ඇති සෑම උමඟකටම ගැළපෙන වයිල්ඩ්කාඩ් එකකි. දෙවන VPN සේවාදායකය, කන්ටේනර් පාලමක් හෝ කඩා වැටුණු සැසියක් අත්හැර ගිය අතුරුමුහුණතක් — සියල්ල එය තෘප්තිමත් කරයි, පසුව සත්කාරකය ප්රතිපත්තිය වළක්වන්නට යෙදුණු ගමනාගමනයට ඉඩ දෙයි. පහත ක්රියාපටිපාටිය එක් උපාංග නාමයක් ස්ථිර කරයි, උමඟ සැබවින්ම හැදිය හැකි පිළිවෙළකට ව්යතිරේක සකසයි, සහ නීති නරක ලෙස වැටුණොත් ආපසු යාමේ මාර්ගයක් ඉතිරි කරයි. සෑම පියවරක්ම තනිව ආපසු හැරවිය හැකි තරම් කෙටිය.
පියවර 1: දැන් ඇති නීති සටහන් කරන්න
පෙරනිමි ප්රතිපත්තියක් වෙනස් කිරීමට පෙර වත්මන් තත්ත්වය සුරකින්න, එවිට ආපසු හැරවීම මතකයක් නොව විධානයක් වේ. iptables-save > /root/iptables.pre සෑම වගුවක්ම ඔබට ප්රතිසාධනය කළ හැකි ගොනුවකට ලියයි, සහ ඔබ සැකසීමට යන ප්රතිපත්තිය එය රැගෙන යන සම්බන්ධතාවය කඩා දමන විට root සැසියක් විවෘත දෙවන ටර්මිනලයක් අධික බියක් නොවේ. ඔබ දුරස්ථව වැඩ කරන්නේ නම්, flush එකක් ද හදිසි විදුලි ස්විචයක් ලෙස සැලසුම් කරන්න.
පසුව අතුරුමුහුණතු ලැයිස්තුගත කරන්න, මන්ද ඔබ උපකල්පනය කළ නාමය ඔබ කියවිය යුතුව තිබූ නාමයයි: ip -br link දැන් ඇත්තේ කුමක්ද පෙන්වයි, සහ උමඟ ඉහළ යන තුරු නොපෙනේ. කියවන අතරම උපාංගවල නාම සටහන් කරගන්න.
පියවර 2: උමඟට එහිම නාමයක් දෙන්න
OpenVPN සේවාදායක වින්යාසයේ dev tun_work පිළිගනී, පසුව Linux tun0 වෙන් කරනවා වෙනුවට හරියටම එම නාමයෙන් අතුරුමුහුණතක් සාදයි. වෙනත් කිසිවක් එයට හිමිකම් නොකියන තාක් නැවත සම්බන්ධ වීම් අතර නාමය ස්ථාවරව පවතී, සහ උපාංගය නම් කරන නීතිය අර්ථවත් කරන්නේ එයයි.
නාමය පාලනය කළ නොහැකි තැන, උමඟේ ලිපිනය හෝ පැකට් ලකුණ සමඟ ගළපන්න. දෙකම ක්රියා කරයි, දෙකම කියවීමට අමාරුය, සහ උමඟ නැවත අංකනය වන විට දෙකම වඩා නිහඬව අසාර්ථක වේ. කෙසේ වුවත්, එක් දෙයක් සමඟ පමණක් ගළපන්න සහ කුමක්දැයි පැහැදිලි කරන්න.
පියවර 3: endpoint ව්යතිරේකය මුලින් තබා ප්රතිපත්තිය ලියන්න
VPN පමණක් ඇති සත්කාරකය යනු කෙටි ව්යතිරේක ලැයිස්තුවක් සහිත පෙරනිමි ප්රතික්ෂේප සත්කාරකයකි, සහ වඩාත්ම වැදගත් ව්යතිරේකය උමඟට පැවතීමට ඉඩ දෙන එකයි. උමඟ-උපාංග නීතියට පෙර endpoint නීතිය තබා මෙම පිළිවෙළින් එය ගොඩනගන්න, එවිට අත්වැල් ගැසීමට යාමට තැනක් ඇත:
# allow the tunnel to be built, then everything the tunnel carries
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
iptables -A OUTPUT -d 198.51.100.7 -p udp --dport 1194 -j ACCEPT
iptables -A OUTPUT -o tun_work -j ACCEPT
iptables -A INPUT -i tun_work -j ACCEPT
iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPTendpoint හි වචනාර්ථ ලිපිනය සහ තොටුපළ ඔබේ සැපයුම්කරුට අයත් ඒවා මිස මෙම පිටුවට නොවේ. endpoint යනු සත්කාරක නාමයක් නම්, එක් වරක් විසඳා ප්රතිඵලය ස්ථිර කරන්න, මන්ද නීතියකට නාමයක් සෙවිය නොහැකි අතර කැරකෙන පිළිතුරක් ඊළඟ DNS වෙනසට පසු ප්රතිපත්තිය නිහඬව කඩා දමයි. තොටුපළ ද පරීක්ෂා කරන්න, මන්ද ඔබව TCP 443 වෙත ගෙන යන සැපයුම්කරුවන්ට එසේ නොකළහොත් කිසිවෙකු නොලියූ නීතියක් අවශ්ය වේ. එක් ප්රොටෝකෝලයක් මත පමණක් ක්රියා කරන උමඟ සාමාන්යයෙන් මෙම මඟහැරීමයි, ගිනිපවුරේ දෝෂයක් නොවේ.
රවුටරයක එම හැඩයම ඊට පිටුපස සේවාදායකයන් සඳහා FORWARD දාමයට යයි, සහ රවුටරයේම ගමනාගමනයට එහිම නීති අවශ්යයි. යොමු කළ පැකට් පමණක් ආවරණය කරන නීති කට්ටලයක් SSH සහ DNS පැරණි මාර්ගයේම තබයි, උමඟ ඉහළ යන මොහොතේ රවුටරය ළඟා නොහැකි වන්නේ එලෙසය.
පියවර 4: පැවැත්ම පමණක් නොව අනුපිළිවෙළ ද පරීක්ෂා කරන්න
නීති අනුපිළිවෙළින් ඇගයේ, එබැවින් කලින් එන ACCEPT එකක් පසුව එකතු කළ REJECT එක සරලව සඟවයි. established සහ related ගැළපීම නිසාම සාමාන්ය ඇතුළු වීමේ මාර්ගයක් නොවිවෘතව ඔබේම පිටතට යන ඉල්ලීම්වලට පිළිතුරු ආපසු එයි, සහ එය උමඟ පිළිගැනීමෙන් පසු තැබීමෙන් අදහස් වන්නේ වැටුණු උමඟක් තවමත් එහිම අතුරුමුහුණතෙහි ආපසු ගමනාගමනය ගෙන යන බවයි.
නීති ගණන එක් තිරයක කියවිය හැකි තරම් කුඩාවට තබා ගන්න. ඔබට විගණනය කළ නොහැකි නීති කට්ටලය ඔබ ඉහළින් ව්යතිරේක එකතු කර අලුත්වැඩියා කරන එකයි, පෙරනිමි ප්රතික්ෂේප ප්රතිපත්ති සෙමින් පෙරනිමි අවසරයේ අද්දරක් ලබන්නේ එලෙසය. වෙනසට පෙර සහ පසු ACCEPT ගණන් කරන්න.
පියවර 5: එය ඇරඹුම සහ ලිපින පවුල යන දෙකම ජයගන්නා ලෙස සකසන්න
අතින් ඇතුළත් කළ නීති නැවත ඇරඹීමේදී අතුරුදහන් වේ, එබැවින් ඒවා බෙදාහැරීමේ ගිනිපවුරු සේවාවෙන් හෝ උමඟ අතුරුමුහුණත පවතින පසු ක්රියාත්මක වන unit එකකින් පූරණය කරන්න. OpenVPN ආරම්භ වීමට පෙර ක්රියාත්මක වන ස්ක්රිප්ටයක tun_work සඳහන් කිරීම වැටුණු ගමනාගමනයේ ඇරඹුම් ලූපයක් සෑදීමේ පොදු ක්රමයකි.
පසුව IPv6 වෙන වෙනම පරීක්ෂා කරන්න, මන්ද IPv4 සඳහා හොඳ පෙරනිමි ප්රතික්ෂේප ප්රතිපත්තියක් අනෙක් පවුල ගැන කිසිවක් නොකියයි. ip -6 route සත්කාරකයට IPv4 පමණක් හසුරුවන උමඟක් වටා ගමනාගමනය ගෙන යා හැකි මාර්ගයක් තිබේදැයි ඔබට කියයි, සහ ip6tables හෝ nftables ට එහිම සමාන නීති අවශ්යයි. නීති කට්ටලයේ සමමිතිය විශ්වාස කරනවා වෙනුවට IPv6-only ගමනාන්තයක් සමඟ පරීක්ෂා කරන්න.
පියවර 6: සත්යාපනය කර ප්රතිසාධනයට සූදානම් වන්න
උමඟ ඉහළට ගන්න, ඔබ අපේක්ෂා කරන සේවාව ක්රියා කරන බව තහවුරු කරන්න, පසුව ප්රතිපත්තිය ප්රතික්ෂේප කළ යුතු දෙයක් උත්සාහ කරන්න. පිළිතුර ඔබව පුදුම කරයි නම් iptables-restore < /root/iptables.pre සමඟ ප්රතිසාධනය කරන්න, සහ ඉන් පසුව පමණක් නීති සංස්කරණය කිරීම අරඹන්න. ස්ථාවරත්වය සහ පරීක්ෂා කළ ප්රතිසාධන මාර්ගය එක්ව මෙය දෙවරක් කළ හැකි වෙනසක් කරයි.