Үй линиясындагы медиа кутуну элестетиңиз, ал интернетке туннел аркылуу гана чыгышы керек. Туннел түшкөндө колдонмо физикалык интерфейс аркылуу үнсүз уланбай, токтоп калышы керек. Мындай жүрүм-турумду алуу маршруттоо эмес, firewall маселеси, жана айырма маанилүү, анткени маршрутту демонду кайра иштетүү менен алмаштырууга болот, ал эми чыпка өзүңүз койгон жерде кала берет. Андан ары пакеттин жолу чындыгында кантип чечет, анан туннелди кайра туташтыруучу бөлүп коюуларды кантип чектөө керектиги каралат.

Жергиликтүү чыгуу — өткөрүүдөн башка илгич

Машинадагы колдонмодон чыккан пакет чыгуу илгичинен өтөт; машина башка хост үчүн маршруттаган пакет өткөрүүдөн өтөт. Тек forward гана аталган саясат экинчисин чектеп, биринчисин толук ачык калтырат, ошондуктан көп чыгуу кулпулары туура көрүнүп, эч нерсе кылбайт. Интерфейсти дал келтирүү ошол эле эрежеге кирет: oifname "tun0" accept туннел аркылуу мурунтан маршрутталган трафикти өткөрөт. Маршруттоо менен чыпкалоо да өзүнчө чечим бойдон калат, ошондуктан чыпка пакетти четке каккан учурда жогорку линиянын маршруту болушу мүмкүн. Сиз дал ушул бөлүнүүгө таянасыз.

Башка түзмөктөр үчүн өткөргөн шлюзга эки илгич тең керек. Тек чыгууну кулпулоо машинанын өзүн коргойт жана төмөнкү ар бир кардарга агып кетүү эркиндигин берет.

Бөлүп коюулардын тизмесин акыркы чекиттен сыртка карай жазыңыз

Туннелдин акыркы чекитинен баштаңыз: бир багыттоо дареги же кичине бекитилген топтом, транспорт протоколу жана багыттоо порту, мисалы udp dport 1194 ip daddr 203.0.113.7 accept. Эгер кардар хост атын чечсе, баштапкы DNS алмашууга өз эрежеси керек, ал чечүүчү жана 53 порту менен чектелиши керек, ошол чечүүчүнүн дарегине жалпы уруксат эмес. Ар бир бөлүп коюу өзүнүн бар болушунун себебин аташы керек. VPN портуна бардык UDP трафигине уруксат сиз ойлогон бир гана аутентификацияланган кызматтан алда канча көптү камтыйт.

Баштапкы чечүү — кулпулар адатта чирий турган жер. Таймер менен жаңыртылуучу даректер топтомуна жаңыртуу ийгиликсиз болгондо аныкталган жүрүм-турум керек, жана бул жүрүм-турум ийгиликтүү болгонго чейин линияны ачуу болбошу керек. Туннел турганда туннел аркылуу жаңыртыңыз, болбосо акыркы белгилүү соо акыркы чекитке кайтыңыз.

Жергиликтүү башкаруу да ушундай мамилени талап кылат. Башкаруу ички тармагы даректери жеке болгондугу үчүн эле ишенимдүү эмес, жана ага ишенген эреже кулпунун айланасында экинчи жолду чакырат.

Интерфейсти дал келтирүү соо туннелдин далили эмес

tun0 илгичинен чыккандын баарын кабыл алган эрежелер ошол интерфейстеги пакет туннелден келди деп эсептейт. Интерфейс аттары кайра түзүлөт, ал эми ат криптографиялык инсандык эмес. Өнөктөш кетип калса да интерфейс жогору тура берет, бул эрежени абдан ишенгичсиз кыймылсыздыкка айландырат.

Байланыштарды көзөмөлдөө ушуга байланыштуу тузак кошот. Орнотулган байланыштар үчүн кенен эреже агымдын мурун алган уруксатын кайра ойнотот, ошондуктан туннел түшөрдөн мурун башталган сессия андан кийин да иштей берет. Абалга негизделген кабыл алууну чындап ниеттенген интерфейстер жана даректер менен чектеңиз, болбосо өзү ачыла турган кулпу курдуңуз. Кирүү жана чыгуу эрежелери да ар башка суроолорго жооп берет, бирин катуулатып экинчисин этибарга албай коюу машинаны ойлогон эмес багытта жеткиликтүү калтырат.

Демондун кулашынан эмне аман калат

Туннел көтөрүлгөндөн кийин иштеген скрипт орноткон чыпка туннел менен кошо жоголот, дал ошол замат керек болгондо. Кулпуну жүктөөдө жүктөңүз жана демонго тек өзүнүн бөлүп коюуларын башкарууга уруксат бериңиз.

Демейки маршрутту өчүрүү да ордун толтурбайт. Маршрут — демон ээлик кылган жана кайра жазган абал, аны алып салуу кайра туташууга керек болгон жолду алып кетиши мүмкүн. IPv6 өз планын талап кылат, анткени коңшуларды табуу жана маршрутизатор жарыялоолору кадимки трафик блоктолуп турганда да иштеши керек болгон байланыш кызматтары. DHCP да ошол категорияга кирет. Буларды кийинчерээк бузулуу катары табуунун ордуна, максаты бар бөлүп коюулар катары жазып коюңуз.

Жайгаштырууга чейинки калыбына келтирүү жолу

Кулпуну кантип иштебей калаарына жараша сынаңыз: туннелсиз жүктөө, демонду өлтүрүү, акыркы чекитти өзгөртүү жана кайра туташуу. Ар бир учурда колдонмолор токтоп, калыбына келтирүү каналы иштеп турушу керек. Муну консолдон жасаңыз, анткени алыскы кабык — өз эрежеңиз менен эң ыктымал кулпуланат турган сессия.

Анан кадимки колдонмо дагы кайда жете алаарын текшериңиз: зыянсыз багыт жана текшерсе боло турган сурам менен. Каалаган натыйжа — линияда баш тартуу жана туннел аркылуу ийгилик, экөөнү тең билдириши мүмкүн болгон эки анжыралуу күтүү эмес. Эрежелер топтомун бүткүл таблицаны shell скриптинен алмаштыруунун ордуна, firewall'дун калган бөлүгү менен бир ээсинин карамагында кармаңыз. Ар бир уруксат өзүн актай алган саясат, эч ким түшүндүрө албаган узун эрежелер топтомунан кымбат.

Тектеш макалалар