Bir hostda iki müştəri əlavə bir server bloku və ikinci port kimi görünür. Müştərinin həqiqətən sahib olduğu hər şeyi sadaladıqdan sonra bu tamam başqa bir layihəyə çevrilir: dinləyici, tunel hovuzu, kimlik, etimad faylları, marşrutlar və ləğv cədvəli. Bunlardan birini atlasanız, ikinci müştəri səssizcə birincinin bir hissəsini miras alır. Hər müştəri üçün kart yaradın və ilk müştəri qoşulmadan əvvəl onu doldurun.

Hər müştəri üçün tam resurs kartı təyin edin

Bütün dəsti birlikdə ayırın: ictimai port, tunel alt şəbəkəsi, konfiqurasiya yolu, jurnal təyinatı, xidmət nüsxəsinin adı və cihaz. Onları qrup kimi adlandırmaq, işlək faylın hələ də birinci müştərinin hovuzunu və ya interfeysini ehtiva edən klassik kopyasının qarşısını alan şeydir. Dəyərlər nümunədir, ayrılmış portlar deyil, ona görə hostun artıq nə istifadə etdiyini yoxlayın. Başlayan xidmət tam olan müştəri ilə eyni şey deyil.

Kartı konfiqurasiyanın yanında saxlayın və hər dəyər dəyişdikdə yeniləyin. Reallıqdan uzaqlaşan sənədləşmə heç olmamasından pisdir.

Etimad materialını hər müştərinin içində saxlayın

Hər müştəri üçün ayrı emissiya orqanı sərhədi əsaslandırmağı asanlaşdırır və imzalama açarını internetə açıq hostdan uzaq tutur. Ümumi kök də işləyə bilər, lakin ortaq anker iki xidməti bir üzvlük domeninə çevirmir. Hər dinləyicinin hansı zəncirləri qəbul etdiyini və hansı müştəri kimliklərinə icazə verdiyini qərar verin, sonra ikisini də yazın. Nə isə qoşulana qədər sertifikatları sınaq və səhv yolu ilə zəncirdən çıxarmayın.

Serverin öz şəxsi açarı hər müştəri üçün qorunan faylda olmalıdır, konfiqurasiya ilə birlikdə replikasiya olunan şablon qovluğunda deyil.

Prosesləri olduğu kimi şəbəkələri də ayırın

İki portda iki proses onları ayırmasanız yenə də bir hostu və marşrut cədvəlini paylaşır. Dizayna güvənməzdən əvvəl nəyin dinlədiyini təsdiqləyin.

ss -lunp | grep -E '1194|1195'
openssl verify -CAfile customer-a/ca.crt customer-a/client.pem

Dinləyici yoxlaması hər ictimai portun hansı prosesə aid olduğunu göstərir, yoxlama isə müştəri sertifikatının nəzərdə tutulan ankerə zəncirlənib-zəncirlənmədiyini göstərir. Heç bir çıxış A müştərisinin B alt şəbəkəsinə çata bilmədiyini sübut etmir, ona görə mənbə və təyinat siyasətini, geri marşrutları və qəsdən paylaşılan xidməti müəyyənləşdirin. Şəbəkə ad fəzaları və ya konteynerlər marşrutlaşdırma kontekstlərini ayırır və təsadüfi qarışmanı azaldır, lakin tək başına bunlar tam kirayəçi sərhədi deyil. Təhdid modeli tələb etdikdə daha güclü təcrid mexanizmi seçin.

Ləğvi təhvildən əvvəl çatdırın

Sertifikat yerləşdirməsi ləğvin çatdırılma yolu olana qədər natamamdır. Onboardingin bir hissəsi olaraq CRL-nin emissiyaçısını və etibarlılıq pəncərəsini yoxlayın.

openssl crl -in customer-a/crl.pem -noout -lastupdate -nextupdate
systemctl status openvpn@customer-a

CRL yoxlaması siyahının nə vaxt verildiyini və nə vaxt bitdiyini bildirir, xidmət statusu isə onu oxuyan nüsxənin işlədiyini təsdiqləyir. Yeni heç nə ləğv edilməsə də siyahını emissiya siyasətinin cədvəlinə uyğun yeniləyin, çünki vaxtı keçmiş CRL hər müştəridən imtina edə bilər. Oxucuların qismən yazı ilə qarşılaşmasına imkan vermək əvəzinə tam faylı irəli çəkin və yerləşdirmədən əvvəl imzanı doğrulayın. Emissiyanın, son nöqtə əməliyyatının və istismardan çıxarmanın kimə aid olduğunu qeyd edin ki, A müştərisinin söndürülməsi B-ni pozmasın.

Sonra qəbul cütünü işə salın: icazəli müştəri öz xidmətinə çatır, A etimadnaməsi isə B-nin dinləyicisi tərəfindən rədd edilir. Bu, sərhədin test kimi ifadəsidir.

Əlaqəli məqalələr