macOS-də OpenConnect: paket, buraxılış arxivi və ya git klonu
Homebrew binar fayl və şəbəkə skripti verir; mənbə ağacı isə onları yaratmadıqca heç birini vermir. Bağlantınızın hansını işlətdiyini bilin.
Mac-də OpenConnect müştərisini əldə etməyin üç yolu var və onlar diskdə fərqli şeylər qoyurlar. Homebrew formulu kompilyasiya edilmiş binar fayl və marşrutlarla DNS-i tənzimləyən şəbəkə skripti quraşdırır. Buraxılış arxivi yaradılmış qurma sistemi ilə mənbə kodu verir. git yoxlaması isə qurma sistemi olmadan mənbə kodu verir. Səhv olanı seçmək insanların dərsin bir neçə dəqiqəsində itkin configure ilə qarşılaşmasının səbəbidir.
Eyni ad altında iki fərqli maşın
Paket yolu tək bir əmrdir və işi inkişaf etdirmək deyil, qoşulmaq olan hər kəs üçün düzgün standart seçimdir.
brew install openconnect
Quraşdırdığı şey əmrin özündən daha vacibdir. Müştəri binar faylını alırsınız, həm də müştərinin interfeysi, marşrutları və həlledicini proqramlaşdırmaq üçün çağırdığı vpnc-script-i alırsınız. İkisi cüt işləyir: binar fayl TLS sessiyasını bitirir və yaranan interfeysi skriptə verir; skript isə bu əməliyyat sisteminin şəbəkəsini necə dəyişmək istədiyini bilən hissədir.
Bu bölünmə çaşdırıcı hesabatların bütün bir sinfini izah edir. Qoşulan, uğur bildirən və sonra trafiki səhv yola göndərən müştəri adətən tunel deyil, skript problemidir və formulu yenidən quraşdırmaq onu yalnız skript də yenidən quraşdırıldığı üçün düzəldir. Planlaşdırmadan əvvəl formulun cari macOS və prosessor arxitekturası dəstəyini yoxlayın; qabığı mükəmməl işlədən Mac üçün hələ də cari paket qurulmamış ola bilər.
Mənbə yolu həqiqətən nə edir
Buraxılış arxivi yaradılmış qurma sistemi ilə gəlir, buna görə tanış ./configure əvvəldən mövcuddur. git yoxlamasında isə yoxdur, çünki yaradılan fayllar layihənin saxladığı şeylər deyil, qurma məhsullarıdır. ./autogen.sh-in buraxılış arxivlərində deyil, yoxlamalar üçün təlimatlarda görünməsinin bütün səbəbi budur.
./autogen.sh
./configure
make
make install
Hər sətir konkret bir şey edir və hansının uğursuz olduğunu bilmək çox təxmini aradan qaldırır. autogen mərhələsi configure yaratmaq üçün autotools-u işlədir. configure mərhələsi müştərinin ehtiyac duyduğu kompilyatoru, kitabxanaları və başlıqları yoxlayır, sonra tapdıqlarını əks etdirən makefile-ları yazır. make mərhələsi kompilyasiya edir. install mərhələsi nəticələri yolunuzda bir yerə kopyalayır.
Məsləhətin adətən səhvə düşdüyü yer o son sətirdir. Quraşdırma qurmanın işlədiyinin sübutu deyil və onu ixtiyari yükləmə qovluğunda yüksəldilmiş imtiyazlarla işlətmək sonra xatırlamayacağınız faylları səpələməyin yaxşı yoludur. configure itkin kitabxana səbəbindən uğursuz olarsa, faydalı çıxış logun son iyirmi sətri deyil, çap etdiyi ilk xətadır.
Sessiya ilə şəbəkə konfiqurasiyası ayrıdır
Bu fərq bağlantının həqiqətən trafik daşıyıb-daşımadığını həll edir. TLS sessiyasının qurulması sizə müştəri tərəfində interfeys verir. Marşrutların, ünvanların və DNS həlledicilərinin tətbiqi şəbəkə skripti vasitəsilə yerinə yetirilən ikinci addımdır və skript olmadan binar fayl istehsal edən qurmanın yalnız yarım müştərisi var.
Eyni ayrılıq eyni müştəriləri olan iki maşının niyə fərqli davrandığını izah edir: skript sistemin şəbəkə konfiqurasiyasına baxır və bu konfiqurasiyaya marşrut iddia edən hər şey daxildir. Bölünmüş tunel trafiki gözlənilməz yerə göndərdikdə tunel öz işini görür və araşdırılmalı olan şey marşrut qərarıdır.
Beləliklə, sazlama zamanı hansı qatın uğursuz olduğunu soruşun. Heç qurulmayan sessiya protokol, sertifikat və ya etimad məlumatlarıdır. Qurulan və heç nə ötürməyən sessiya interfeys və skriptdir. Bir şəbəkədən işləyib digərindən işləməyən quraşdırılmış müştəri əlçatanlıqdır və bunu heç bir miqdarda yenidən qurma dəyişmir.
Hansı binar faylı işlətdiyinizi bilin
Əl ilə quraşdırılmış qurma və paketlənmiş binar fayl rahat şəkildə birgə mövcud ola bilər və hansının işləməsi niyyətlərinizdən deyil, yolunuzdan asılıdır. Kiməsə versiya nömrəsi bildirməzdən əvvəl bunu öyrənin.
which -a openconnect
openconnect --version
brew list --versions openconnect
Birinci əmr qabığınızın görə bildiyi hər nüsxəni, onları sınayacağı sıra ilə sadalayır. İkinci əmr hansının cavab verdiyini bildirir. Bunlar gözlədiyinizlə ziddiyyət təşkil edəndə köhnə bir təcrübədən qalan qurmanı işlədirsiniz və heç bir konfiqurasiya dəyişikliyi onu yerindən tərpətməyəcək.
Müştəri quraşdırmaq şlüz təsdiqi deyil
İşləyən binar fayl yerləşdirməni uyğun etmir. Şlüzün protokolunu, autentifikasiya axınını və idarə olunan cihaz tələbini ona sahib olan insanlarla təsdiqləyin, çünki bunlar qurmanın təmin edə bilmədiyi siyasət və tətbiq qatı faktlarıdır.
Layihənin qurma təlimatları autotools ardıcıllığını və şəbəkə skripti tələbini daha ətraflı əhatə edir və macOS buraxılışınızdan əvvəl yazılmış blog yazısı deyil, izlənilməli istinaddırlar. Məqsəd sadəcə qoşulmaqdırsa, paketi götürün, skripti saxlayın və kompilyatoru işin içinə qatmayın.