રનબુક: બે OpenVPN ગ્રાહકોને અલગ રીતે ઓનબોર્ડ કરવા
એક OpenVPN હોસ્ટ પરના બે ગ્રાહકોને અલગ લિસનર, પૂલ, ટ્રસ્ટ ફાઇલો અને રિવોકેશન ડિલિવરીની જરૂર છે, સાથે સ્વીકૃતિ પરીક્ષણ જે તેમને અલગ રાખે છે.
એક હોસ્ટ પરના બે ગ્રાહકો એક વધુ સર્વર બ્લોક અને બીજા પોર્ટ જેવા લાગે છે. ગ્રાહક ખરેખર શું ધરાવે છે તે બધું સૂચિબદ્ધ કરો કે તરત જ તે એક અલગ પ્રોજેક્ટ બની જાય છે: લિસનર, ટનલ પૂલ, ઓળખ, ટ્રસ્ટ ફાઇલો, રૂટ્સ અને રિવોકેશન સમયપત્રક. આમાંથી એક પણ છોડી દો તો બીજો ગ્રાહક ચૂપચાપ પહેલાનો એક ટુકડો વારસામાં લે છે. દરેક ગ્રાહક માટે કાર્ડ બનાવો અને પહેલો ક્લાયન્ટ કનેક્ટ થાય તે પહેલાં તે ભરો.
દરેક ગ્રાહક માટે સંપૂર્ણ સંસાધન કાર્ડ સોંપો
આખો સમૂહ એકસાથે અનામત રાખો: જાહેર પોર્ટ, ટનલ સબનેટ, કન્ફિગરેશન પાથ, લોગ ગંતવ્ય, સેવા ઇન્સ્ટન્સનું નામ અને ઉપકરણ. તેમને જૂથ તરીકે નામ આપવું એ જ ક્લાસિક કોપીને અટકાવે છે જેમાં કાર્યરત ફાઇલ હજી પણ પહેલા ગ્રાહકનો પૂલ અથવા ઇન્ટરફેસ ધરાવે છે. મૂલ્યો ઉદાહરણો છે, અનામત પોર્ટ નથી, તેથી હોસ્ટ પહેલેથી શું વાપરે છે તે તપાસો. શરૂ થતી સેવા સંપૂર્ણ ગ્રાહક જેવી જ વસ્તુ નથી.
કાર્ડને કન્ફિગરેશનની બાજુમાં રાખો અને જ્યારે પણ મૂલ્ય બદલાય ત્યારે અપડેટ કરો. વાસ્તવિકતાથી દૂર જતું દસ્તાવેજીકરણ કરતાં વધુ ખરાબ છે.
ટ્રસ્ટ સામગ્રી દરેક ગ્રાહકની અંદર રાખો
દરેક ગ્રાહક માટે અલગ ઇશ્યુઅંગ ઓથોરિટી સીમાને સમજવી સહેલી બનાવે છે અને સાઇનિંગ કીને ઇન્ટરનેટ સામે ખુલ્લા હોસ્ટની બહાર રાખે છે. વિભાજિત રૂટ પણ કામ કરી શકે છે, પરંતુ સામાન્ય એન્કર બે સેવાઓને એક સભ્યપદ ડોમેન બનાવતું નથી. નક્કી કરો કે દરેક લિસનર કઈ ચેઇન સ્વીકારે છે અને કઈ ક્લાયન્ટ ઓળખને અધિકૃત કરે છે, પછી બંને લખો. કંઈક કનેક્ટ થાય ત્યાં સુધી અજમાયશ અને ભૂલ દ્વારા ચેઇનમાંથી પ્રમાણપત્રો ઉતારશો નહીં.
સર્વરની પોતાની ખાનગી કી દરેક ગ્રાહક માટે સુરક્ષિત ફાઇલમાં હોવી જોઈએ, કન્ફિગરેશન સાથે નકલ થતી ટેમ્પલેટ ડિરેક્ટરીમાં નહીં.
પ્રક્રિયાઓની જેમ નેટવર્કને પણ અલગ કરો
બે પોર્ટ પરની બે પ્રક્રિયાઓ અલગ ન કરો ત્યાં સુધી હજી પણ એક હોસ્ટ અને રૂટિંગ ટેબલ શેર કરે છે. ડિઝાઇન પર ભરોસો કરતા પહેલાં શું સાંભળી રહ્યું છે તેની ખાતરી કરો.
ss -lunp | grep -E '1194|1195'
openssl verify -CAfile customer-a/ca.crt customer-a/client.pemલિસનર તપાસ દર્શાવે છે કે કઈ પ્રક્રિયા કયા જાહેર પોર્ટની માલિક છે, અને ચકાસણી દર્શાવે છે કે ક્લાયન્ટ પ્રમાણપત્ર ઇચ્છિત એન્કર સાથે ચેઇન થાય છે કે નહીં. કોઈ પણ આઉટપુટ સાબિત કરતું નથી કે A નો ક્લાયન્ટ B ના સબનેટ સુધી પહોંચી શકતો નથી, તેથી સ્રોત અને ગંતવ્ય નીતિ, પરત રૂટ્સ અને ઇરાદાપૂર્વક શેર કરેલી કોઈપણ સેવા વ્યાખ્યાયિત કરો. નેટવર્ક નેમસ્પેસ અથવા કન્ટેનર રૂટિંગ સંદર્ભોને અલગ કરે છે અને આકસ્મિક ભળવું ઘટાડે છે, પરંતુ તે સંપૂર્ણ ટેનન્ટ સીમા નથી પોતાના બળે. જ્યારે ખતરાનું મોડેલ માંગે ત્યારે વધુ મજબૂત અલગીકરણ પદ્ધતિ પસંદ કરો.
હસ્તાંતરણ પહેલાં રિવોકેશન પહોંચાડો
રિવોકેશનનો ડિલિવરી પાથ ન હોય ત્યાં સુધી પ્રમાણપત્ર જમાવટ અધૂરી છે. ઓનબોર્ડિંગના ભાગ રૂપે CRL ના ઇશ્યુઅર અને માન્યતા વિન્ડોને ચકાસો.
openssl crl -in customer-a/crl.pem -noout -lastupdate -nextupdate
systemctl status openvpn@customer-aCRL નિરીક્ષણ જણાવે છે કે યાદી ક્યારે જારી થઈ અને ક્યારે સમાપ્ત થાય છે, અને સેવા સ્થિતિ પુષ્ટિ કરે છે કે તેને વાંચતું ઇન્સ્ટન્સ ચાલી રહ્યું છે. નવું કંઈ રદ ન થયું હોય તો પણ ઇશ્યુ નીતિના સમયપત્રક મુજબ યાદી તાજી કરો, કારણ કે સમાપ્ત CRL દરેક ક્લાયન્ટને નકારી શકે છે. વાચકોને આંશિક લેખનનો સામનો કરાવવાને બદલે સંપૂર્ણ ફાઇલ પ્રકાશિત કરો, અને જમાવટ પહેલાં સહીની માન્યતા ચકાસો. કોની પાસે ઇશ્યુ, એન્ડપોઇન્ટ સંચાલન અને નિવૃત્તિ છે તે નોંધો, જેથી ગ્રાહક A બંધ કરવાથી B ખલેલ ન પામે.
પછી સ્વીકૃતિ જોડી ચલાવો: મંજૂર ક્લાયન્ટ પોતાની સેવા સુધી પહોંચે છે, અને A નું ક્રેડેન્શિયલ B ના લિસનર દ્વારા નકારવામાં આવે છે. તે જ સીમા છે, પરીક્ષણ તરીકે વ્યક્ત.