macOS жүйесіндегі OpenConnect: пакет, шығарылым архиві немесе git клоны
Homebrew екілік файл мен желілік скрипт орнатады; бастапқы код ағашы оларды жасап, іске қосқанға дейін ешқайсысын бермейді. Қосылымыңыз қайсысын пайдаланатынын біліңіз.
Mac жүйесінде OpenConnect клиентін алудың үш жолы бар және олар дискіде әртүрлі нәрсе қалдырады. Homebrew формуласы компиляцияланған екілік файл мен маршруттарды және DNS-ті реттейтін желілік скриптті орнатады. Шығарылым архиві сізге генерацияланған құрастыру жүйесімен бастапқы код береді. git көшірмесі онысыз бастапқы код береді. Дұрыс емесін таңдау адамдардың оқулық басталғаннан кейін бірнеше минуттан соң жоқ configure-ға тап болуының себебі.
Бір ат астындағы екі түрлі машина
Пакет жолы бір команда және жұмысы құру емес, қосылу болып табылатындар үшін дұрыс әдепкі.
brew install openconnect
Ол не орнататыны командадан маңыздырақ. Клиенттің екілік файлын аласыз, сондай-ақ интерфейсті, маршруттарды және шешушіні бағдарламалау үшін клиент шақыратын vpnc-script-ті аласыз. Екеуі жұп болып жұмыс істейді: екілік файл TLS сессиясын аяқтап, пайда болған интерфейсті скриптке береді, ал скрипт бұл операциялық жүйенің өз желісін қалай өзгерткісі келетінін білетін бөлік.
Бұл бөліну шатастыратын есептердің тұтас класын түсіндіреді. Қосылып, сәттілік туралы хабарлап, содан кейін трафикті қате жолмен жіберетін клиент әдетте туннель емес, скрипт мәселесіне тап болады, ал формуланы қайта орнату оны тек скрипт те қайта орнатылатындықтан түзетеді. Формуланың ағымдағы macOS және процессор архитектурасын қолдауын оған жоспар құрудан бұрын тексеріңіз; қабықты мінсіз іске қосатын Mac-те әлі де ол үшін құрастырылған ағымдағы пакет болмауы мүмкін.
Бастапқы код жолы шын мәнінде не істейді
Шығарылым архиві генерацияланған құрастыру жүйесімен келеді, сондықтан таныс ./configure басынан-ақ бар. git көшірмесінде жоқ, өйткені генерацияланған файлдар құрастыру өнімдері, ал жоба сақтайтын нәрселер емес. ./autogen.sh-тің шығарылым архивтерінде емес, көшірмелер нұсқаулығында көрінуінің бүкіл себебі осы.
./autogen.sh
./configure
make
make install
Әр жол белгілі бір нәрсе жасайды, ал қайсысы құлағанын білу көп болжамды үнемдейді. autogen қадамы configure өндіру үшін autotools-ты іске қосады. configure қадамы клиентке қажет компиляторды, кітапханаларды және тақырыптарды тексереді, содан кейін табылғанын көрсететін makefile-дарды жазады. make қадамы компиляциялайды. install қадамы нәтижелерді жолыңыздың бір жеріне көшіреді.
Дәл осы соңғы жолда кеңес жиі адасады. Орнату құрастырудың жұмыс істегенінің дәлелі емес, ал оны кездейсоқ жүктеу қалтасында жоғары құқықтармен іске қосу кейін еске түспейтін файлдарды шашыратудың жақсы жолы. Егер configure жоқ кітапханаға байланысты сәтсіз болса, пайдалы шығыс — оның басып шығарған бірінші қатесі, журналдың соңғы жиырма жолы емес.
Сессия мен желілік конфигурация бөлек
Бұл айырмашылық қосылыстың трафикті шынымен тасымалдайтынын шешеді. TLS сессиясын орнату клиент жағында интерфейс береді. Маршруттарды, мекенжайларды және DNS шешушілерін қолдану — желілік скрипт арқылы жасалатын екінші қадам, ал скриптсіз екілік файл өндірген құрастыруда клиенттің жартысы ғана бар.
Дәл осы бөліну бірдей клиенттері бар екі машинаның неге басқаша әрекет ететінін түсіндіреді: скрипт жүйенің желілік конфигурациясымен кеңеседі, ал бұл конфигурация маршрутқа талап қойған барлық нәрсені қамтиды. Бөлінген туннель трафикті күтпеген жерге жібергенде, туннель өз жұмысын істейді, ал зерттеуге тиіс нәрсе — маршруттау шешімі.
Сондықтан жөндеу кезінде қай қабат құлағанын сұраңыз. Ешқашан орнатылмайтын сессия — протокол, сертификат немесе тіркелгі деректері. Орнатылып, ештеңе бермейтін сессия — интерфейс пен скрипт. Бір желіден жұмыс істеп, екіншісінен істемейтін орнатылған клиент — қолжетімділік, оны ешқандай қайта құрастыру өзгертпейді.
Қай екілік файлды іске қосып жатқаныңызды біліңіз
Қолмен орнатылған құрастыру мен бумаланған екілік файл бейбіт қатар өмір сүре алады, ал қайсысы жұмыс істейтіні жолыңызға байланысты, ниетіңізге емес. Біреуге нұсқа нөмірін хабарламас бұрын мұны анықтаңыз.
which -a openconnect
openconnect --version
brew list --versions openconnect
Бірінші команда қабығыңыз көретін әр көшірмені сынайтын ретімен тізімдейді. Екіншісі қайсысы жауап бергенін айтады. Бұл күткеніңізге сай келмесе, сіз ескі тәжірибеден қалған құрастыруды іске қосып жатсыз, ал ешқандай конфигурация өзгерісі оны жылжытпайды.
Клиент орнату — шлюзді мақұлдау емес
Жұмыс істейтін екілік файл орналастыруды үйлесімді етпейді. Шлюздің протоколын, оның аутентификация ағынын және басқарылатын құрылғының кез келген талабын оған ие адамдармен растаңыз, өйткені бұлар құрастыру бере алмайтын саясат және қолданбалық қабат фактілері.
Жобаның құрастыру нұсқаулықтары autotools реттілігін және желілік скрипт талабын толығырақ қамтиды, және сіздің macOS шығарылымыңыздан ескі блог жазбасын емес, соларды ұстану керек. Мақсат тек қосылу болса, пакетті алыңыз, скриптті сақтаңыз және компиляторды шетте қалдырыңыз.