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

Гэрээ нь нэг апп, нэг хувилбарын мужид хамаарна

OpenVPN Connect ба OpenVPN for Android нь өөр өөр апп бөгөөд нэг багцыг нэрлэсэн intent нөгөөд нь юу ч хийдэггүй. Даалгаварт хүрэхээс өмнө аль клиент суулгагдсан, харьцуулж буй зан үйлийг аль хувилбар үүсгэснийг баталгаажуулна уу. Android 3.3.2 буюу түүнээс шинэ Connect-ийн хувьд баримтжуулсан Tasker интеграц профайлын ID-г хүлээдэг. Харуулах нэрийн өмнө AS эсвэл PC тавьдаг хуучин заавар нь өмнөх гэрээг дүрсэлдэг бөгөөд тэдгээрийг одоогийн даалгаварт хуулах нь юу ч болохгүй байх нийтлэг шалтгаан юм.

Тэр хувилбарын хил нь өмнө нь ажилладаг байсан гэсэн ихэнх мэдээллийг тайлбарладаг. Апп функцээ эвдээгүй; функц юу хүлээн авахыг өөрчилсөн. Хувилбарын мужийг таны бичиж буй гэрээний нэг хэсэг гэж үзээрэй.

Таних тэмдэг хаанаас ирдэг

Хүссэн профайлыг Connect дотор нээж, профайлын ID-г профайлын өөрийнх нь дэлгэрэнгүй мэдээллээс хуулна уу. Жагсаалтаас таньдаг нэрийн оронд тэр утгыг ашиглана уу, учир нь нэр бол шошго, таних тэмдэг нь апп харьцуулдаг зүйл юм. Tasker дахь Send Intent үйлдлийн холболтын талбарууд доорх блоктой төстэй бөгөөд зөвхөн таних тэмдгийг сольсон. Хувийн болон ажлын профайлын апп хувилбарыг ч мөн нийцтэй байлгаарай.

Action: net.openvpn.openvpn.CONNECT
Extra: net.openvpn.openvpn.AUTOSTART_PROFILE_ID:'PROFILE_ID'
Extra: net.openvpn.openvpn.AUTOCONNECT:true
Package: net.openvpn.openvpn
Class: net.openvpn.unified.MainActivity
Target: Activity

Ажлын профайл дахь хуулбар ижил багцын нэртэй, өөр хадгалсан профайлтай бол intent-ийг хүлээн аваад тохирох профайл олохгүй бөгөөд энэ нь хамрах хүрээний алдаа биш, эвдэрсэн даалгавар мэт харагдана. Профайлыг дахин импортолсон эсвэл сольсон бол таних тэмдгийг сэжигтэй гэж үзэж дахин шалгана уу. Дахин импортлох нь харуулах нэр өөрчлөгдөөгүй ч ихэвчлэн шинэ профайлын бичлэг үүсгэдэг. Өөр зүйл өөрчлөхөөс өмнө таних тэмдгийг шалгана уу.

Холбоогүй талбаруудыг баримтжуулсан ёсоор хоосон орхино уу. Гарын авлага шаардаагүй ангилал, MIME төрөл, өгөгдлийн талбарууд Android intent-ийг хэрхэн шийдвэрлэхийг өөрчилж болох бөгөөд өөрөөр шийдэгдсэн intent аппыг профайлыг тань эхлүүлэхгүйгээр нээж болно.

Үйлдэл юу хийдэг, танд юу үлдээдэг

Холболтын intent-ийг илгээх нь аппаас профайл эхлүүлэхийг хүсдэг. Энэ нь тухайн профайлын шаарддаг зөвшөөрлийг тойрдоггүй. Connect асуулт харуулж болзошгүй тул баримтжуулсан бие даасан тохиолдол нэмэлт зөвшөөрөл, хадгалсан холболтын мэдээлэл байхгүй гэж үздэг. Уруу таталт нь нууц үг эсвэл хувийн түлхүүрийн нууцыг хуваалцсан Tasker экспортод шингээж, энэ хил хязгаарыг арилгах явдал юм.

Үүнийг бүү хий. Даалгаврын экспорт нь хүмүүс чатын урсгалд хуулдаг текст файл бөгөөд тэнд тавьсан нууцууд хуваалцсан тэр мөчид ил болдог. Профайлд шаардлагатай бол аппын өөрийн хадгалсан холболтын мэдээллийг ашиглаж, MFA-ийн асуултуудыг асуулт хэвээр үлдээгээрэй. Асуултаас хариултыг хадгалах замаар зайлсхийсэн бүхэн асуудлыг шийдэхийн оронд нууцыг зөөсөн.

Салгах тал өөрийн баримтжуулсан үйлдэлтэй бөгөөд энэ нь клиент рүү чиглэсэн заль биш:

Action: net.openvpn.openvpn.DISCONNECT
Extra: net.openvpn.openvpn.STOP:true
Package: net.openvpn.openvpn
Class: net.openvpn.unified.MainActivity
Target: Activity

Салгахыг албадахын тулд санаатайгаар байхгүй профайлд холбогдох нь хуучин урсгалд гарч, шинэчлэлтийн дараа чимээгүй бүтэлгүйтдэг түр шийдлийн төрөл юм. Тодорхой үйлдлийг ашиглана уу.

Дараагийн алхам ажиллахаас өмнө төлөвийг шалгана уу

Intent-ийн амжилттай эхлэл нь хүсэлт хүргэгдсэнийг нотолдог, туннель байгааг биш. Хэрэв даалгавар дараа нь дотоод апп нээвэл,тэр алхамд хугацааны хязгаартай бэлэн байдлын нөхцөл шаардлагатай. Илгээсний дараах шууд үйлдэл эцэстээ асуултад мөргөлдөнө.

$ adb shell cmd package resolve-activity --brief net.openvpn.openvpn
net.openvpn.openvpn/net.openvpn.unified.MainActivity
$ adb shell dumpsys activity activities | grep -i openvpn

resolve асуулга нь таны зорьж буй багц болон үйл ажиллагаа тэр төхөөрөмж дээр байгааг баталж, ангийн талбар дахь бичгийн алдааг үгүйсгэнэ. Үйл ажиллагааны гаргалгаа нь даалгавар ажилласны дараа үнэхээр юу урд талд байгааг харуулдаг бөгөөд апп холбогдохын оронд асуулт нээсэн эсэхийг харах хамгийн хямд арга юм. Бүтэлгүйтсэн даалгаврын дараа аль талбар буруу болохыг таамаглахын оронд хоёуланг нь ажиллуул. Ангийн нэрний зөрүү нь шууд алдаа өгдөг бол дутуу профайл ямар ч харагдах алдаа өгдөггүй.

Даалгаврыг илгээхээс өмнө салгалтын эзэмшлийг шийднэ үү. Өөр ажлын даалгавар хамааралтай туннелийг нураадаг товчлол нь шалтгаантайгаа огт адилгүй дэмжлэгийн тасалбар үүсгэнэ. Нэг клиентийг удирддаг хоёр автоматжуулалтыг барих нь бүртгэлээс засах боломжгүй уралдаан үүсгэдэг тул шинэ нь ажиллаж эхлэхэд хуучирсан үйлдлийг устгана уу.

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