strongSwan trap මාදිලිය: IPsec උමග රථවාහන සඳහා රැඳී සිටින්නේ ඇයි
නිශ්චල on-demand IPsec උමගක් එහි trap ප්රතිපත්තියට ගැළපෙන පැකට්ටුවක් නොමැති තුරු CHILD SA කිසිවක් නොපෙන්වයි. තත්ත්වය කියවන්න, ට්රිගරය පරීක්ෂා කරන්න, සහ start කවදා ගැළපේදැයි දැනගන්න.
තත්ත්ව ප්රතිදානයේ CHILD SA කිසිවක් නොපෙනේ, උමග මළාක් මෙන් පෙනේ, පසුව දුරස්ථ උපජාලයට ping එකක් එය ඉහළ නංවයි. on-demand IPsec සැකසුමක මෙම අනුපිළිවෙල නිර්මාණයයි, දෝෂයක් නොවේ. trap ප්රතිපත්තියක් තේරීමක ස්ථාපනය කර රැඳී සිටී, සහ එයට ගැළපෙන පළමු පැකට්ටුව IKE සහ CHILD SA සාකච්ඡාව ආරම්භ කරයි.
ව්යාකූලත්වයේ කොටසක් වචන මාලාවයි: “up” විවිධ තත්ත්ව දෙකකට භාවිතා වේ. වින්යාසය පූරණය වී ඇති අතර කර්නල් ප්රතිපත්තිය පවතී, නමුත් දත්ත සංගතිය නොපවතී. සක්රීය SA පමණක් ගණන් කරන මොනිටරයක් කිසිවෙකු එහි රථවාහන නොයවන තාක් සෞඛ්ය සම්පන්න අඩවියක් බාහිර ලෙස වාර්තා කරයි.
නිශ්චල on-demand උමගක පෙන්වීමට CHILD SA නොමැත
trap සටහනක් තමන් විසින්ම කිසිවක් සත්යාපනය නොකරයි. එය කර්නලයෙන් තෝරාගත් රථවාහන සඳහා ප්රතිපත්තියක් තබා ගැනීමට සහ පැකට්ටුවකට එම ප්රතිපත්තිය අවශ්ය විට acquisition එකක් එසවීමට ඉල්ලයි. ඩීමෝනය acquisition ලබාගෙන, child අර්ථ දැක්වීම සමඟ ගැළපෙයි, සහ එතැන් සිට සාකච්ඡා කරයි. එතෙක් පෙන්වීමට IKE SA ද නොමැත, එබැවින් ලැයිස්තු දෙකම එකම වේලාවක හිස් විය හැක.
මෙම අනුපිළිවෙල ලොග පිටපත් කියවිය හැකි කරයි. පළමුව acquisition පැමිණේ, පසුව IKE_SA_INIT සහ IKE_AUTH, පසුව CHILD SA. acquisition ට පසුව වහාම ලොගය අවසන් වන්නේ නම්, ට්රිගරය ක්රියා කළා. සාකච්ඡාව අසාර්ථක විය, සහ ඊළඟ ප්රශ්නය trap ගැන නොව, අක්තපත්ර, යෝජනා හෝ ළඟාවීම ගැන ය.
Linux කර්නල් backend සමඟ ඕනෑම SA එකක් පවතින්නට පෙර ප්රතිපත්තිය දැකිය හැක. මෙය ධාවනය කරන්න ip xfrm policy සහ out දිශාව සහ සම්බන්ධතාවයට යොමු වන අච්චුවක් සහිත තේරීම හොයන්න. එම සටහන on-demand තත්ත්වයයි, සහ එහි පැවැත්ම පළමුව තහවුරු කළ යුතු දෙයයි.
start_action යනු කිසිවක් රැඳී සිටීද නැද්ද යන්න තීරණය කරයි
සෑම child swanctl.conf තුළ start_action. start වින්යාසය පූරණය වන විට ආරම්භ වේ, trap ප්රතිපත්තිය ස්ථාපනය කර රැඳී සිටී, සහ none ආරම්භය වෙනත් දෙයකට භාර දෙයි. trap පමණක් ඉහත විස්තර කළ “ping සහ එය ඉහළ එයි” හැසිරීම නිපදවයි.
children {
office-lan {
local_ts = 192.168.50.0/24
remote_ts = 192.168.70.0/24
start_action = trap
}
}
රථවාහන තේරීම් දෙක කුමක් සිත්ගන්නාසුළු ලෙස සැලකේද යන්න නිර්වචනය කරයි, සහ එම උපසර්ගවලින් පිටත සත්කාරකයකින් එන පැකට්ටුවක් trap අවුස්සන්නේ නැත; එය සුපුරුදු ලෙස මාර්ගගත වේ. ට්රිගරය වඩාත් උනන්දු කිරීමට තේරීම් පුළුල් කිරීම උමග ආරක්ෂා කරන බව කියන විශාලත්වය ද පුළුල් කරයි, එබැවින් ඒවා ඔබ සැබවින්ම සංකේතනය කිරීමට අදහස් කරන රථවාහනවලින් ලබා ගන්න.
මෙහි swanctl.conf යොමුව පිළිගත් අගයන් ලැයිස්තුගත කරයි, SA පවතින පසු කුමක් සිදුවේද යන්න පාලනය කරන වෙන් close සහ DPD ක්රියා සමඟ.
ට්රිගරය කෙසේ හෝ ක්රියාත්මක වුණාදැයි සොයා ගන්න
මෙයින් ආරම්භ කරන්න: swanctl --list-conns සහ child ඔබ අදහස් කළ ක්රියාව සමඟ පූරණය වී ඇති බව තහවුරු කරන්න. පසුව local_ts තුළ සත්කාරකයකින් remote_ts තුළ ලිපිනයකට පැකට්ටුවක් යවා swanctl --list-sas නරඹන්න. ප්රතිදානය නොවෙනස් නම්, කිසිදු acquisition එකක් ඩීමෝනයට ළඟා නොවීය.
නිහඬ trap සඳහා සාමාන්ය හේතු දෙකක්: පැකට්ටුව ප්රතිපත්තියට පැමිණීමට පෙර source-NAT විය, සහ තවදුරටත් local_ts සමඟ නොගැළපේ, නැතහොත් වාක්ය ඛණ්ඩ හෝ අක්තපත්ර දෝෂයක් නිසා සම්බන්ධතාවය කිසිදා පූරණය නොවීය. තේරීම් ස්පර්ශ කිරීමට පෙර swanctl --load-all නැවත ධාවනය කර එහි ප්රතිදානය කියවන්න. පූරණය නොවූ සම්බන්ධතාවයක් ප්රතිපත්තියක් ස්ථාපනය නොකරයි, එබැවින් රථවාහනවලට අවුස්සන්නට කිසිවක් නැත.
දිශාව ද වැදගත්: පිටතට යන රථවාහන සඳහා ස්ථාපිත trap එකක් ඇතුළට එන පැකට්ටුවකදී ආරම්භ නොවේ. දුරස්ථ පැත්ත උමග ඉහළ නැංවිය යුතු නම්, එයට තමන්ගේම trap එකක් අවශ්යයි, නැතහොත් මෙම පැත්තට start.
පළමු පැකට්ටුව එනතුරු බලා සිටීම සැමවිටම නිවැරදි හුවමාරුව නොවේ
අන්තර්ක්රියාකාරී සැසි සැකසුම් පිරිවැය දැනේ. පළමු ඉල්ලීම IKE හුවමාරුව සහ CHILD සාකච්ඡාව සඳහා ගෙවයි, සහ කෙටි කාල සීමාවක් ඇති සේවාදායකයෙකුට SA පවතින්නට පෙර අත්හැරිය හැක. සක්රීය start එම පළමු-පැකට් ප්රමාදය ඉවත් කරයි. නමුත් කිසිදා නොඑන රථවාහන සඳහා උමග විවෘතව තබයි.
කරුණු තුනක් තේරීම තීරණය කරයි: මාර්ගය කොපමණ නිතර භාවිතා වේද, පළමු ඉල්ලීමට තද කාල සීමාවක් තිබේද, සහ අපගමනයේදී සමවයස් ළඟා විය හැකිද. සිදුවීම් අනුව එන කලාප රථවාහන සහ අපගමනයේදී නොබැඳි විය හැකි සමවයස් දෙකම trap ට සහාය දක්වයි. ප්රමාදයට සංවේදී සේවාදායකයෙකු සහ සැමවිටම ළඟා විය හැකි සමවයස් start ට සහාය දක්වයි. දෙපැත්තටම ආරම්භ කළ හැකි නම්, ද්විත්ව සාකච්ඡා නොලැබෙන පරිදි ට්රිගරය කා සතු දැයි එකඟ වන්න.
ස්ථාපිත ප්රතිපත්තියක් ද කාන්දු විරෝධී සහතිකයක් නොවේ. අවශ්යතාව fail-closed නම්, ගිනිපවුර SA නොමැති රථවාහන ඉවත් කළ යුතුය, සහ එම නියමය child අර්ථ දැක්වීමෙන් පිටත ජීවත් වේ.
ඊළඟ තර්කය අවසන් කරන පේළි තුන ලියන්න
තේරීම්, ආරම්භක ක්රියාව සහ SA නොමැතිව ප්රතිපත්තිය පවතින බව පෙන්වන විධාන ප්රතිදානය ලියන්න. එම පේළි තුන ඊළඟ වරට යමෙකු උමග බාහිර ලෙස වාර්තා කරන විට “on-demand සහ නිශ්චල” සහ “පූරණය නොවේ” අතර වෙන් කරයි. ඒවා සටහන් කිරීමට මිනිත්තුවක් ගත වේ. ඒවා නොමැතිව එම පරීක්ෂණයම ශුන්යයෙන් ආරම්භ වේ.
සැබවින්ම තේරීම තුළ ඇති සත්කාරකයකින් පරීක්ෂා කරන්න. රවුටරයෙන්ම කරන ping බොහෝ විට වෙනත් මාර්ගයක් ගනී, සහ එහි පිටුපස ඇති උපජාලය ආරක්ෂා කරන ප්රතිපත්තිය ගැන කිසිවක් ඔප්පු නොකරයි.