Сайттар ортосундагы VPN же алыскы кирүү: экөө эмнени туташтырат
Бири шлюздарды туташтырат, экинчиси түзмөктөрдү туташтырат. Трафик селекторлорун маршруттар менен салыштырыңыз, даректи пландаңыз, анан реалдуу хосттон өткөрүү жана саясатты текшериңиз.
Эки чечим тең VPN деп аталат жана алар ар башка маселелерди чечет. Сайттар ортосундагы туннель эки шлюзду туташтырат, ошондуктан алардын артындагы ар бир хост эч нерсе орнотпой эле экинчи тараптагы уруксат берилген даректерге жете алат. Алыскы кирүү туннели өзүнчө түзмөктөрдү тармакка туташтырат, бир убакта бир кардар. Бул салыштыруу маанилүү, анткени орнотуу каталарынын көбү бирин конфигурациялап, экинчисинин жүрүм-турумун күтүүдөн келип чыгат, ал эми симптом адатта туннель чындап жеткен кызматтагы күтүү убактысынын бүтүшү болот.
Эки чечим, эки чек
| Site-to-site | Remote access | |
|---|---|---|
| Endpoints | two gateways | a gateway and each client |
| Who configures | network owners | each user or an MDM |
| Scope of reach | whatever the gateways route | whatever the client is granted |
| Broadcast discovery | not carried | not carried |
Эки чечимдин эч бири LAN жарыялоо доменин кеңейтпейт. Алыскы тараптагы түзмөктөр жергиликтүү издөө тизмесинде көрүнбөйт, жана муну күтүү — баш тартууга тийиш болгон биринчи божомол. Атайын жарыялаган жеке DNS аттары каалаган издөө протоколунан болжолдуураак жана жеткирүүчү алмашканда да сакталат.
Бир сайтта 10.10.0.0/24 жана экинчисинде 10.20.0.0/24 алыңыз. A шлюзуна 10.20.0.0/24 префиксин туннелге жөнөткөн маршрут же трафик селектору керек, ал эми B шлюзуна анын күзгүдөй көчүрмөсү керек. Андан кийин эки тараптагы хосттор кадимки IP байланышын колдонушат жана туннель бар экенин эч качан билишпейт. Бул көрүнбөстүк — өзгөчөлүк, жана бузулуулардын туннель каталары эмес, кадимки тармак каталары сыяктуу көрүнүшүнүн себеби да ушул.
Саясатка негизделген жана маршрутка негизделген бир туннель эмес
Саясатка негизделген IPsec орнотууда келишилген трафик селекторлору кайсы булак жана багыт жуптары корголорун так аныктайт. Эгер бир шлюздун артында жаңы кошумча тармак пайда болуп, аны эч бир селектор камтыбаса, туннель ишин улантат, ал эми жаңы кошумча тармак жөн эле ташылып берилбейт. Маршрутка негизделген чечимде трафикти интерфейс кабыл алат, ал эми чечимди маршруттоо таблицасы кабыл алат, бул префикс кошууну туннелди кайра келишүү эмес, маршрут өзгөрүүсүнө айландырат.
StrongSwan эки көрүнүштү тең түз көрсөтөт, жана аларды чогуу окуу чындыгында кайсы модель орнотконуңузду аныктоонун жолу.
swanctl --list-sas
ip xfrm policy
ip -4 route show table all | grep -E '10\.(10|20)\.'
Сизге керектүү префиксти таштап кеткен селекторлор тизмеси пакетти кармабастан эле бузулууну түшүндүрөт, ал эми туура эмес интерфейске көрсөткөн маршрут кайтуу жолундагы күзгү бузулууну түшүндүрөт. Бир нерсени кайра келишүүдөн мурун экөөнү тең окуңуз, анткени ачкычты жаңыртуу эч качан конфигурациялабаган селекторду кошпойт.
Даректи туннелге чейин пландаңыз
Кайчылашкан диапазондор — конфигурация менен оңдоого болбой турган долбоорлоо катасы. Эгер эки сайт тең 192.168.1.0/24 колдонсо, 192.168.1.50 керек болгон хосттун эки талапкери бар жана тандоонун жолу жок. Туннель аутентификациядан өтөт, коопсуздук ассоциациялары орнотулат, ал эми маршруттоо чечими баары бир туура эмес же эки маанилүү болот.
Үч ак ниеттүү варианттын бирин тандаңыз: бир сайтты кайра номурлаңыз, кайчылашкан диапазонду шлюзде которуңуз, ошондо ар тарап өзүнчө префикс көрөт, же ошол хосттор үчүн түз маршруттоодон баш тартып, кызматты башка жол менен жарыялаңыз. Ар биринин баасы бар, жана эки жылдык горизонтто биринчиси адатта эң арзан. Туннель пайда боло электе чечиңиз, анткени кийин өзгөрүү эски дареги бар ар бир түзмөккө тиет.
MTU маселесин да эрте чечиңиз. Туннель пайдалуу жүктү азайтат, жана фрагментацияга таянган чечим шлюздарда MSSти бекемдеген чечимден башкача жүрөт.
Өткөрүү жана саясат туннелден тышкары турат
Шлюз туннель интерфейси менен LAN интерфейсинин ортосунда пакеттерди өткөрүүгө даяр болушу керек, жана эки багытка тең кызматка уруксат берген саясат керек. Linuxта бул эки өзүнчө параметр, кошумча өткөрүлгөн агымдын жалпы уруксат берилгенин аныктаган firewall эрежелери.
sysctl -w net.ipv4.ip_forward=1
iptables -A FORWARD -s 10.20.0.0/24 -d 10.10.0.0/24 -j ACCEPT
iptables -A FORWARD -s 10.10.0.0/24 -d 10.20.0.0/24 -j ACCEPT
Кабыл алуучу хост үчүнчү катмарды кошот: анын өз firewallы дагы эле алыскы кошумча тармактан кардарды кабыл алышы керек. Өзүнүн жергиликтүү /24ин гана уруксат берген файлдык сервер 10.20.0.7ден өткөрүлгөн трафикти четке кагат, туннель канчалык соо көрүнбөсүн, жана бул четке кагууну маршрут бузулуусу деп окуу оңой.
Шлюзден эмес, хосттон текшериңиз
Шлюз өзү жөнөткөн ping өткөрүлгөн колдонуучу трафигинен башка булак дарегин жана башка саясатты ээрчиши мүмкүн. Бул аны алсыз тестке айландырат жана кээде адаштырат: колдонмо иштебей калганда ал ийгиликтүү болот, же колдонмо иштеп турганда ал ийгиликсиз болот.
ip route get 10.10.0.5 from 10.20.0.7
ping -I 10.20.0.7 10.10.0.5
curl -sv --max-time 5 http://files.10-10.internal/ -o /dev/null
Реалдуу хостту, реалдуу булак дарегин жана колдонмо колдонгон реалдуу протоколду колдонуңуз. Андан кийин кайтуу жолун өзүнчө окуңуз, анткени кайтуу маршруту жок иштеп турган алдыга багыт блоктолгон кызматка окшош күтүү убактысынын бүтүшүн жаратат.
Чечимди өзүңүз жооп берген суроого жараша тандаңыз: тармактарды туташтырасызбы же түзмөктөрдү кабыл аласызбы? Калганынын баары, кайсы жеткирүүчүнү конфигурациялаганыңыз да, ошол жооптон келип чыгат.