up болон down дэгээнүүдээр OpenVPN клиентийн ажиллах хугацааг хэрхэн хэмжих вэ
OpenVPN-д ажиллах хугацааны тоолуур байхгүй. up дэгээнээс epoch тамгыг хадгалж, down үед устгаж, хасч, дахин эхлүүлэлт ба хувилбаруудын хооронд үнэнч байлгаарай.
Хяналтын самбар холболт хэр удаан идэвхтэй байгааг асуудаг бөгөөд OpenVPN үүнийг өгдөггүй. Клиент өөрийн туннель хэзээ өргөгдсөнийг мэддэг, гэхдээ сессийн төлөв алдагдахаас өмнө хэн нэгэн тэр мөчийг тэмдэглэсэн тохиолдолд л мэддэг. Дэмжигдсэн газар нь up дэгээ бөгөөд хадгалах нь зүйтэй утга нь форматласан тэмдэгт мөр биш, түүхий epoch секунд юм. Үүний дараах бүхэн нь арифметик бөгөөд тоо үнэнч хэвээр үлдэх эсэхийг шийдэх хэдэн дэс дарааны дүрэм нэмэгдэнэ.
Дэгээнүүд үнэхээр ажиллаж байгааг баталгаажуулаарай
Эргэн тойронд нь ямар нэгэн зүйл зохион бүтээхээс өмнө дэгээ ажиллаж байгааг нотлоорой. Хамгийн бага клиентийн тохиргоонд script-security 2 болон тодорхой замууд up ба down хэрэгтэй; аюулгүй байдлын мөргүй бол OpenVPN скриптийг ажиллуулахаас татгалзаж, үүнийг шууд хэлдэг. Нэгэн зэрэг up-restart ба down-pre нэмээрэй, ингэснээр дахин эхлүүлэлт болон буулгах замууд урьдчилан таамаглахуйц ажиллана.
Дэгээний эхний хувилбарыг өөрийн орчныг файлд нэмж, өөр юу ч хийдэггүй болгоорой. Энэ нь таны бүтээц үнэхээр экспортолж буй хувьсагчийн нэрсийг хэлж өгнө, жишээ нь dev ба script_type, өөр хувилбараас санаж байгаа нэрсийн оронд. Нэг холболт, нэг салгалтыг ажиллуулаад файлыг уншаарай. Юу ч харагдахгүй бол энд зогсоорой, учир нь хэзээ ч ажилладаггүй дэгээн дээрх цаг тамгын загвар долоо хоногийн турш хяналтын доголдол мэт харагдана.
Дэгээ ямар хэрэглэгчийн эрхээр ажиллаж байгааг шалгаарай. user ба group тохируулсан үед OpenVPN скриптүүдийг ажиллуулахаас өмнө эрхээ орхидог тул root бичиж чадах хавтас дэгээнд хаалттай байж болно. Замыг өөрийн shell-ийн бус, үйлчилгээний өнцгөөс сонгоорой.
Нэг epoch утгыг бүртгэж, зориуд устгаарай
up дэгээнд нэг мөр хэрэгтэй, date +%s > /run/openvpn-client.started, зам нь хувилбар бүрт тохируулагдана. Epoch утга нь хожим хэл, цагийн бүс, форматын асуултаас зайлсхийх бөгөөд хяналтын агент өөрийн цагтай харьцуулж болох ижил тоо юм.
Устгах нь бичихтэй адил чухал. down дэгээ файлыг хоослох эсвэл устгах ёстой бөгөөд down-pre үүнийг интерфейс хаагдахаас өмнө хийдэг, энэ нь аль хэдийн явсан туннелийг файл дүрсэлсэн цонхыг арилгана. up-restart дараа нь дотоод дахин эхлүүлэлтийн үед тамгыг шинэчилдэг, анхны утгыг байранд нь үлдээхийн оронд. Тэр хосгүй бол ping хугацаа дууссаны дараах дахин эхлүүлэлт туннель дахин тогтох хооронд өссөөр байх тоог өгдөг.
Зөв насжилттай газрыг сонгоорой. /run доорх файл дахин ачаалахад алга болдог, энэ нь бодит байдалтай нийцнэ, харин /tmp доорх файл урьдчилан таамаглахгүй цэвэрлэгдэж болох бөгөөд тохиргооны хавтас дахь файл төөрөгдүүлэх байдлаар үлддэг. Зөвхөн үйлчилгээний хэрэглэгч болон хяналтын уншигч уншиж чадахаар зөвшөөрөл тохируулна уу.
Бүртгэлийн мөрүүдэд итгэхгүйгээр ажиллах хугацааг тооцоол
Хадгалсан секундыг унш, одоогийн секундыг унш, хас. Файл байхгүй эсвэл хоосон үед үнэнч хариулт нь туннель идэвхтэй биш гэсэн үг, ажиллах хугацаа тэг гэсэн үг биш, учир нь эдгээр хоёр төлөв өөр өөр анхааруулга өгөх ёстой. Хяналтын ачаалалд түүхий секундыг үлдээж, өдөр, цагийг харуулах давхаргад форматлаарай. Экспортлогчийн дотор дугуйруулдаг форматлагч нь ослын үед хэн нэгэнд хэрэгтэй болох нарийвчлалыг хаядаг.
Бүртгэлийн цаг тамгыг задлан шинжлэх нь уруу татдаг богино зам бөгөөд гурван талаар бүтэлгүйтдэг: формат нь тохируулсан сонголтыг дагадаг, эргэлт нь түүхийг устгадаг, дахин холболтууд нэг тасралтгүй туннель биш тусдаа сесс хэлбэрээр харагдана. Дэгээ үйл явдлыг нэг удаа, болсон тэр мөчид бүртгэдэг.
Шалгалт өөр хост дээр ажиллах үед үргэлжлэх хугацааны оронд цаг тамгыг илгээгээрэй, ингэснээр уншигч өөрийн цагийг хэрэглэнэ. Тэгвэл бага зэргийн сөрөг үр дүн эвдэрсэн дэгээ биш, цагийн зөрүү гэж уншигдана.
Дахин холболт, дахин эхлүүлэлт, олон хувилбарыг хамарна уу
Нэг хост дээр хоёр туннель хоёр файл шаарддаг бөгөөд түлхүүр нь үйлчилгээний аль хэдийн ашигладаг хувилбарын нэр юм. Хуваалцсан зам гэдэг нь хамгийн сүүлийн холболт профайл бүрийн эхлэх цагийг дарж бичдэг бөгөөд шинж тэмдэг нь хоёр дахь туннель эхлэхэд ухрах тоо юм.
Дахин холболтын зан төлөв нь өөрийн гэсэн туршилт хийх ёстой, учир нь яг тэнд үнэмшилтэй загвар чимээгүйхэн буруу зүйлийг мэдээлдэг. Партнерыг унагаж эсвэл процесст сигнал илгээж дахин эхлүүлэлтийг албадаж, дараа нь интерфейсийн төлөвийг файлтай харьцуулаарай. Туннель буцаж ирэх мөчид цаг тамга урагшлах ёстой.
Серверийн талд төлөвийн файл клиент бүрт connected-since утгыг агуулдаг бөгөөд энэ нь өөр асуултад хариулна: сервер тэр партнерыг хамгийн сүүлд хэзээ харсан бэ. Үүнийг орлуулагч биш, хөндлөн шалгалтад ашиглаарай, учир нь энэ нь дүрсэлж буй сессийн хамт алга болдог. Хоёр хэмжилтийн аль нь ч туннелийн ард байгаа аппликейшны эрүүл мэндийн талаар юу ч хэлдэггүй.
Эрэмбийн алдааг барьдаг гурван шалгалтыг ажиллуул
Энгийн холболт, албадмал дахин холболт, цэвэр зогсолтыг туршиж, тус бүрийн дараа интерфейсийн жагсаалт болон файлыг хамт уншаарай. Цэвэр зогсолтын дараа ч байгаа тамга, эсвэл интерфейсийн жагсаалтад байхгүй туннелийг батлах файл нь шууд дэгээнүүдийн эрэмбэд заана. Шалгалтуудыг үйлчилгээний хэрэглэгчээр болон үйлчилгээний замаар ажиллуулаарай, учир нь root shell өөр файл харж, итгэлтэйгээр буруу хариулт өгч болно. Дараа нь удаан асуудагчийг файл уншихад үлдээж, түүнд хэзээ ч бичихгүй гэдгийг баталгаажуулаарай.
Жаран секунд тутамд хийх асуулга нь анхааруулгыг хамардаг бөгөөд ямар ч дэгээ тэр асуудагч амьд байх ёстой гэж найдаж болохгүй. Энэ хоёр хариуцлагыг тусдаа байлгавал аль ч тал дахин байршуулагдсан ч тоо итгэмжлэгдсэн хэвээр үлдэнэ.