یو پروفایل چې پخوا به پیلېده اوس د انتخاب د تېروتنې سره ناکامېږي، او هغه کرښه چې شنونکی یې نقلوي په پرده کې بشپړه معقوله ښکاري. دا هغه دام دی: د ترتیباتو فایل د فزیکي کرښو لړلیک دی، هر یو کې د یو انتخاب کلیدي کلمه او د هغې دلیلونه وي، او اوږده کرښه چې ډېرډونکی یې تاوي په پرده کې تر هغه پورې د دوو کرښو په څېر ښکاري چې بایټونه ونه ګورې. شبکه، سند یا تونل په دې ډول ناکامۍ کې ښکېل نه دي. دوه کرښې چې په پرده کې یو ډول ښکاري کېدای شي په یو بایټ توپیر ولري.

لاندې کتنې په ترتیب سره وکړئ او په لومړنۍ ناکامه کتنه ودرېږئ. هر یو له بلې ارزانه ده، او هر یو بېلابېل توضیح لرې کوي.

یوه کرښه، یوه لارښوونه

شنونکی یوه کرښه لولي، لومړی ټکی د انتخاب په توګه اخلي او پاتې برخه د هغه انتخاب دلیلونه ګڼي. نو د cert server.crt port 1194 په څېر کرښه دوه پرلپسې لارښوونې نه ده. دا درې دلیلونه لرونکې یوه cert انتخاب دی، او دریم یې د فایل نوم نه دی چې انتخاب یې مني. تېروتنه د ورکې کرښې وقفې په توګه لوستل سم دي؛ د ورکې لارښوونې په توګه یې لوستل سم نه دي.

# malformed: one option, three arguments
cert server.crt port 1194

# intended: two options, one argument each
cert server.crt
port 1194

هغه دوه سمې شوې کرښې یوه ټوټه ده، نه ترتیبات. دوی د دې لپاره دي چې وښیې پوله چېرته ده. په پروفایل کې هره عادي لارښوونه همدا قاعده تعقیبوي، او هغه کرښه چې دوه له دوی سره یوځای کوي یا د دلیل تېروتنه یا هغه ارزښت تولیدوي چې انتخاب یې تمه نه لرله.

ثابت کړئ چې کرښې وقفه ریښتینې ده

ډېرډونکي د ښودنې لپاره تاوي. ځینې یې د نښلولو پر مهال کلکې وقفې هم ورزیاتوي، ځینې نه، نو هماغه لیدیزه پایله کېدای شي له دوو ډېرو بېلو فایلونو څخه راشي. د بدلون له کولو مخکې د کرښو پایونه وښیې او کرښې وشمېره. اندازه کول یوې کمانډې ته دي؛ اټکل کول یوې ماښام ته.

cat -A /etc/openvpn/server/lab.conf | sed -n '10,20p'
awk 'NR>=10 && NR<=20 {printf "%d:%s\n", NR, $0}' /etc/openvpn/server/lab.conf

په لومړنۍ پایله کې هره ریښتینې کرښې وقفه د $ نښې په توګه ښکاري، نو هغه کرښه چې تاوه شوې خو نه ده ووېشل شوې په هغه ځای کې چې ستا پرده تاوي هېڅ نښه نه ښیي. دویمه کمانډه شمېرل شوې کرښې چاپوي، چې د شنونکي د راپور او د فایل د منځپانګې د پرتله کولو تر ټولو ګړندې لار ده.

اضافي تشې هم لارښوونه نه جوړوي. دننه کېدل ښکاري دي، او هغه کرښه چې په تشه پیلېږي لا هم هماغه یوازینی انتخاب دی. که د تېروتنې پیغام کرښې شمېره وښیې، هماغه کرښه ولوله نه هغه پراګراف چې هغه ورپورې اړه لري.

د لارښوونو لړلیک نه، لار نقل کړه

د نښې نښانې د تشې لرونکو دلیلونو لپاره دي، نه د انتخابونو د ډلې کولو لپاره. د سند هغه لار چې تشه لري خپلې نښانې غواړي؛ دوه لارښوونې چې یوه جوړه نښانې شریکوي لا هم یوه خرابه کرښه ده.

cert "/etc/openvpn/pki/lab certs/server.crt"
key "/etc/openvpn/pki/lab certs/server.key"

د انتخابونو نومونه له ترتیباتو سره یوځای وګوره، ځکه یوځای شوې کرښه کېدای شي یو باوري ښکاري نښه جوړه کړي چې هېڅکله نه وه. د پورټ لارښوونه port ده؛ هغه پروفایل چې د همدې فکر لپاره بل څه کاروي د کرښو د پولو له سمولو وروسته هم ناکامېږي. کله چې نوم نااشنا ښکاره شي، له فورمې نمونې سره یې نه، بلکې د هغه نسخې د انتخابونو لړلیک سره یې پرتله کړه چې تاسو یې چلوئ.

داخلې بلاکونه د بلاکونو په توګه وساته

پروفایلونه کولای شي سندونه او کیلي په داخلي ډول ولري، او هغه بلاکونه معلومات دي نه ترتیبات. د بلاک دننه PEM کرښې هغه انتخابونه نه دي چې باید هوار، بیا دننه یا یوځای شي، او د بلاک نښې باید په خپلو کرښو کې پاتې شي.

داخلي بلاک ته د ناڅرګندې سیمې په توګه وګوره: د هغې شاوخوا د انتخاب کرښې سمې کړه، منځپانګه یې بایټ په بایټ لاس نه ورته ووهه، او هېڅکله یې د عامه ملاتړ په تار کې مه نښلوه. که د بڼې اچولو وسیله بلاک بیا ولیکه، له خپل PKI څخه یې بیرته راوړه نه دا چې په لاس یې سم کړې.

تر ټولو کوچنۍ برخه سمه کړه، نه کالب

زړه راښکونکې سمونه دا ده چې ټول فایل د یوې لارښودنې د ترتیباتو سره بدل کړې چې «کار کوي». دا یوه خرابه کرښه د هغو تګلارې بدلونونو سره بدلوي چې چا کتنه نه ده کړې: نور DH پیرامیټرونه، د فشار تنظیمات، د کوډ انتخاب، دوه ځله اورېدونکي. اصلي ستونزه کوچنۍ او سیمه ییزه ده، او بدیل یې نه دا دی او نه هغه.

پروفایل په خوندي کاري فایل کې کاپي کړه، په هغه کاپي کې د کرښو پولې سمې کړه، او د خدمت عادي مالک ته اجازه ورکړه چې یې ولولي. بیا بېلګه پیل کړه او لومړنۍ تېروتنه، که موجوده وي، له سره ولوله.

openvpn --config /etc/openvpn/server/lab.conf --verb 3 --log /tmp/parse.log
grep -n 'Options error' /tmp/parse.log

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

اړوندې مقالې