Гарцууд гэрчилгээг сольдог бөгөөд өчигдөр холбогдож байсан клиент эхний TLS солилцоонд зогсож эхэлдэг. Мессеж сүлжээний алдаа биш, баталгаажуулалтын шалтгааныг нэрлэдэг бөгөөд машин өөрөө өөрчлөгдөөгүй нь ашигтай сэжүүр юм. Эвдэрсэн зүйл бол одоо танилцуулж буй гэрчилгээ болон клиентийн харгалзан үзэхэд бэлэн үндсүүдийн хоорондын харилцаа юм. Үүнийг засах нь итгэлцлийн шийдвэр тул сонголт бичихээс өмнө тэр шийдвэрийг гарга.

Итгэлцлийн ямар ч тохиргоог өөрчлөхөөс өмнө алдааг уншаарай

Гарын үсэг зурагч байхгүй төрлийн алдаа нь хэлхээ клиентийн хүлээн зөвшөөрөхгүй зүйлээр төгсдөг гэсэн үг. Энэ нь дотоод байгууллагын шинэчилсэн гэрчилгээ, нийтийн байгууллагын орлуулалт эсвэл дунд байгаа төхөөрөмж өөрийн гэрчилгээг танилцуулж байж болно. Зөвхөн үг хэллэг нь тэдгээр тохиолдлыг ялгаж чадахгүй, тиймээс шийдэхээс өмнө гаргагчийг хараарай.

Холболтыг нэг удаа урд талд ажиллуулаад бүтэлгүйтэхэд орхи, учир нь интерактив гаралт серверийн нэр, гаргагчийн хэлхээ болон клиентийн тооцоолсон хурууны хээг агуулдаг. Тэр гаргагчийг танай байгууллага үнэхээр ажиллуулдаг байгууллагатай харьцуул. Хэрэв хурууны хээ өөрчлөгдөж, гаргагч өөрчлөгдөөгүй бол та аль хэдийн итгэдэг сувгаар шинэчлэлт баталгаажих хүртэл үүнийг сэжигтэй гэж үз. Энэ мөчид таамаглах нь хүн эцэст нь дунд оролцогчийн түлхүүрийг бэхлэх зам юм.

Клиентийн хувилбарыг мөн тэмдэглэлд бич. Итгэлцлийн асуудал мэт харагдах алдааны ихэнх нь хуучин клиент шинэ гарцын солилцоотой тулгарах үед гардаг.

Гаргагчид итгэх болон нэг түлхүүрийг бэхлэхийн хооронд сонго

Хоёр сонголт холболтыг амжилттай болгоно. Тэд дараа нь эсрэг аргаар эвдэрдэг тул сонголт нь таны тэвчиж чадах алдаанд хамаарна.

ApproachGood fitWhat breaks it
Trust the issuing CA with --cafileInternal PKI you can obtain over an already trusted channelCA rotation, or a client that still falls back to public roots
Pin one key with --servercertNo CA relationship, or exactly one key should ever be acceptedAny reissue that generates a new key pair

Гэрчилгээ нь таны бие даан шалгаж чадах байгууллагаас ирсэн бол CA файлд хандаарай, учир нь шинэчлэлтүүд клиентийн аргументуудад хүрэлгүйгээр үргэлжлүүлэн ажиллана. Үүнийг системийн үндсийг идэвхгүй болгодог унтраалгатай хослуулаарай, эс тэгвээс нийтийн байгууллага таны өмнөөс шалгалтыг хангаж чадна. Үүний оронд гарцад авах боломжтой CA байхгүй эсвэл зорилго нь аль болох нарийн үл хамаарах зүйл бол бэхлээрэй. Аль ч зам хийсвэрээр илүү аюулгүй биш: CA шинэчлэлтүүдээр дамжин өргөждөг, бэхлэлтийг хянахад хялбар.

Аль нэгийг сонгосон ч итгэмжлэгдсэн утга нь өөрчлөлт болохоос өмнө итгэж байсан сувгаар ирэх ёстой. Администратор, гарц дээрх консолын сесс, эсвэл урьдчилан авсан хуулбар бүгд тохирно. Програмд харуулж буй ямар ч хурууны хээг хуулах нь тохиромжтой бөгөөд дунд оролцогчийн яг хүлээж байгаа зүйл юм.

Утгыг таны үнэхээр ажиллуулдаг командад тавь

Бэхлэлт нь серверийн гэрчилгээний сонголтоор явдаг бөгөөд түүний угтвар кодчилолыг тодорхойлно: sha1 эсвэл sha256-ийн дор арван зургаатын нийтийн түлхүүрийн хураангуй, pin-sha256-ийн дор base64 түлхүүрийн бэхлэлт. Үүнийг өгөх нь тухайн ажиллагаанд системийн итгэлцлийг ч идэвхгүй болгодог тул бэхэлсэн түлхүүр бүх шийдвэр болно.

sudo openconnect --protocol=gp vpn.example.com --user alice \
  --servercert pin-sha256:AbCdEf...   # single key pin
sudo openconnect vpn.example.com --cafile /etc/ssl/internal-ca.pem --no-system-trust

Клиент тайрсан хураангуйг тааруулж, угтварын дараа дөрвөн тэмдэгтийг л хүлээн авдаг, энэ нь тав тух биш урхи юм. Богиносгосон утга локалд давж, зорьсон гарцыг танихгүй хэвээр байна. Мессежээс дахин бичихийн оронд клиентийн эхний оролдлогод хэвлэсэн бүтэн мөрийг хуул. Дараа нь бэлэн сонголтыг холболтыг ажиллуулдаг боох скрипт, unit файл эсвэл профайл руу зөө, ингэснээр итгэлцлийн шийдвэр хянагдахуйц, дараагийн өөрчлөлтүүд санаатай байна.

Ширээний эхлүүлэгч болон NetworkManager нэмэлт нь холболтын аргументуудын өөрийн хуулбарыг хадгалдаг. Диск дээр зассан скрипт өмнө нь импортолсон профайлд хүрдэггүй тул хадгалсан утга үргэлжлүүлэн ялдаг.

Өөрийгөө гадаа түгжихгүйгээр шилжилтийг зохицуул

Сонголтыг нэгээс олон удаа өгч болох тул төлөвлөсөн өөрчлөлт нь гарч буй болон орж буй түлхүүрүүдийг хамт хүлээн авч чадна. Гарц шилжихээс өмнө шинэ бэхлэлтийг нэм, сессүүд шилжих хооронд хоёуланг нь жагсаалтад барь, хуучин түлхүүр алга болсны дараа тэтгэвэрт гарсаныг нь хас. Тэр цонхонд эзэн хэрэгтэй, учир нь мартагдсан давхар бэхлэлт нь түлхүүрийг хэн ч хараа хяналгүй итгэмжлэгдсэн хэвээр үлдээдэг. Шинэ түлхүүрийн хос үүсгэдэг дахин бүтээлт цэвэр бэхлэлтийг эвддэг бөгөөд сэргээх нь эсрэг чиглэлийн ижил журам юм.

Өөрчлөлтийн огноог бэхлэлтийн хажууд бич. Хяналтын огноогүй бэхлэлт нь төөрөгдүүлсэн алдааны мессежтэй ирээдүйн тасалдал юм.

Итгэлцлийг засахаас өмнө клиентийн хувилбарыг хасаж үз

Хуучирсан клиент гарцын дараа өөрчилсөн нэвтрүүлэлтийн хариуг задлан шинжлэх үед бүтэлгүйтэж болох бөгөөд гадаргуугийн мессеж одоо ч задлагч биш холболтын тухай ярьдаг. Суулгасан хувилбарыг гарцын баримтжуулсантай харьцуулж, итгэлцлийн ямар ч тохиргоог өөрчлөхөөс өмнө одоогийн багцыг нэг удаагийн профайлд туршиж үз.

openconnect --version

Засварын дараа нэг биш хоёр зүйлийг шалга: портал туннелээр ачаалагдаж, энгийн дотоод хаяг хариулна. Дууссан гар барилт нь итгэлцлийн шийдвэр хүлээн зөвшөөрөгдсөнийг л нотолно.

Холбоотой нийтлэлүүд