Хэн нэгэн tun1-г урьдчилан үүсгэсэн, профайл dev tun1 гэж бичсэн боловч холболт одоо ч холбогдохгүй байна. Хост дээр нэр байгаа нь бараг юу ч хэлэхгүй, учир нь холбогдох нь нэрийн орон зай, төхөөрөмжийн төрөл, холбоосыг хэн эзэмшиж байгаа, демонд юу зөвшөөрөгдсөнөөс хамаарна. Төхөөрөмжийг дахин ашиглах нь анхдагч тохиргооны нуудаг шийдвэрийг мөн тулгадаг: хаяг, маршрутыг аль бүрэлдэхүүн бичдэг вэ. Хоёр зохион байгуулалтын доголдлын хэв маяг нь тохиргооны мөрүүдээс хамаагүй илүү ялгаатай тул профайлыг засахын өмнө шийднэ үү.

Нэр бол холболт биш

dev tun1 OpenVPN-оос тэр нэртэй интерфэйсийг шаардаж, уламжлалт хэрэглэгчийн орон зайн бүтээцүүд түүнийг нээхийг оролдоно. Хэрэв нэр нь ердийн tun эсвэл tap загварыг дагахгүй бол профайлд тохирох dev-type бас хэрэгтэй, учир нь төрлийг хэзээ ч мөрнөөс гаргадаггүй. TAP төхөөрөмж нь өөр шошготой TUN төхөөрөмж биш: бурууг холбох нь эсвэл шууд бүтэлгүйтэх, эсвэл хэн ч хүлээхгүй фрейм зөөдөг холбоос үүсгэдэг. Бүхнээс өмнө төрлийг шалгаарай, учир нь дараагийн шалгалт бүр хоёр тал үүн дээр санал нэгдсэн гэж үздэг. Дараа нь процесс төхөөрөмжийг үнэхээр нээж чадах эсэхийг, зөвхөн харж чадах эсэхийг биш, баталгаажуулаарай.

dev tun1
dev-type tun

Сүлжээний интерфэйс ба /dev/net/tun нь өөр объектууд: нэг нь нэрийн орон зай доторх холбоос, нөгөө нь хэрэглэгчийн орон зайн програм холбогдоход ашигладаг тэмдэгт төхөөрөмж юм. Linux TUN/TAP баримт бичиг тэр холболтын зам болон байнгын төхөөрөмжийн эзэмшлийн дүрмийг тайлбарладаг. ip link-г ажиллуулж чадах root бүрхүүл нь бүрхүүлд эрх байгааг л батална, демонд байгааг биш. Төхөөрөмжийн зангилааны эзэмшил, үйлчилгээний чадварын багц, түүний ажиллаж буй хэрэглэгч — бүгд нийцсэн байх ёстой, нээх нь амжилттай болохын өмнө.

Оршиж байгаа ч нээгдэхгүй төхөөрөмж нь эзэмшлийн асуудал, маршрутын асуудал биш. Алдаа засах үед тэгж үзээрэй, эс бөгөөс үдээс хойш хэзээ ч асуудал байгаагүй маршрутын хүснэгт уншихад өнгөрнө.

Холбоосыг хэн тохируулах вэ: эзэмшлийн хоёр загвар

Эхний загварт OpenVPN холболтыг өргөх хэсгийн хувьд хаяг, маршрутыг тохируулдаг. Энэ нь анхдагч зан төлөв бөгөөд хамгийн хялбар ойлгогдох, учир нь нэг бүрэлдэхүүн төлөвийг үүсгээд дахин арилгадаг. Хоёр дахь загварт интерфэйсийг гадаад менежер эзэмшиж, ifconfig-noexec OpenVPN-д хаягийн тохиргооны командуудыг ажиллуулахыг хориглож, параметрүүдийг скриптүүдэд дамжуулдаг. Тэгвэл менежер зөв орон нутгийн болон түншийн тохиргоог өөрөө хэрэглэх ёстой бөгөөд энэ нь сонголтын нэрээс илүү ажил юм. Аль нэгийг сонгох нь холбоос өргөгдсөн үед хэн үүнийг өөрчилж болох тухай асуудал юм.

ifconfig-noexec зөвхөн хаяг хамардаг: маршрутын хүснэгт хөндөгдөхгүй, харин маршрутын тохиргоо route-noexec-д хамаарна. Хоёр зааврыг өөр өөр эзэмшигчтэй тусдаа удирдлага гэж үзээрэй, учир нь нэгийг тохируулаад нөгөөг нь таамаглах нь хагас тохируулсан холбоосын нийтлэг эх сурвалж юм. Давхарга бүрт яг нэг эзэмшигч сонго, хаяг нэг газар, маршрут нэг газар. Сүлжээний менежер болон VPN туслах хоёулаа хаяг бичих нь холболт тасрахад нөгөө тал хараахан найдаж буй төлөвийг устгах арга юм.

Төхөөрөмжийг чухал нэрийн орон зайнаас шалгаарай

Төхөөрөмжийг VPN процесс ажиллаж буй нэрийн орон зайнаас шалгаарай, бүрхүүл тань санамсаргүй байгаа газраас биш. Доорх хоёр команд өөр асуултад хариулдаг бөгөөд хост контейнер харж чадахгүй интерфэйс харах үед ялгаа илэрдэг. Тэдгээрийг өгөгдсөн дарааллаар ажиллуулаарай, учир нь хоёр дахь нь холбоос байгаа эсэхийг мэдсэний дараа л утга учиртай.

ip -details link show dev tun1
ip tuntap show

Эхний команд холбоосыг цөм харж байгаагаар нь хэвлэдэг, тугууд болон интерфэйсийн төрлийг оролцуулан, ингэснээр энэ нь таны санаж байсан төхөөрөмж гэдгийг батална. Хоёр дахь нь байнгын tun/tap бичлэгүүдийг жагсаадаг бөгөөд тэдгээр нь ямар ч процесс барихгүйгээр оршино. Өөрийн томилогдсон эзэмшигчийг хүлээж буй интерфэйс нь өөр VPN-д холбогдсон амьд туннелээс өөр нөхцөл бөгөөд зөвхөн хоёр дахь нь таны өөрийн холболт яагаад бүтэлгүйтэж байгааг тайлбарладаг. Ямар нэгэн зүйл өөрчлөхийн өмнө төхөөрөмжийг барьж буй процессыг олоорой, учир нь байнгын бичлэг болон завгүй интерфэйсийн шийдэл өөр өөр.

Олон дарааллын дэмжлэг нь өөрийн шаардлагатай драйверын тодорхой зохион байгуулалт бөгөөд хамааралгүй процессууд нэг интерфэйсийг хуваалцах зөвшөөрөл биш. Өөр эзэмшигчийн амьд сесс нь зохицуулалтын асуудал бөгөөд ямар ч профайл засвар үүнийг шийдэхгүй.

Байнгын байдлын хоёр төрөл

Цөмийн байнгын байдал ба persist-tun нь андуурахад хялбар, төөрөлдөхөд үнэтэй амьдралын хугацааг тодорхойлдог. Байнгын төхөөрөмж нь аливаа процессоос үл хамааран оршиж, зогсолтыг даван туулж, дараагийн эхлэл үүнийг дахин ашиглаж болно. persist-tun нэг OpenVPN процессын дотор дэмжигдсэн зөөлөн дахин ачааллын туршид нөөцийг хадгалдаг, хамаагүй богино тэнгэрийн хаяа. Аль нь ч үйлчилгээг зогсооход маршрут, хаяг байрандаа үлдэнэ гэж амладаггүй бөгөөд харагдсаар байгаа интерфэйс нь ажиллаж буй шифрлэгдсэн сессийн нотолгоо биш.

Backend-ийг мөн баталгаажуулаарай, учир нь урьдчилан үүсгэсэн интерфэйс түүнийг аль хэрэгжүүлэлт нээхийг юу ч хэлэхгүй. Шууд өгөгдлийн зам агуулсан нийгэмлэгийн бүтээцүүд, дизайн өөрөөр заагаагүй бол түүнийг ашиглахыг оролдоно. Хувилбар энэ унтраалгыг дэмждэг газарт disable-dco оронд нь хэрэглэгчийн орон зайн замыг сонгодог; хуучин хөдөлгүүр болон бусад клиентэд ийм заавар байхгүй тул хувилбарын нөхцөлийг сонголтын хажууд байлгаарай, хэрэгжинэ гэж бүү үзээрэй.

Зөвхөн эхлэлийг шалгахад юу эвдэрдэг вэ

Эзэмшлийн тохиролцоо эхний шалгалтад тэнцэж, сүүлчийнхэд бүтэлгүйтэж болох нь эхлэлийг дангаараа сул шалгалт болгодог. Оронд нь хоёр шилжилтийг ажиглаарай: зөөлөн дахин ачаалал, бүрэн зогсолт ба түүний дараах эхлэл.

systemctl status openvpn-client@lab
ip -details link show dev tun1

Эхлэл бол хялбар тохиолдол: нэгж өргөгдөж, холбоос гарч ирэх бөгөөд төлөвийн гаралт ачаалагдсан профайлыг нэрлэнэ. Холбогдох нь демон төхөөрөмжийг нээх мөч тул холбоосын шалгалтыг нэгж идэвхтэй гэж мэдээлсний дараа ажиллуулаарай, түүнээс өмнө биш. Хэрэв төлөв хараахан идэвхжиж байхад холбоос оршиж байвал та одоо хүртэл хэн ч холбогдоогүй байнгын төхөөрөмжийг харж байна, ажиллаж буй туннель биш. Үргэлжлүүлэхийн өмнө холбоосоор бодит урсгал дамжуулаарай, учир нь ашиглах боломжтой маршрутгүй холбогдсон интерфэйс ч мөн бүтэлгүйтэл юм.

kill -SIGHUP $(pidof openvpn)
journalctl -u openvpn-client@lab -n 40
systemctl stop openvpn-client@lab
ip -details link show dev tun1

Зөөлөн дахин ачаалал нь сессийг ашиглахад тохиромжтой, нөөцийг бүрэн бүтэн үлдээх ёстой бөгөөд яг энэ ажлыг persist-tun хийдэг. Бүрэн зогсолт нь гадаад менежер өөрийгөө илчилдэг газар: хэрэв холбоос эсвэл түүний хаягууд зогсолтыг даван туулбал тэднийг өөр хэн нэгэн эзэмшиж байна, энэ нь таны баримтжуулсан төлөв эсвэл саяхан олсон алдаа юм. Хоёр ажиглалтыг профайлын хажууд тэмдэглээрэй, дараагийн өөрчлөлт диаграмаас биш, нотолгооноос эхлэх болтугай.

Холбоотой нийтлэлүүд