strongSwan send_cert: IKE प्रमाणपत्र कहिले पठाइन्छ
send_cert ले peer ले आफ्नो प्रमाणपत्र पठाउँछ कि पठाउँदैन भनी निर्धारण गर्छ, जबकि send_certreq ले अर्को पक्षबाट त्यो माग्छ। प्राप्तकर्ताको विश्वास बदल्नु अघि लगहरू जाँच्नुहोस्।
गेटवेहरूले प्रमाणपत्रसँग सम्बन्धित प्रमाणीकरण असफलताहरू लग गर्छन्, र पहिलो प्रतिक्रिया प्राप्तकर्तामा अर्को CA थप्ने हुन्छ। यसले प्रमाणपत्र पुग्यो र अस्वीकार भयो भन्ने मान्छ। अर्को सम्भावना यो हो कि त्यो कहिल्यै पठाइएन, र यो पठाउनेको जडान नीतिले निर्धारण गर्छ। विश्वास बदल्नु अघि दुईमध्ये के भयो भनी पहिचान गर्नुहोस्।
send_cert ले वास्तवमा के नियन्त्रण गर्छ
प्रमाणपत्रद्वारा प्रमाणीकरणका लागि peer को अन्तिम-इकाइ प्रमाणपत्र IKE आदानप्रदान वा पूर्व तयारीमार्फत अर्को पक्षमा पुग्नु आवश्यक छ। swanctl मा जडान सेटिङ send_cert ले यो अन्तिम बिन्दुले आफ्नो प्रमाणपत्र पेलोड समावेश गर्छ कि गर्दैन निर्धारण गर्छ: कहिल्यै, सधैं वा ifasked। पूर्वनिर्धारित ifasked ले यसलाई peer बाट आएको प्रमाणपत्र अनुरोधको जवाफमा पठाउँछ। प्रमाणपत्र माग्नु छुट्टै सेटिङ हो, किनकि अर्को पक्षबाट उसको प्रमाणपत्र माग्नु आफ्नो प्रस्ताव गर्नुसँग उस्तै होइन।
पुराना ipsec.conf तैनाथीहरूले leftsendcert र rightsendcert प्रयोग गर्थे, र ती नामहरू स्थानीय र टाढाका भूमिकासँग मेल खान्छन्, सिधै swanctl सँग होइन।
जडान बदल्नु अघि एउटा प्रयास पढ्नुहोस्
एउटा नियन्त्रित प्रयासका आधारमा निदान गर्नुहोस्, प्रमाणपत्रहरू संलग्न छन् भन्ने सामान्य धारणाका आधारमा होइन। नीति र सक्रिय सम्बन्ध दुवै जाँच्न सकिन्छ।
swanctl --list-conns
swanctl --list-sas
journalctl -u strongswan --since "10 min ago" | grep -iE "cert|CERT"
जडान सूचीले कन्फिगर गरिएको send_cert मान देखाउँछ, र SA सूचीले कुन जडानहरू साँच्चै खडा भए देखाउँछ। लगले वार्ताका विवरण थप्छ: प्रमाणपत्र अनुरोध प्राप्त भयो कि भएन र प्रमाणपत्र पेलोड बाहिर गयो कि गएन। सामान्य प्रमाणीकरण असफलताले डेलिभरी समस्या देखाउँदैन, त्यसैले कुनै निष्कर्ष निकाल्नु अघि विशिष्ट आदानप्रदान खोज्नुहोस्। प्रयासको टाइमस्ट्याम्प नोट गर्नुहोस् ताकि लग विन्डोले पूरै ह्यान्डसेक समेटोस्।
प्राप्तकर्ताको विश्वास छुट्टै निर्णय हो
डेलिभरी र विश्वास फरक गुण हुन्, र एउटा सुधार्दा अर्को सुधारिँदैन। प्राप्तकर्तासँग इच्छित विश्वास एङ्कर हुनुपर्छ, उपयोगी शृंखला प्राप्त हुनुपर्छ र अपेक्षित peer पहिचानसँग मेल खानुपर्छ। आफ्नो मध्यस्थ प्रमाणपत्रबिना आउने अन्तिम-इकाइ प्रमाणपत्र कडा शृंखला जाँचमा अझै असफल हुन्छ। यसको विपरीत, CA स्थापना गर्नुले peer लाई आफ्नो प्रमाणपत्र पठाउन पटक्कै बाध्य पार्दैन।
openssl x509 -in peer-chain.pem -noout -subject -issuer -dates
जाँचले कुन जारीकर्ताले प्रमाणपत्रमा हस्ताक्षर गर्यो र कहिले सकिन्छ देखाउँछ, र प्राप्तकर्ताको एङ्कर त्यससँग मेल खानुपर्छ। तैनाथीको स्वामित्वमा रहेको जारीकर्ता CA मा भरोसा गर्नुहोस्, शृंखलाको हरेक मध्यस्थ प्रमाणपत्रमा होइन, किनकि हरेक मध्यस्थलाई जरासम्म उचाल्दा विश्वास एक peer भन्दा धेरै फराकिलो हुन्छ। पहिचान प्रमाणीकरण सक्रिय राख्नुहोस्, किनकि केवल प्रमाणीकरण बन्द गरेर सफल हुने जडान सुधार होइन। जहाँ शृंखला अपूर्ण छ, त्यहाँ तयारी सुधार्नुहोस्, पठाउनेको नीति होइन।
पठाउनेलाई केवल प्रमाणसहित बदल्नुहोस्
जब लगले प्रमाणपत्र कहिल्यै पठाइएन र प्राप्तकर्ताले साँच्चै माग्यो देखाउँछ, send_cert लाई always मा राख्नु त्यो जडानका लागि उचित परिवर्तन हो। यसलाई swanctl कन्फिगरेसनमा लागू गर्नुहोस्, जडानहरू पुनः लोड गर्नुहोस् र विद्यमान SA पुनः प्रयोग गर्नुको सट्टा नयाँ सत्र स्थापना गर्नुहोस्। प्रमाणपत्र पेलोड अब देखिन्छ र प्राप्तकर्ताले यसलाई इच्छित एङ्करसामु स्वीकार्छ भनी पुष्टि गर्नुहोस्। केही पनि नबदलिएमा, गल्ती विश्वासको पक्षमा थियो र पठाउनेको सेटिङ कारण थिएन।
देखिएको आदानप्रदान, एङ्कर र त्यसबाट प्राप्त प्रमाणीकरण परिवर्तन अभिलेखमा लेख्नुहोस्। यी शब्दावलीमा वर्णन गर्न नसकिने प्रमाणपत्र सुधार संयोग हो।