client-config-dir له دې وروسته چې OpenVPN خدمت شو، له پامه غورځول کېږي
نسبي client-config-dir د ډیمون د کاري فولډر په نسبت حل کېږي. unit ولولئ، د لارې اجازې وګورئ، بیا په لاګ کې پلټنه تایید کړئ.
ستاسو تونل پورته کېږي او کلینټ نښلول کېږي، خو ثابت پته او هغه ټېل وهل شوې لارې چې تاسو د هماغه یو کاروونکي لپاره تعریف کړې وې ورکې دي. لاګ نه وايي “file not found”، او همدا خلک د سندونو بیا جوړولو ته لېږي. د دې پېښو په ډېریو کې ډیمون له بل فولډر څخه چلېږي چې ستاسو د ازموینې شیل و، او client-config-dir هېڅکله هغسې حل نه شو لکه تاسو فکر کاوه. سمون د لارې اصلاح ده، نه د اعتبارنامو بیا تنظیمول.
د ترتیباتو له لمس کولو مخکې unit ولولئ
له هغه پروسې پیل کړئ چې واقعاً چلېږي، نه له هغه فایل چې تاسو سم کړی. systemd ته د اجرا کرښه، کاري فولډر او هغه حساب وپوښتئ چې ورته ښکته کېږي. هغه درې ځوابونه په دې ټولګي کې ډېری نیمګړتیاوې تشریح کوي:
systemctl show openvpn-server@server -p ExecStart -p WorkingDirectory -p User -p RootDirectoryتش WorkingDirectory مانا دا ده چې unit په / کې پیل کېږي، نو نسبي client-config-dir ccd /ccd کې لټول کېږي. هغه فولډر نږدې هېڅکله نه وي، او ډیمون د هغه نه شتون مرګونی نه ګڼي.
دا له هغه تعاملي پیل سره پرتله کړئ چې د ازموینې پر مهال مو کارولی و، چېرې چې ستاسو د شیل اوسنی فولډر شاید د ترتیباتو فولډر و. هماغه فایل، هماغه کیلیدونه، دوه بېلې پایلې.
نسبي لاره د څه په نسبت حل کېږي
کیلید د هغه وخت د پروسې کاري فولډر په نسبت حل کېږي چې اختیار کارول کېږي. د دې مانا “د هغه ترتیباتي فایل ترڅنګ چې ما د --config سره ولېږه” نه ده. OpenVPN په خوښۍ سره له مطلقې لارې ترتیبات لولي او بیا هم نسبي ارزښتونه بل ځای حل کوي، او همدا دلته دام دی. د OpenVPN 2.6 لارښود قاعده د --client-config-dir لاندې او بیا د --cd لاندې بیانوي.
د cd کیلید مخکې له دې چې نور فایلونه ولولل شي هغه زمینه بدلوي، نو هغه unit چې cd /etc/openvpn/server ټاکي او بیا client-config-dir ccd، /etc/openvpn/server/ccd ته حل کېږي. که تاسو cd ورزیات کړئ، د لارښوونو ترتیب وګورئ او په یاد ولرئ چې دا په هماغه فایل کې هر بل نسبي حواله اغېزمنوي.
لاره د ډیمون د حساب په توګه وګرځئ
لاره سمه هم کېدای شي او بیا هم نالوستونکې وي. د امتیازاتو له ښکته کېدو وروسته ډیمون نور root نه دی، نو هر مورني فولډر ته د هغه حساب لپاره د لټون اجازه او کلینټ فایل ته پخپله د لوستنې اجازه ورته اړتیا ده. په مورني فولډر کې یو نیمګړی اجرا بټ د فایل پټولو لپاره بس دی، او تېروتنه یوازې د هغه کلینټ په توګه ښکاري چې په غلې کې اصلي حوض ترلاسه کوي.
namei د هرې برخې اجازه په ترتیب سره چاپوي، چې له فولډرونو یو په یو ګوتلو څخه ګړندی دی:
namei -l /etc/openvpn/server/ccd/client1بیا لوستنه د خپل ځان پر ځای د خدمت حساب په توګه وازموئ:
runuser -u openvpn -- test -r /etc/openvpn/server/ccd/client1 && echo readableکه unit chroot کاروي، فولډر باید د زندان په داخل کې وي، او د ترتیباتو لاره د chroot له تطبیق وروسته تفسیر کېږي. هغه فایل چې په کوربه باندې د زندان څخه بهر وي، له داخل څخه نه لیدل کېږي.
د اټکل پر ځای پلټنه تایید کړئ
د یوې بیا پیل لپاره د لاګ کچه لوړه کړئ او ولولئ چې سرور د کلینټ ځانګړو اختیارونو په اړه څه وايي. په verb 4 کې ډیمون د هر کلینټ وارد شوي ترتیبات راپور کوي، نو نه شتون لرونکې کرښه مستقیم ثبوت دی چې د هغه اړیکې لپاره هېڅ فایل نه دی لوستل شوی.
openvpn --config /etc/openvpn/server.conf --verb 4 --client-config-dir /etc/openvpn/server/ccdدا په ازاده پورټ کې مخکې پلان کې وچلوئ او یو کلینټ ونښلوئ. دا systemd په بشپړه توګه له انځور څخه باسي: که بدلونونه دلته ښکاره شي او د خدمت لاندې نه، توپیر د unit په زمینه کې دی، نه په فایل کې.
پریکړه وکړئ چې کله هېڅ فایل سم نه وي څه باید وشي. له ccd-exclusive پرته کلینټ یوازې د نړیوال حوض ترتیباتو سره منل کېږي، او همدا هغه غلې ناکامي ده چې پورته بیان شوه. ورسره ورک فایل رد شوې اړیکه ګرځي، او هغه ردول لیدل اسانه خو د بار لاندې ډیبګ کول سخت دي.
سم کړئ، بیا پیل کړئ، تایید کړئ
په ترتیباتو کې فولډر مطلق کړئ او همداسې یې پرېږدئ. نسبي لارې یوازې هغه وخت خوندي دي چې unit کاري فولډر پین کړي، او پین کول یو اضافي خوځېدونکی برخه ده چې یو څوک یې وروسته لرې کوي.
client-config-dir /etc/openvpn/server/ccd
ccd-exclusiveانسټنس بیا پیل کړئ، یو پېژندل شوی کلینټ بیا ونښلوئ او هغه پته چې ترلاسه کړې یې د هغه لوري ته ټېل وهل شوې لارو سره ولولئ. که پته د هغه کلینټ په فایل کې د ifconfig-push کرښې سره سمه وي، پلټنه کار وکړ. که کلینټ لا هم عمومي حوض ته ورلوېږي، د لاګ کرښو شمېر ته بېرته لاړ شئ: صفر واردات مانا دا ده چې لاره یا پېژندنه غلطه ده، د غلط منځپانګې سره یو واردات مانا دا ده چې تاسو هغه فایل سمولئ چې ډیمون یې نه لولي.
په یو ځای د پخواني unit او ترتیباتو په بیا رغولو سره شاته لاړ شئ، بیا بیا پیل کړئ. د دې هېڅ لپاره سندونه بیا صادرولو ته اړتیا نشته، او د فولډر ستونزه د اعتبارنامې ستونزه ګڼل هغه لار ده چې پنځه دقیقې سمون د ساتنې کړکۍ ته اړوي.