OpenVPN push-peer-info: calaamadee macaamiisha adigoon gelin siin
Goob UV_ waxay ku socotaa tunnel-ka la xaqiijiyay, laakiin qiimaha wali waa sheegashada macmiilka. Ku xidh, hubi waxa yimid, oo ogolaanshaha ku hay dhinaca serverka.
Calaamadaha deployment-ka waa sababta caadiga ah ee dadku ugu jeestaan sifadan: xiriir kastaa waa inuu qaato wax sida goob ama door, serverkuna waa inuu akhriyaa isagoon abuurin qaab kale oo aqoonsi. OpenVPN bulshada ayaa horey u leh farsamadan, wayna yar tahay. Qaybta xanuunka leh waa rajada. Dejinta doorsoome caadi ah profile-ka macmiilka waxba kama qabato serverka, qiimaha yimaadana wuxuu kaliya caddeeyaa in macmiilku soo diray.
Kani waa buug-hagid oo loogu talagalay waddada shaqaynaysa, tallaabada xaqiijinta ee muujinaysa waxa runtii yimid, iyo dib-u-noqoshada aan ka tagin hook badh-qaabaysan. Wax halkan kama u baahan tahay shahaado cusub, plugin cusub ama fidin borotokool.
Deji doorsoome oo daari waddada
Laba sadar ayaa shaqada qabta profile-ka macmiilka, labaduna waa lagama maarmaan. Midda koowaad la'aan wax la diro ma jiro; midda labaad la'aan macmiilku wax ma bixiyo macluumaadka peer-ka gabi ahaanba. Nidaamku muhiim maaha, taasna waa muhiim in la ogaado sababtoo ah labada sadar waxay inta badan ku dhammaadaan qaybo kala duwan oo profile la sameeyay ah. Waxa muhiimka ah waa in labaduba ka badbaadaan wax kasta oo dib u qoraya profile-ka ka hor inta macmiilku akhriyo.
setenv UV_DEPLOY field-support
push-peer-info
UV_ horgalaha maaha qurxin. Doorsoome DEPLOY caadi ah wuxuu ku sii jiraa gudaha habka macmiilka oo waligiis lama gudbiyo, halka qaabka horgalaha leh uu yahay booska magacyada ee borotokoolku u kaydiyo goobaha isticmaaluhu qeexay. Ka tag qaybta kale ee profile-ka la ansixiyay isagoon taaban, oo ka hor deployment-ka hubi in build-ka macmiilka aad deploy-garaynayso uu taageero labada tilmaamood.
Hal hubin wax ku ool ah ayaa halkan ku habboon, ma aha dhamaadka: hubi in tilmaamtu gaarto binary-ga macmiilka oo aanuu duubis liqin. Macmiil garaaf ah oo isagu sameeya sadarkiisa amarka, ama interface maamul oo dib u shubta profile kaydsan, waxay tuuri karaan sadar aanay aqoonsanayn. Haddii serverku waxba arkin, kani waa meesha ugu horreysa ee la eego.
Ka akhri goobta hook-ka serverka
Dhinaca serverka, macluumaadka peer-ka ee la helay waa la xaqiijiyaa oo lagu daro deegaanka socodka shaqada xiriirka, taasna waa waxa ka dhigaya mid laga akhriyi karo hook isagoon shaqo borotokool ah oo adiga kaa timid jirin. Serverku uma baahna inuu falanqeeyo kanaalka kontoroolka ama wax kuu kaydiyo; qiimuhu si fudud ayuu u joogaa inta xiriirka la dejinayo. Qoraal yar oo client-connect ah oo calaamadda ku qora magaca la xaqiijiyay agtiisa ayaa sidan u eg.
#!/bin/sh
# /etc/openvpn/server/hooks/label.sh
printf '%s %s\n' "$common_name" "${UV_DEPLOY:-unset}" \
>> /var/log/openvpn/deploy-labels.log
Doorsoomaha ka akhri deegaanka halkii aad loolka falanqayn lahayd, oo had iyo jeer sii qiime caadi ah. ${UV_DEPLOY:-unset} ayaa qoraalka u ilaalisaa mid shaqeeya macaamiisha aan goobta waligood dirin, taas oo ah xaaladda caadiga ah inta lagu jiro deployment tartiib-tartiib ah. Ha ku shubin deegaanka oo dhan lool si aad u hesho magaca; waxaa ku jira wax badan oo ka badan calaamadda, oo ay ku jiraan qiyam aadan u qasban inaad hayso.
Qoraalka gacanta ku socodsii oo waxay soo sheegtaa unset wax kasta, sababtoo ah qolof gacmeed ma qaado deegaanka xiriirka. Taasi maaha khalad ku jira qoraalka manaaha caddayn in goobtu maqan tahay. Ku tijaabi xiriir dhab ah, taas oo ah macnaha kaliya ee doorsoomuhu ku jiro.
Hubi waxa runtii yimid
Ku xidh hal macmiil oo calaamadda leh iyo mid aan lahayn, ka dibna akhri faylka. Labada waa imtixaanka: sadar qudha waa inuu qaataa qiimaha midda kalena caadiga, labaduna waa inay magacaabaan isla aqoonsiga la xaqiijiyay ee aad filayso.
tail -n 5 /var/log/openvpn/deploy-labels.log
# field-support deployed-client-07
# unset legacy-laptop-02
Sadarrada faallooyinkaas waa qaabka wax-soo-saarka, maaha nuqul ka yimid serverkaaga; akhri faylkaaga. Haddii macmiilka labaadna uu muujiyo qiime, doorsoomaha waxaa lagu dejiyay meel kale oo deegaanka ah, oo waxaad akhrinaysaa dejinta duug ah halkii goobta peer-ka.
Sidoo kale hubi loolka serverka xiriirka. Macluumaadka peer-ka ayaa halkaas ka muuqan kara, taas oo ku habboon cilad-baadhista iyo sabab lagu hayo qiyamada caajis: magacyo dad ma jiraan, lambarro tikit ma jiraan, wax aanad jeclaan lahayn inuu arko akhristaha loolka ma jiraan.
Calaamadda u qaado sheegasho, maaha aqoonsi
Qof kasta oo wax ka beddeli kara profile-ka macmiilka waxa uu beddeli karaa calaamadda, tunnel-ka la xaqiijiyayna kama dhigayo calaamadda mid awood leh. Gaadiidku wuxuu ilaaliyaa qiimaha inta uu socdo; maaha mid caddeeya sheegashada. Ogolaanshaha wali waxaa iska leh aqoonsiga la xaqiijiyay iyo diiwaan diiwaangelin oo serverku leeyahay, calaamaddana waxaa lala barbardhigaa diiwaankaas marka ay muhiim tahay.
Farqigaas ayaa go'aaminaya halka calaamadda loo isticmaali karo. Isticmaal wanaagsan waa in fadhi lagu hagayo faylka loolka saxda ah, in koox bandhig laga doorto dashboard, ama in fadhi taageero la calaamadeeyo si qof u helo mar dambe. Isticmaal xun waa in qalab la geliyo subnet, in la doorto siyaasadda firewall, ama in la go'aamiyo xogta macmiilkee fadhigu akhriyi karo.
Qiimaha xaqiiji ka hor inta uusan gaarin waddo, weydiin ama amarka qolofka. Liiska fasaxa ee xargaha la filayo ayaa ku filan calaamadda deployment-ka, waxna ma kacdo. Marnaba ha gelin xarig uu peer-ku bixiyay khadka amarka qolofka, oo xaddid wax kasta oo indha-indheyn ah oo la kaydiyay fadhiga, ma aha cinwaanka tunnel-ka ee macmiilka xiga dib u isticmaali doono.
case "${UV_DEPLOY:-}" in
field-support|field-qa|lab) : ;;
*) UV_DEPLOY=unknown ;;
esac
Si nadiif ah dib ugu noqo
Ka saarida sifada waa laba tirtirid iyo hal hubin. Ka saar sadarrada setenv iyo push-peer-info profile-ka macmiilka, ka dibna ka saar ama jooji hook-ka iyo bartarget-kiisa loolka ee serverka.
grep -rn 'UV_DEPLOY\|push-peer-info' /etc/openvpn/
tail -n 3 /var/log/openvpn/deploy-labels.log
Ka dib dib u xidh hal macmiil oo xaqiiji in sadarka loolka uu joogsaday inuu muuqdo. Hook-ka sii socda kadib isbeddelka profile-ka badanaa waa profile labaad oo wali lagu deploy-garay qalab tijaabo, oo hadda helitaankiisu ka jaban yahay helitaanka inta lagu jiro xisaabtanka.
Waxa hadha dhamaadka waa qayb yar oo xaddidan oo metadata fadhi ah oo asalkiisu diiwaangashan yahay: macmiilku wuu sheeganayaa, serverku wuu diiwaangelinayaa, waxna ku saabsan gelitaanka kama tiirsana. Kani waa nuqulka faa'iidada leh ee sifada, oo uma baahna aqoonsi cusub inuu halkaas gaaro.