Две конфигурације пира се пореде једна уз другу, једна има линију remote а друга не, а закључак је да је једна од њих покварена. Тај закључак је довољно често погрешан да га вреди разложити. Директива описује куда треба послати први пакет. Она не бира да ли процес делује као клијент који иницира или као пролаз који чека, и не одлучује која страна доказује свој идентитет оној другој.

Шта remote заправо одређује

Унос remote именује домаћина, опционо порт и транспорт, и опционо неколико таквих уноса који се покушавају редом.

Његово одсуство има одређено, а не неодређено значење: процес чека и не обрађује пакете са адресе осим ако се тај пир аутентификује. Зато пролаз који опслужује кориснике у покрету нема разлога да некога од њих унапред именује.

Читајте унос као однос адреса. Да ли је други крај поуздан, одговарају сертификати и опције провере, а не чињеница да је адреса записана.

Одговор одлучују три распореда

Клијенту у покрету потребно је одредиште, јер мора да иницира и без њега не зна где је пролаз. Пролазу са више клијената није потребно одредиште по кориснику, јер клијенти долазе и аутентификују се. Намерна веза два пира са познатим крајевима може имати одредиште на једној страни, на обе стране или ни на једној, зависно од тога која страна иницира.

Лечење фиксне адресе клијента у општи пролаз грешка је која следи из игнорисања тих категорија. Ради за једини пир чија је адреса забележена и заводи све остале.

Ништа у директиви не претвара конфигурацију у сервер са више клијената, а ништа у њеном присуству не спречава серверску улогу. Референца за OpenVPN 2.6 документује опционе аргументе и понашање без remote одвојено, што је наговештај колико су независни.

ArrangementNeeds a destination
Roaming clientYes, which gateway to contact
Multi-client gatewayNo, peers authenticate on arrival
Two known peersDepends on which side initiates

Транспортне улоге су друга оса

Код TCP-а једна страна чека, а друга успоставља везу. То су одвојене директиве од одредишта, а њихово мешање даје пар у којем или обе чекају или обе успостављају везу.

Постоји и улога TCP филтера извора, због чега је равна тврдња да сервер никада не сме да садржи remote погрешна.

Код UDP-а нема везе коју треба успоставити, па оба краја користе одговарајући UDP транспорт и директива само каже куда циљати. Промене адресе аутентификованог пира обрађује наменско понашање, а не додавање нових уноса. Исправан транспорт је предуслов да одредиште ишта значи, а мешање двога ствара конфигурације које изгледају уверљиво и никада не доврше руковање.

Зашто одсутни remote није отворена врата

Процес без одредишта и даље одбија саобраћај пирова који се не аутентификују, и то је део који људи пропусте кад одсутну линију читају као слушаоца отвореног за свакога.

Аутентификација и одредиште су независни, а прва је она која је важна за поверење.

Обрнута грешка је опаснија. Фиксна изворна адреса може деловати као контрола приступа јер је конкретна и лако проверљива, али не доказује ништа о томе ко је на другом крају. Задржите проверу сертификата и провере идентитета које везују сертификат за његову улогу. Замена њима подударањем адресе мења стварну контролу за њен изглед.

Запишите шта конфигурација претпоставља

За сваку страну забележите три ствари: како први пакет стиже до пира, која страна може да прихвати транспорт и шта свака страна проверава о оној другој.

Те претпоставке су дизајн. Директиве су само њихово писање.

Ако се две датотеке разликују, проверите изражавају ли различите претпоставке уместо да претпоставите да је једна погрешна. Симетричан пар датотека није ни нужан ни довољан за тунел који ради, а асиметрија је често део који топологију чини функционалном.

Повезани чланци