OpenVPN-д маршрут хаана хамаарах вэ: клиент эсвэл серверт уу?
Серверийн тохиргоон дахь нүцгэн маршрут нь серверийг өөрчилнө, клиентийг биш. Клиентийн файл, глобал push эсвэл нэг клиентэд push сонгоод юу ирснийг шалгана уу.
Та серверийн тохиргоонд route 10.60.0.0 255.255.255.0 нэмж, дахин эхлүүлж, зөөврийн компьютерыг дахин холбосон ч тухайн зөөврийн компьютерээс дэд сүлжээнд хүрэхгүй хэвээр байна. Мөр хүлээн авагдсан, үйлчилгээ цэвэрхэн эхэлсэн, бүртгэлд ямар нэгэн буруу зүйл харагдахгүй байна. Болсон зүйл нь маршрут таны засварласан машин дээр суусан: гарц нь одоо тэр угтварт хүрч чадна гэж бодож байгаа боловч клиентэд юу ч хэлээгүй. Байршил бол бүх асуудал бөгөөд ижил мөр амьдарч болох дөрвөн газар бий.
Дөрвөн газар ба тус бүрийг хэн хүлээн авах вэ
Маршрутыг клиентийн өөрийн тохиргоогоор нэмэх, глобал push-аар бүх клиентэд санал болгох, клиентэд зориулсан файлаар нэг клиентэд санал болгох, эсвэл серверийн өөрийн маршрутжуулалтын контекстэд бичих боломжтой.
Эдгээр дөрвөн тохиолдол бараг ижил синтакс хэрэглэдэг ч огт өөр үр дүн өгдөг. Эхний гурав нь клиент туннель рүү юу илгээхэд нөлөөлдөг; дөрөв дэх нь сервер сүлжээнд хэрхэн хүрэхэд нөлөөлдөг бөгөөд энэ нь серверт өөрт нь зам хэрэгтэй үед ашигтай, хуваарилалт гэж андуурвал хор хөнөөлтэй.
Мөрийг бичихийн өмнө дөрвөөс алийг нь хүсэхээ шийдэж, дараа нь хүлээн авагчийг баталгаажуулна уу.
| Placement | Effect | Receiver |
|---|---|---|
| Client profile route | Installed by the client at connect | That client only |
Global push "route ..." | Sent to every client that accepts pushed options | All pulling clients |
| Client-specific push | Sent to the matching client context | One identity |
| Server config route, no push | Added to the server's own table | The gateway itself |
Яагаад нүцгэн серверийн маршрут хүмүүсийг гайхшруулдаг вэ
Серверийн тохиргоо бол администраторууд хамгийн түрүүнд хардаг газар бөгөөд тэнд байгаа маршрутын заавар нь VPN сүлжээний тухай мэдэгдэл мэт уншигддаг. Тийм биш. OpenVPN үүнийг демон ажиллаж буй машин дээрх локал маршрутын суулгалт гэж үздэг бөгөөд энэ нь ip route ашиглаад дараа нь мартахтай яг ижил төрлийн өөрчлөлт юм.
Хуваарилалт нь маршрутыг push хийхийг шаарддаг, push нь клиент татахыг шаарддаг. Татагдсан сонголтыг идэвхгүй болгож эхлүүлсэн клиент саналыг бүрмөсөн үл тоомсорлодог. Серверийн файлыг дахин бичихийн өмнө энэ гар барилтын хоёр төгсгөлийг шалгана уу, учир нь серверийн бүртгэл гомдоллохгүй: түүний талаас санал илгээгдсэн. Хүлээн авсан маршрут мөн зөвхөн дараагийн холболтод хүчин төгөлдөр болно, та аль хэдийн байгаа сесс дээр хэзээ ч биш.
Хоёрыг тусдаа үйлдэл гэж харвал алдаа нь нууцлаг байхаа болино: сервер угтварт хүрдэг, клиент хүрч чадахгүй, хоёр мэдэгдэл нэгэн зэрэг үнэн.
Клиент тус бүрийн файлууд ба тэдгээрт тохирох таних тэмдэг
Клиентэд зориулсан файлыг серверийн баталгаажуулсан таних тэмдгийн нэрээр нэрлэдэг бөгөөд энэ нь анхдагчаар гэрчилгээний нийтлэг нэр юм. Ажлын ширээний клиент дэх найрсаг холболтын нэр нь тэр утга биш бөгөөд тохиромжгүй байдал нь хэзээ ч уншигддаггүй файл үүсгэдэг.
Серверийн бодитоор ашигладаг директорийг шалгаад, файлын нэр баталгаажуулсан таних тэмдэгтэй яг таарч байгаа эсэхийг, том жижиг үсгийг оруулан баталгаажуулна уу.
grep -n 'client-config-dir' /etc/openvpn/server/server.conf
ls -l /etc/openvpn/ccd/Тэр файлын дотор ч маршрутыг push хийх ёстой, учир нь клиент тус бүрийн контекст нь тухайн клиентийн сессэд хэрэглэгдэх сонголтын багц бөгөөд локал маршрутжуулалтын хүснэгт биш. Тэнд байгаа нүцгэн маршрут нь глобал файл дахь нүцгэн маршруттай ижил асуудалтай.
Клиентийн өөрийн файл ба түүнийг эзэмшдэг хэрэгсэл
Клиентийн тохиргоонд байрлуулсан маршрут нь тухайн клиент холбогдоход суудаг бөгөөд салгахад устдаг, энэ нь статик очих газрын хувьд зөв амьдралын мөчлөг юм.
Хэрэв профайлыг сүлжээний менежер эзэмшдэг бол тэр эдгээр сонголтыг нэг удаа импортлоод дараа нь өөрийн хуулбарыг хадгалж болно. Татаж авсан файлыг дараа нь засварлах нь юу ч өөрчлөхгүй бөгөөд энэ нь "маршрут байгаа ч үйлчлэхгүй" гэдгийн нийтлэг шалтгаан юм.
Татаж авсан файлаас илүү идэвхтэй профайлыг шалгаж, менежерийн харуулж буй импортолсон тохиргоог шалгана уу. Дараа нь холбогдоод тодорхой хаяг ямар замыг ашиглаж байгааг системээс асууна уу, текст файлд маршрут байсан учраас туннель ялсан гэж таамаглахын оронд.
Клиент дээр шалгаад, дараа нь буцах замыг шалгана уу
Очих газрын талаар клиентийн өөрийн маршрутжуулалтын хүснэгтээс асууна уу, серверийнхээс биш. Угтварын доторх нэг хост хайх нь ашиглагдах интерфэйс болон дараагийн алхмыг харуулахад хангалттай.
ip route get 10.60.0.10Хэрэв хайлт туннель рүү зааж байвал хуваарилалт ажилласан бөгөөд үлдсэн асуудал өөр газар байна. Хэрэв анхдагч гарц руу зааж байвал маршрут суугаагүй, клиент талын сонголтоор шүүгдсэн, эсвэл клиент ашигладаггүй профайлд хамаарна.
Хуваарилалт ажилласан гэж үзье, гэвч юу ч хариу өгөхгүй байна: тэгвэл гарц дээрх дамжуулалт, эсрэг талын буцах маршрут, тэдгээрийн хоорондын аливаа галт ханыг шалгана уу. Маршрут зам сонгодог, тэр нэвтрэх эрх өгдөггүй.