Једна NIC или две? Одређивање распореда интерфејса VPN сервера
Један адаптер може да носи и шифровану везу и саобраћај тунела. Изаберите једну или две NIC према потреби усмеравања, а не према хардверском правилу.
Један физички адаптер је довољан за многе VPN сервере, а то није ни универзално решење. Шифрована веза долази на тај адаптер, VPN процес је дешифрује, а затим унутрашњи саобраћај излази кроз виртуелни интерфејс пре него што стигне до локалне услуге или рутираног LAN-а. Да ли то ради зависи од три услова: где се налази одредиште, да ли LAN има повратни пут до скупа клијената и да ли вам једна заједничка физичка веза даје изолацију на коју тврдите. Одговорите на та три и број адаптера следи.
Три услова која то одређују
Први услов је одредиште. Услузи на самом VPN хосту приступа се само кроз интерфејс тунела, док хост на LAN-у захтева прослеђивање и повратни пут. Други услов је тај повратни пут, јер LAN уређај мора да зна како да дође до скупа клијената, било рутом било превођењем на серверу.
Трећи услов је раздвајање. Један адаптер значи да сваки пакет, шифрован или не, дели везу и обично исти ланац правила, па захтев за изолацијом који зависи од одвојеног хардвера једно интерфејсно не испуњава. То је чињеница о путу, а не о томе како је оперативни систем конфигурисан. Можете и даље да филтрирате саобраћај тунела, али не можете да тврдите да имате границу коју немате.
Ниједан од та три не односи се на број портова на кућишту. Односе се на усмеравање, власништво над адресама и то колико пројекат зависи од физичког раздвајања.
Два адаптера остају легитиман избор када физичке зоне, одвојени улазни линкови, пропусност или ванпојасни пут за опоравак то оправдавају. То су конкретни захтеви и вреди их навести пре него што било ко наручи хардвер.
Када услуга ради на VPN хосту
Најједноставнији случај не тражи прослеђивање. Демон прима пакете клијента на интерфејсу тунела и предаје их локалном сокету, а одговор се враћа истим интерфејсом. За хост је адреса из скупа клијената права локална адреса.
Две ствари ипак морају бити исправне: услуга мора да слуша на адреси до које тунел може да дође, а заштитни зид хоста мора да прихвати саобраћај који долази на интерфејс тунела. Обоје је видљиво у наредбама испод.
ss -lntup | grep -E "5432|8080"
ip -brief addr show
ip route get 10.8.0.6 from 10.8.0.1Везивање услуге само за јавну адресу или случајно филтрирање интерфејса тунела даје везу која стигне до хоста и затим умре. То изгледа као квар VPN-а, а обично је одлука о сокету или заштитном зиду.
Када је одредиште на LAN-у
Овде дизајн са једним адаптером стиче глас да је незгодан. Сервер мора да проследи пакете клијента према LAN-у, а LAN уређај мора да пошаље одговоре назад у скуп клијената. Или тај скуп носите као руту на LAN-у, или на серверу преводите изворну адресу да се одговори враћају самом серверу.
Оба одговора су легитимна и пропадају на различите начине. Повратна рута оставља изворну адресу клијента видљивом одредишту, што је добро за записе и лоше за правила заштитног зида која претпостављају LAN адресе. Превођење држи LAN једноставним и скрива идентитет клијента од одредишта.
sysctl net.ipv4.ip_forward
nft list ruleset | grep -A4 'chain forward'
ip route show table main | grep 10.8.0Асиметричан пут је класичан симптом: захтев клијента стигне, одговор оде преко другог рутера и веза истекне без икакве грешке на оба краја. Снимите саобраћај на обе стране пре него што закључите било шта о тунелу.
Зашто alias не ствара другу зону
Додавање друге адресе истом адаптеру или стварање dummy интерфејса који опонаша други порт мења врло мало. Пакети и даље излазе кроз исту физичку везу, исти порт прекидача и обично исти ланац заштитног зида, па међу њима не настаје нова граница. То је погодност конфигурације, а не сегментација. Третирање тога као границе зоне је начин на који захтев за изолацијом преживљава само на папиру.
Одвојена зона тражи стварно раздвајање на путу, а то је захтев који испуњава други адаптер. Ако правило зависи од тога да саобраћај према VPN-у никада не дели broadcast домен са саобраћајем према LAN-у, један кабл не може дати то својство, без обзира на то како је хост адресиран.
Где производ документује топологију са више интерфејса за одређени режим, следите документацију тог производа уместо да измишљате заобилазно решење. Произвођачи такође мењају подржане топологије између издања, што је још један разлог да читате актуелни водич, а не снимак екрана старог чаробњака.
Проверите распоред према саобраћају који дозвољавате
Попишите класе саобраћаја које сервер треба да носи: клијент према хосту, клијент према LAN-у, хост према LAN-у и шифровану спољашњу везу. Свака класа има извор, одредиште и интерфејс, а распоред мора да задовољи све четири одједном. Дизајн који решава три од њих обично је онај који ствара тикете.
Затим потврдите стварне интерфејсе и стварни снимак саобраћаја, а не дијаграм у пројектном документу. Наредбе испод исписују оба приказа.
ip -brief addr
ip route
tcpdump -ni any udp port 51820 -c 5
tcpdump -ni tun0 -c 5Ако спољашњи снимак показује шифровани саобраћај, а унутрашњи снимак показује дешифровани саобраћај на интерфејсу тунела, док физички адаптер носи обоје, једна картица обавља посао. Ако је унутрашњи снимак празан, проблем је у тунелу или у правилима прослеђивања, а не у броју адаптера. Одредите топологију према та два снимка и табели усмеравања, па ће следећа измена имати са чим да се упореди.