دنده د ننوتلو پر مهال ځي، لاګ د کلاینټ پیل ښیي، خو تونل کله هم نه پورته کېږي۔ یا پورته کېږي او څو ثانیې وروسته ورکېږي۔ په دواړو حالتونو کې د ځانګړنو لیست به سم و۔ launchd د دندې منلو پر مهال دوه ژمنې وکړې: به یوه پروسه وڅاري، او هغه پروسه به دوام وکړي۔ VPN دواړه ته اړتیا لري، او سم XML فایل هیچا نه ورکوي۔

سم د ځانګړنو لیست کار کوونکې خدمت نه دی

plutil -lint جوړښت ګوري۔ نشي ویلای چې باینري شته، یا دا چې کلاینټ دا نسخه ارګومېنټونه ملاتړ کوي، یا دنده په داسې زمینه کې پیلېږي چې اعتبارنامه هلته شته۔ دا معنوي پوښتنې دي او د launchd د ستونزو په څېر ښکارېدونکي ډېری ناکاميونه همدغه څرګندوي۔

plutil -lint /Library/LaunchDaemons/com.example.vpn.plist
launchctl print system/com.example.vpn

د دویم حکم پایلې ولولئ، د دې پر ځای چې فکر وکړئ دنده بار شوې۔ دا وروستی وتلو حالت او د خدمت د چلېدو خبر ورکوي، چې د پروفایل لمسولو دمخه «هیڅکله پیل نه شو» له «پیل شو او مړ شو» بېلوي۔

اجنټان د کاروونکي غونډه پېرزوينه کوي، ډیمونونه نه

د Apple launchd اسناد د هر کاروونکي اجنټان د سیستم ډیمونونو څخه بېلوي۔ اجنټ د ننوتلي کاروونکي په زمینه کې، د هغه کاروونکي د کیچین او چاپېریال سره ځي۔ ډیمون پرته له هغې غونډې ځي، او دنده سیستم ډایرکټري ته لېړدول د کاروونکي متقابل اعتبارنامه بیا نه جوړوي۔

دا توپیر ډیزاین ټاکي۔ که اړیکه د یو کس ننوتل یا د MFA غوښتنې منل غواړي، ملاتړ شوی ترتیب دا دی د کاروونکي غونډې دنده چې له ننوتلو وروسته ځي۔ که باید پرته له هیچا ننوتلو کار وکړي، کلاینټ ته د خپل نوي کولو او لغوه کولو پروسې سره منل شوې بې پاملرې پېژندنه ته اړتیا ده۔ ناسمه کرښه ټاکل داسې دنده جوړوي چې پاکه پیلېږي او په لومړي تصدیق مرحله کې ناکامېږي۔

دا توپیر د ارګومېنټ صف کې د پاسورډ یا د سندونو د کتنې د بندولو له لارې مه پټوئ۔ دواړه د تصدیق اړتیا په لوستل کېدونکي فایل کې تلپاتې راز ته اړوي، او دویم یې مانا دا ده چې تونل هر هغه څه تصدیقوي چې ځواب ورکوي۔

څارنه یوازې هغه وخت کار کوي چې پروسه مخکې پاتې شي

هغه کلاینټ چې ځان ډیمون کوي، کنټرول سمدلاسه launchd ته ورکوي، او بیا څارونکی هغه پروسه ګوري چې لا دمخه پای ته رسېدلې۔ تونل ممکن پورته وي، خو launchd فکر کوي دنده ناکامه شوه، او د بیا پیل تګلاره یې هغه څه کوي چې تاسو یې نه غوښتل۔

د کلاینټ مستند مخکینې یا خدمت حالت وکاروئ۔ که محصول خپله ملاتړ شوې پیلنې ځانګړنه ولري، هغه لا پوهېږي چې څنګه مخکې پاتې شي او څنګه شبکې سټیک ته وسپاري؛ خپل دنده بېله ډیزاین ده، نه د هغې سمون۔

دندې ته بې ساري لیبل، موخه شوی اجرایوي فایل او په قصد جوړ شوی ارګومېنټ صف ورکړئ۔ صف د shell حکم کرښه نه ده، نو پایپونه او بیا لارښوونه هلته نه کار کوي، او د نقلونو چلند توپیر لري۔ هغه حکم چې د مدیر په ټرمینل کې بریالی شي، تر ټولو ډېر یوازې لومړنۍ کتنه ده۔

اعتبارنامه باید پرته له غوښتنې کار وکړي

بې پاملرې عملیات د اعتبارنامې ستونزه لرې نه کوي، بلکې لېږدوي۔ یو څوک باید پېژندنې مالک وي، پریکړه وکړي چې څومره ژوند کوي، او مستند کړي چې څنګه بدلېږي۔ هغه سند چې د پای نیټې څارنه نه لري، په کالندر کې د نیټې سره یو ځنډ ګرځي۔

رازونه له ارګومېنټونو او د دندې له معیاري پایلې بهر وساتئ۔ که کلاینټ له ساتل شوي زېرمې څخه د اعتبارنامې لوستل ملاتړ کوي، هغه لار وکاروئ، او وګورئ چې د دندې اجرا زمینه زېرمې ته رسېدلی شي۔ د root په توګه ځېدونکی ډیمون معمولاً د ننوتلو کیچین توکي نشي لوستلای، او دا هغه تفصیل دی چې یوازې په سیستم زمینه کې ښکاري۔

معنای چمتو تعریف کړئ، بیا همهلته ازموینه وکړئ

بریالی پیل ثابتوي چې پروسه پیل شوه۔ دا نه ثابتوي چې شبکه پورته ده، جګړنې پېژندنه ومنله، یا شخصي اپلیکیشن ته رسېدل کېږي۔ که بل څه تونل ته تړلي وي، هغه ته د دندې د پیل وخت نه، بلکې د اړیکې ښکېلوونکی د چمتووالي سیګنال ته اړتیا ده۔

بیا هڅې باید محدودې وي او باید نه شته شبکه له رد شوې اعتبارنامې څخه بېلې کړي۔ په هر ناکامي کې بیا پیلول پای ته رسېدلی سند نه شي سمولای او د ریښتیني هغه پټوونکی، یو شان هڅو ډک لاګ جوړوي۔

دنده په هغه زمینه کې ومنئ چې واقعاً به پکې ځي: د بوټ پر مهال شبکه نشته، نورمال ننوتل، له خوبه ویښېدل او کنټرول شوی تمځای۔ بیا د دندې لیبل، د کلاینټ نسخه او د پروفایل بیاکتنه یوځای ولیکئ، تر څو بل کس د یو وخت چلېدلې فایل پر ځای د نسبت وړ خدمت میراث واخلي۔

اړوندې مقالې