Сумеснае выкарыстанне працоўнай станцыі ставіць пытанне, на якое аднакарыстальніцкі ноўтбук ніколі не павінен адказваць: пасля таго як адзін чалавек пацвердзіў тунель, хто яшчэ можа ім карыстацца? Уваход вызначае суб'екта, а маршрут, які ён усталёўвае, апісвае шырыню дзеяння, і гэта дзве розныя рэчы. Паміж імі стаяць аперацыйная сістэма, канфігурацыя кліента і тое, што прыватная служба патрабуе сама па сабе. Параўнанне пунктаў прымянення — адзіны спосаб адказаць на пытанне без здагадак.

Адзін уваход, некалькі шырыняў дзеяння

Аўтэнтыфікацыя адказвае, каго дапусцілі. Маршрут адказвае, якія пакеты могуць выйсці праз тунель. Аўтарызацыя адказвае, якая служба прыме выніковае злучэнне, і ніводная з трох не прадугледжвае наступную.

Тунель на ўзроўні хоста — звычайная налада па змаўчанні, і ён робіць разрыў відавочным. Маршрут знаходзіцца ў табліцы ядра, таму кожны працэс, які выкарыстоўвае гэтую табліцу, можа дасягнуць прыватнай сеткі, уключаючы той, што запусціў карыстальнік, які ніколі не бачыў дыялога VPN. Гэта не дэфект тунеля; гэта тое, што значыць маршрут на ўзроўні сістэмы. Прыватная служба ўсё яшчэ можа адхіліць злучэнне, таму дасягальнасць і дазвол патрабуюць асобных адказаў.

Калі запісаць чатыры пытанні перад тэставаннем, агляд не звядзецца да аднаго з іх.

Дзе насамрэч праходзіць мяжа

Чатыры ўладкаванні пакрываюць большасць машын: тунель на ўзроўні хоста, злучэнне на ўзроўні карыстальніка, спіс дазволеных праграм і асобная прастора імёнаў сеткі або віртуальная машына.

Кожнае ставіць пункт прымянення ў іншае месца, і адрозненні важнейшыя за назвы. Злучэнне на ўзроўні карыстальніка прымяняецца дазволамі профілю, а не экранам уваходу працоўнага стала. Спіс дазволеных праграм прымяняецца ўнутры кліента, які вырашае, што будзе перадаваць. Прастора імёнаў або ВМ прымяняе на мяжы інтэрфейсу, таму працэс унутры наогул не бачыць маршруту хоста. Колькасць экранаў уваходу на машыне нічога не кажа ні пра адно з іх.

ArrangementEnforced byWho can use the path
Host-wide tunnelThe routing tableAny local process using that table
Per-user connectionProfile permission listOnly the listed accounts
Per-app allowlistThe VPN client itselfOnly the selected applications
Namespace or VMThe interface boundaryOnly processes inside it

Чытанне табліцы радок за радком паказвае, што сапраўднае пытанне не ў тым, ці ёсць ізаляцыя, а ў тым, дзе яна рэалізавана.

Параўнайце чатыры пункты прымянення

У Linux маршрутная табліца — першае, што трэба агледзець, бо тунель на ўзроўні хоста з'яўляецца там, а прастора імёнаў не. Запуск пошуку як другі карыстальнік — гэта крок, які людзі прапускаюць; адказ адрозніваецца ад атрыманага імі самімі, і гэта тлумачыць справаздачу.

Наступныя дзве праверкі глядзяць на палітыку, а не на маршрутызацыю. Правіла брандмаўэра, якое адпавядае UID, датычыцца лакальна створанага трафіку, таму яно можа падзяліць двух карыстальнікаў на адным хосце, нават калі абодва дзеляць маршрут. Профіль злучэння з яўным спісам дазволаў прымяняе кіраўнік сеткі пры актывацыі. Ніводная праверка не патрабуе змяніць тунель, таму іх варта зрабіць перад любым перапраектаваннем.

ip route get 10.40.2.10
sudo -u bob ip route get 10.40.2.10
nmcli connection show vpn-work | grep -i permission
sudo nft list ruleset | grep -n skuid

Калі другі пошук паказвае маршрут тунеля, мяжа не там, дзе меркаваў дызайн.

Правілы адначасовых сеансаў — асобны кантроль

Шлюзы часта абмяжоўваюць колькасць сеансаў, якія можа ўтрымліваць адзін уліковы запіс, і гэта не мае нічога агульнага з лакальнымі карыстальнікамі. Абмежаванне датычыцца ўліковага запісу, таму другі чалавек, які ўваходзіць з тымі ж данымі, можа спыніць тунель першага.

Прачытайце збой, перш чым меркаваць лакальную праблему ізаляцыі. Абмежаванне сеансаў дае адключэнне на шлюзе, а праблема шырыні дзеяння дае працоўны тунель, які проста не перадае трафік іншага карыстальніка. Гэтыя два сімптомы вядуць да цалкам розных выпраўленняў. Захавайце дакладнае паведамленне кліента, бо яно звычайна называе правіла. Папрасіце ўладальніка профілю пра зацверджаны працэс замест абыходу абмежавання.

Віртуальная машына нікога не вызваляе ад гэтага правіла і дадае свой дызайн сеткі і ўліковых даных.

Тэстуйце той кантэкст, які вам важны

Праверце меркаванага карыстальніка і праграму, а потым праверце кантэкст, якому павінна быць адмоўлена. Агляд, які даказвае толькі што працуе першапачатковы пароль, праверыў аўтэнтыфікацыю і больш нічога.

sudo -u bob curl -sS -m 5 https://intranet.internal/health
wg show
ss -tnp | grep -E ':443|:51820'

Запішыце пункт прымянення побач з кожным вынікам: маршрутная табліца, правіла UID, дазвол профілю або палітыка сеансаў шлюза. Гэты запіс робіць наступную змену агляднай. Ён таксама не дае адкрываць тое ж пытанне зноў кожны раз, калі хтосьці заўважыць другі экран уваходу. Дасягальнасць — не аўтарызацыя, і ні адна з іх не ізаляцыя.

Падобныя артыкулы