VPN OpenWrt-пен кездескен сайын үш өзгеріс шатасады: порт ашу, қайта бағыттауға рұқсат беру және мекенжайды жасыруды қосу. Олар әртүрлі сұрақтарға жауап береді және әдетте олардың тек біреуі ғана нақты талап болады. Әрбір басқаруды ол басқаратын трафик рөліне қарай оқу болжамды шешімге айналдырады, сонымен қатар өзгеріс қате болғанда қандай белгі күту керектігін айтады. Сіз есіңізде қалған құсбелгіден емес, сәтсіз болған рөлден бастаңыз.

Басқаруға тиіспей тұрып трафик рөлін атаңыз

Аймақ кірісі маршрутизатордың өзіне не жете алатынын шешеді. Аймақ шығысы маршрутизатор өзі жасайтын трафикті қамтиды, аймақты қайта бағыттау аймақтан өтетін трафик үшін әдепкі мән, ал мекенжайды жасыру шығу кезінде бастапқы мекенжайдың қайта жазылатынын шешеді. Бұл төрт түрлі сұрақ, ал аймақ саясаты төртеуіне бірден бірдей мәнмен жауап береді, сондықтан бүкіл аймаққа жасалған өзгеріс дөрекі құрал. Атаулы ереже қалғандарына тиіспей-ақ солардың біреуіне жауап бере алады.

Пайдалы карта трафик рөлі бойынша құрылады, өйткені бірдеңе сәтсіз болғанда дәл соны бақылай аласыз. Төмендегі әр рөлде оны шешетін бір басқару және оған нұсқайтын бір белгі бар:

Traffic roleControl that decides itWhere it lives in the configSymptom when it is wrong
A client reaching a listener on the routerInput policy of the zone that carries the connection, or a rule for the portoption input in the zone stanza, or a named ruleThe handshake never completes and the tunnel log says nothing
A tunnel client reaching the router itselfInput policy of the tunnel zoneoption input in the VPN zoneA ping to the gateway fails
A tunnel client reaching another LAN hostForwarding from the tunnel zone to the LAN zoneconfig forwarding plus the zone assignmentThe gateway answers and the file share times out
The router's own traffic leaving the WANOutput policy, and translation if the far side needs itoption output and option masqThe tunnel never establishes, or replies vanish

Маршрутизатордағы тыңдаушыға бір тар кіру ережесі қажет

Маршрутизатордағы OpenVPN сервері маршрутизаторға адрестелген трафикті қабылдайды, сондықтан оның сыртқы қосылымы оны тасымалдайтын аймақтың кіру саясатына тәуелді. Конфигурацияланған тасымалдау мен портқа рұқсат беріңіз, ал сол аймақтағы қалғанның бәрін қабылдамаулы күйде қалдырыңыз. Бір порт ережесі бүкіл аймаққа рұқсат беруден әлдеқайда аз өзгеріс, және бір жылдан кейін де дәл соны түсіндіре аласыз.

Бұл ережені сақтауды қауіпсіз ететін екі нәрсе бар: ол қызмет шынымен пайдаланатын портты атайды және аймақ анықтамасының жанында тұрады, сондықтан келесі адам оның не үшін бар екенін көреді. Төмендегі жолдар — тек пішін, порт серверде конфигурацияланған мәнді білдіреді. Қызмет орнын ауыстырғанда бұл портты екі жерде де өзгертіңіз, өйткені ескі портта қалған ереже тексеруге дейін көрінбейді.

config zone
    option name 'wan'
    option input 'REJECT'
    option forward 'REJECT'
    option output 'ACCEPT'
    option masq '1'

config rule
    option name 'allow-openvpn'
    option src 'wan'
    option proto 'udp'
    option dest_port '1194'
    option target 'ACCEPT'

Қайта жүктемес бұрын тексеріңіз, өйткені firewall файлындағы синтаксистік қате маршрутизаторды жұмыс істейтін ережелер жиынтығынсыз қалдыруы мүмкін. fw4 қолданатын шығарылымда тексеру бөлек пәрмен және ол бұзылған блокты үнсіз қабылдаудың орнына қатты сәтсіздікке ұшырайды. Тексеру өткеннен кейін ғана қайта жүктеңіз және алдыңғы файлды қайтаруға болатын жерде сақтаңыз.

fw4 check
service firewall reload

Клиент сұранысы кіруден емес, қайта бағыттаудан өтеді

Аутентификациядан кейін LAN қызметін сұраған туннель клиентінің сұранысы қайта бағытталған ағын жасайды, сондықтан оны шешетін басқару — туннель аймағы мен LAN аймағы арасындағы қайта бағыттау қатынасы. Туннель интерфейсін қажет аймаққа тағайындаңыз, содан кейін бағытты, көздерді және қызметті жариялаңыз. Аймақты тағайындау қайта бағыттау ережесіне мән беретін нәрсе, және екеуі бірге оқылғанда ғана мағыналы. Туннель аймағын көз, ал LAN аймағын меже етіп көрсететін қайта бағыттау қатынасы бір әдейі шешім ретінде оқылады, ал бүкіл аймаққа берілген екі рұқсат апат ретінде оқылады.

Маршрутизатордың өзіне жету әлі де кіру жолын пайдаланады, сондықтан шлюзге ping оның артындағы файл алмасуы туралы ештеңе айтпайды. Бұл екі сәтсіздік әртүрлі блоктарда өмір сүреді және әртүрлі өзгерістермен түзетіледі. Екеуінің бірін өзгертудің алдында екі жолды да бөлек жазып алыңыз.

Мекенжайды жасыру — маршруттау шешімі, рұқсат емес

Мекенжайды жасыру таңдалған сыртқа шығатын трафиктің бастапқы мекенжайын қайта жазады. Ол алыс жақта қайту маршруты жоқ шығу құрылымын құтқара алады, сондай-ақ мекенжайларды тіркейтін немесе мекенжай бойынша рұқсат беретін кез келген қызметтен жекелеген клиенттердің мекенжайларын жасырады. Оны өшіру — қайту жолы туралы маршруттау таңдауы, ішкі тесікті жабатын қауіпсіздік ажыратқышы емес. Аударма қосулы кезде жұмыс істеп, ол өшірілген сәтте сәтсіздікке ұшырайтын туннельде әдетте қайту маршруты жетіспейді, firewall ережесі емес.

Маршрутталған балама аударманың орнына алыс жақта қайту маршрутын талап етеді. Екі нұсқаның ешқайсысы firewall рұқсатын немесе қолданба тіркелгісін бермейді, сондықтан мекенжайды жасыруды өшіру еш жерге жете алмайтын туннель клиентін дерлік ешқашан түзетпейді. IPv4 пен IPv6 саясатын да бөлек қарастырыңыз, өйткені бір аударма параметрі екі отбасын да сипаттамайды.

Шешімді рұқсат етілген және қабылданбаған сұраныспен дәлелдеңіз

Рұқсат етілуі тиіс бір сұраныс пен қабылданбауы тиіс бір сұраныс жіберіңіз, содан кейін әр шешімді қабылдаған басқаруды анықтаңыз. Кездейсоқ жүктелген парақ дәлел емес; дәлел — сәйкес келген ереже, ол сәйкес келген тізбекте. Бас тарту табыспен бірдей маңызды, өйткені ол саясаттың бәріне рұқсат берудің орнына бірдеңе жасап жатқанын көрсетеді.

Ағымдағы шығарылымда екі пәрмен осы дәлелді береді. Сұраныс қабылданғанда сәйкес ереженің санауышы жылжиды, ал ереже үшін журналдауды қоссаңыз, журнал тастауды көрсетеді:

nft list chain inet fw4 forward_wan
logread -f | grep -i -E 'DROP|REJECT'

Кез келген firewall саясатын өзгертудің алдында әлі пайдалана алатын әкімшілік жолды сақтаңыз және конфигурация иесінің тексеру мен қайтару процесін ұстаныңыз. Сізді маршрутизатордан тыс құлыптайтын өзгеріс тест нәтижесі емес, ол екінші оқиға. Әр бақылаудың жанында аймақ пен трафик рөлін жазыңыз, сонда нәтижелер жұбы сәтті парақ жүктелуін сипаттаудың орнына саясатты түсіндіреді.

Қатысты мақалалар