Ці дае Libertine для Ubuntu Touch VPN на ўвесь тэлефон?
Пакет працоўнага стала ў кантэйнеры адказвае на іншае пытанне, чым тунэль на ўвесь тэлефон. Прасачыце, дзе жывуць сетка, ідэнтычнасць і палітыка збояў.
У Ubuntu Touch два пытанні задаюць як адно: ці запусціцца гэты пакет працоўнага стала і ці атрымае тэлефон VPN. Кантэйнер адказвае на першае. Нішто ў ім не адказвае на другое, бо кантэйнер мае ўласны погляд на файлавую сістэму, а сеткавы стек і яго палітыка належаць тэлефону. Прасачыце, дзе жыве кожная частка, перш чым абяцаць працоўны працэс.
Два пытанні, якія выглядаюць як адно
Запуск праграмы працоўнага стала ў кантэйнеры — гэта дасягненне спакавання. Прымусіць мэнэджар злучэнняў тэлефона ўсталяваць тунэль, утрымаць яго праз сон і вырашыць, што адбудзецца пры абрыве, — гэта праца платформы. Інсталятар, які завяршаецца ўнутры кантэйнера, даказвае толькі тое, што залежнасці там вырашыліся. Ён нічога не кажа пра тое, ці ёсць у тэлефона зацверджаны плагін VPN, ці перажыве тунэль перазагрузку і якія праграмы ім карыстаюцца.
Трымайце гэтыя дзве рэчы ў асобных сказах у любой ацэнцы. Зліццё іх — гэта шлях, якім лабараторная дэманстрацыя ператвараецца ў абавязацельства падтрымкі, якое ніхто не можа выканаць.
Што насамрэч дае мяжа кантэйнера
Кантэйнер Libertine — гэта асяроддзе для запісу, накладзенае на тэлефон, базавая сістэма якога даступная толькі для чытання. Вось чаму ўсталёўка пакета там увогуле працуе і чаму тая ж усталёўка на базавай сістэме не працуе. Ён таксама запускае праграмы на пярэднім плане, інтэграваныя з экранам тэлефона, і ён відавочна не прызначаны для запуску сервернага праграмнага забеспячэння або ўтрымання працэсу ў фоне. Гэтыя абмежаванні важныя для кліента VPN, які павінен заставацца ўключаным.
libertine-container-manager list
libertine-container-manager info -i <container-id>
libertine-launch -i <container-id> bash
Спіс паказвае, якія кантэйнеры існуюць, а каманда info паведамляе дыстрыбутыў і стан усталёўкі. Каманда launch дае вам абалонку ўнутры — гэта правільнае месца, каб праверыць, што пакет насамрэч усталяваў. Чаго яна не дае, дык гэта паўнамоцтваў над сеткай тэлефона. Бінарнік унутры кантэйнера, які хоча стварыць тунэль, патрабуе прывілеяванага інтэрфейсу, а гэты інтэрфейс належыць платформе, а не кантэйнеру.
Дзе жыве стан сеткі тэлефона
Імёны, маршруты і профілі злучэнняў кіруюцца сеткавай службай тэлефона, па-за любым кантэйнерам. Запіс тунэля з’яўляецца там толькі тады, калі платформа падтрымлівае гэты тып VPN і аператар усталяваў адпаведны плагін.
nmcli connection show
ip route get 10.42.0.10
ip -br addr show
Спіс злучэнняў — гэта аўтарытэтны адказ на пытанне, ці ёсць на гэтым тэлефоне профіль VPN. Калі вашага тунэля няма ў гэтым спісе, ніякая праца ўнутры кантэйнера не прымусіць яго з’явіцца. Пошук маршруту адказвае на больш вузкае пытанне: які інтэрфейс гэты тэлефон выкарыстаў бы для аднаго пункту прызначэння. Менавіта гэтую праверку трэба паўтараць пасля любой змены, бо профіль можа існаваць і ўсё ж не быць шляхам, якім ідзе пэўная праграма.
Прачытайце адзін працоўны працэс цалкам
Вазьміце рэальную задачу, напрыклад доступ да прыватнай базы даных з кліентам працоўнага стала. Затым прасачыце паток: праграма стартуе ў кантэйнеры, развязае імя хоста праз той рэзальвер, які выкарыстоўвае тэлефон, адкрывае сокет, і маршрутызацыя тэлефона вырашае, які інтэрфейс яго панясе. У кожнага кроку ёсць уласнік. Кантэйнер валодае праграмай, платформа валодае рэзальверам і маршрутызацыяй, а канцавы пункт VPN валодае аўтэнтыфікацыяй. Збой на любым кроку — гэта збой менавіта гэтага кроку, а не ўсёй ідэі.
Праверце прыватнае імя хоста і прыватны адрас паасобку. Імя, якое развязваецца ў публічны адрас, і адрас, які маршрутызуецца ў тунэль, — гэта розныя назіранні, і блытаць іх — значыць атрымаць справаздачу, якую немагчыма прайграць.
Што запісаць, калі адказ адмоўны
Часам сумленны вывад такі: гэты тэлефон на гэтым выпуску не можа панесці гэты працоўны працэс. Запішыце гэта разам з доказамі: якія тыпы злучэнняў прапануе платформа, якія кліенты спрабавалі і на якім кроку адбыўся збой.
Затым укажыце прынятую альтэрнатыву: іншая прылада, іншы спосаб доступу або больш вузкая задача, якая застаецца ўнутры кантэйнера і не кранае прыватных сетак.
Супраціўляйцеся спакусе зноў прымацаваць базавую сістэму або даць непатлумачаныя прывілеі, каб аднавіць стары рэцэпт. Тэлефон, які загружаецца, — гэта не тое самае, што тэлефон, пра палітыку сеткі якога вы зможаце разважаць праз паўгода.