Bayanin vpnc ɗaya yana sake haɗawa cikin tsafta bayan yawo; uku daga cikinsu suna lalata soket, hanyoyi da yanayin mai warwarewa na juna bi-da-bi. Rubutun sake haɗawa da ke cikin fakitin an rubuta shi don rami ɗaya, don haka yana sake kunna kowane bayani duk lokacin da ɗayansu ya faɗi. Gyara hakan na buƙatar abubuwa uku: tashoshin gida daban, gwajin da ke gwada ainihin sabis ga kowane bayani, da sarkar da aka tsara wadda ba ta taɓa gudanar da haɗi biyu a lokaci ɗaya.

Ba kowane bayani tasharsa ta gida

Bayanin vpnc da aka bar a tashar gida ta asali yana fafatawa da bayanin da ke aiki tuni. Haɗi na biyu yana kasawa yayin da na farko ke riƙe tashar, kuma layin log ɗin yana kama da matsalar ƙofa maimakon rikici na gida. A maimakon haka saka layi ɗaya ga kowane fayil ɗin bayani:

Local Port 0

Sifili yana barin kernel ya zaɓi tasha ta wucin gadi, don haka ana iya kafa bayanai biyu a lokaci ɗaya. Suna kowane fayil bisa ƙofar da rukunin da yake yi wa hidima, riƙe shi mai iya karantawa ga root kaɗai, kuma haɗa koyaushe da bayanin da ya dace maimakon wani asali da aka raba. Fayil ɗin asali da aka raba shine hanyar da rubutu ke sake haɗa ramin da bai dace ba bayan wani ya canza sunan bayani.

Fayilolin bayani suna ɗauke da shaidar shiga, don haka izini wani ɓangare ne na ƙira ba na aikin gida ba. Fayil da kowa zai iya karantawa a ƙarƙashin /etc/vpnc yana ba da sirrin rukuni ga kowane mai amfani na gida. Riƙe yanayin a 0600 tare da root a matsayin mai shi, kuma bar rubuce-rubucen su karanta fayil ɗin a matsayin root maimakon kwafin sirri cikin muhawara. Shi ya sa kuma rubutun gwaji bai kamata ya taɓa buga abin da ke cikin fayil ɗin cikin log ba.

Gwada sabis ɗaya ga kowane bayani, ba adireshin ramin ba

Buƙatar amsa ga adireshin ramin da kansa tana tabbatar da cewa muƙunƙun yana wanzu galibi. Ba ta ce komai game da ko mai masaukin da ke bayansa zai iya isa ga manhajar da ke tabbatar da ramin ba. Muƙunƙun zai iya kasancewa a sama yayin da hanyar da ke bayansa ta riga ta tafi.

Gwada sabis ɗaya ga kowane bayani da ɗan gajeren lokacin TCP, kuma sake haɗa bayanin da gwajinsa ya kasa kawai. Daƙiƙa biyu ne ke raba hanyar matacciya daga wadda take jinkiri, kuma gwajin TCP bai dogara da an ba da izinin ICMP a wani wuri a hanya ba. Canza manufa da sunan tsarin kawai tsakanin bayanai:

#!/bin/bash
set -eu
if ! nc -z -w 2 10.63.7.20 8443; then
  /usr/sbin/vpnc-connect ops.conf
fi

Ajiye wannan a matsayin /usr/local/bin/ensure-vpn-ops.sh, mai da shi mai iya aiwatarwa, kuma maimaita ga kowane bayani tare da canza manufar gwaji da sunan tsarin kawai. Gwajin da ke amsa tambayar yarjejeniya yana tsira daga ƙofofin da ke zubar da amsa yayin da suke ci gaba da tura sabis ɗin da masu amfani suka damu da su.

Haɗa gwaje-gwajen cikin sarka don kada su taɓa yin tsere

Rubutun sake haɗawa na fakitin zai iya kiran gwaje-gwajenka a jere, kuma jeri shine dukkan maganar. Kiran vpnc-connect guda biyu da ke gudana tare suna sake rubuta teburin tafiyar da hanya cikin tsarin da babu wanda ke sarrafa shi, kuma haka ne bayani mai lafiya ke rasa hanyarsa.

Riƙe kiran a gaba, ƙara ɗan jinkirin daidaitawa ga muƙunƙunin da ke ƙasa, kuma tsara sarkar daga teburin cron na root, tunda root kaɗai zai iya sake rubuta hanyoyin ramin:

#!/bin/bash
sleep 20
/usr/local/bin/ensure-vpn-ops.sh
/usr/local/bin/ensure-vpn-lab.sh

Riƙe jeri ɗaya tsakanin rubutun tashi da shigarwar cron, tunda sarkar da ke gudana cikin wani jeri a lokacin tashi ita ce wata manhaja ta daban a zahiri. Lokacin da bayani ɗaya ya dogara da hanyoyin wani, saka dogaro a farko kuma bar gwajin na baya ya kasa ba tare da lahani ba yayin da ramin farko yake hawa har yanzu.

Kula da log ɗin, sannan ka karya ɗaya da gangan

Yi log layi ɗaya ga kowane gudu tare da bayanin, manufar gwaji, sakamako da matakin da aka ɗauka. Idan babu shi, ramin da ke rawa kowane minti yana kama da wanda bai taɓa faɗuwa ba, kuma kuskuren gwaji ba za a iya bambanta shi da katsewar ƙofa ba. Log ɗin yana kuma tabbatar da cewa sarkar ta taɓa bayanin da ya kasa kawai. Rubuta shi a wani wuri da zai tsira daga sake kunnawa, in ba haka ba shaidar tana tafiya tare da aikin.

Sannan ka karya rami da gangan ka ga abin da zai faru. Dakatar da bayani ɗaya ka tabbatar da waɗanne matakai da hanyoyi suke nan har yanzu:

pgrep -a vpnc
ip -4 route show | grep -E '10[.]63|10[.]90'
tail -n 5 /var/log/ensure-vpn.log

Bayanin da aka dakatar kawai ya kamata a sake haɗawa, kuma sauran zama ya kamata su riƙe duka matakansu da hanyoyinsu. Idan bayanai biyu suka sake kunnawa, sarkar taka tana gudana a layi ɗaya a wani wuri da ba ka yi tsammani ba.

Abin da mai tsaro bai kamata ya yi ba

Mai tsaron da ke sake kunna komai duk lokacin da wani abu ya kasa yana kama da lafiya a lokacin gwaji kuma yana haifar da katsewa a taga gyare-gyare. Sake kunna kowane bayani, ba a duniya baki ɗaya ba.

Fi son abokin ciniki da ake kula da shi lokacin da ƙofar ke bayar da ɗaya don irin wannan yarjejeniya, kuma kada ka taɓa saka kalmar sirri a cikin rubutu ko ka wuce ta a layin umarni, domin fayil ɗin bayani ya riga ya riƙe sirrin. Idan aiki dole ya gudana a matsayin talaka bayan ramin ya tashi, rage gata daga cikin rubutun maimakon sanya dukan sarkar ta gudana a ƙarƙashin wancan asusun. A ƙarshe, sake karanta hanyoyin bayan sake haɗawa, domin bayani zai iya dawowa da wani adireshin da aka keɓe daban kuma ya bar tsohuwar hanya wadda babu wata gwajin da aka nufa ga adireshin ramin da zai taɓa lura da ita.

Labarai masu alaƙa