Қызмет іске қосылады, клиент қосылады, бірақ сервер жағында маршрут ешқашан пайда болмайды. Немесе демон іске қосылудан бас тартып, орындай алмаған команданы атайды. Екі нәтиже де әдетте қатайту нұсқаулығынан бірге көшірілетін бірдей үш жолға сүйенеді: артықшылығы жоқ тіркелгіге ауысу, топтан бас тарту және файл жүйесінің түбірін өзгерту. Үшеуінің тек біреуі ғана файлдарды жасырады және тек біреуі маршруттау кестесін өзгерту құқығын алып тастайды. Оларды бөлу - қай жол керектігін білудің жолы.

Түрме алып тастайтын, бірақ демонға әлі қажет нәрселер

Түбірді өзгерту іске қосылғаннан кейін орын алады, сондықтан демон бұрын ашқанның бәрін сақтайды және кейін ашатынның бәрін жоғалтады. Қосылым осы сәттен кейін іске қосатын кез келген көмекші жаңа түбірдің ішінде, жүктейтін ортақ кітапханалармен бірге болуы керек. Конфигурация файлы мен сертификаттан құрылған түрмеде екеуі де жоқ.

Артықшылығы жоқ тіркелгіге ауысу - бөлек шектеу. Түбірден бас тартқан процесс екілік файл дәл сол жерде болса да маршруттарды өзгерте алмауы немесе интерфейсті көтере алмауы мүмкін, сондықтан екі ақауды бөлек диагностикалау керек.

Қандай түзету керек екенін үш шарт шешеді

Бірінші шарт - құрастыруыңыз маршруттарды қалай орнататыны. Жаңа OpenVPN нұсқалары интерфейс пен маршруттау кестесін процесс ішінде конфигурациялайды, ал ескі пакеттер мен жеке параметрлер сыртқы құралдарға немесе up және down скрипттеріне сүйенеді. Журнал команданы атаса, істе сыртқы құрал бар және түрме оны жасырады. Журнал оның орнына рұқсат қатесін көрсетсе, мәселе тіркелгіде.

Екіншісі - техникалық қызмет. Көшірілген екілік файлдары бар түрмені оларды беретін пакет әр жаңарғанда жаңарту керек, әйтпесе бірінші жаңарту артында сынған туннель қалдырады. Үшіншісі - белгілі бір бақылау шынымен chroot талап ете ме; егер талап шын мәнінде артықшылықтарды бөлу туралы болса, тіркелгіні өзгертудің өзі жеткілікті болуы мүмкін.

Signal in the logOther side of the boundaryRepair direction
Command not found after startupBinary and its libraries absent inside the new rootPopulate the jail, or drop the chroot line
Operation not permittedAccount lost the privilege to edit routesKeep the account privileged, or pre-create routes elsewhere
No such deviceJail lacks the tun device nodeCreate the node inside, or open it before the root change

Жұмыс істейтін түрмеде қандай болуы керек

Командаларды орындайтын түрмеге екілік файл, ол байланысатын әрбір кітапхана және демон кеш ашатын әрбір құрылғы түйіні қажет. Бөлшектерді көшіріп, оларды VPN жоқ күйде сынап көріңіз:

ldd /usr/sbin/ip
chroot /etc/openvpn/jail /sbin/ip route show
chroot /etc/openvpn/jail /sbin/ip link set tun0 up

Бірінші команда тәуелділіктерді тізімдейді және адамдар дәл соны өткізіп жібереді. Кітапхана таба алмаған көшірілген екілік файл жоқ екілік файлдан басқа хабарламамен сәтсіз аяқталады және екеуі де клиент жағынан оқығанда OpenVPN ақауы сияқты көрінеді. Команданы түрме ішінде қолмен орындау қызметті қайта іске қоспай-ақ ақауды қайталайды.

Конфигурацияны, сертификаттарды және болса CRL-ді де түрмеге көшіріңіз, себебі демон іске қосылғаннан кейін қайта оқуды күтетін файл түбір өзгергеннен кейін табылмайды. Нені көшіргеніңізді жазып қойыңыз, өйткені желілік пакеттің келесі жаңартуы түпнұсқаларды алмастырады және түрмені ескі көшірмеде қалдырады.

Оның орнына қатайтуды азайтыңыз

Егер түрме тек нұсқаулық солай дегендіктен болса, сол бір жолды алып тастап, тіркелгі шектеулерін сақтау қорғауға болатын нәтиже. Демон файл жүйесіне көзқарасын сақтайды және мәселеден құтылады, ал артықшылықтың төмендеуі ұзақ өмір сүретін процестен түбірді әлі де алып тастайды.

Не қалғанын және неге екенін жазыңыз. Бақылауды ескертусіз үнсіз жоғалтқан конфигурация - қатайтудың осылайша ауытқитыны, ал келесі аудит жолдың неге жоғалғанын сұрайды.

Таңдамас бұрын үш жолды бөліңіз

Конфигурацияны көшіріңіз, үш директиваны да өшіріңіз және клиент қосылатынын және күтілетін маршруттар пайда болатынын растаңыз. Содан кейін тек тіркелгі жолдарын, одан кейін тек chroot-ты қайта қосыңыз. Туннель сынатын қадам шекараны көрсетеді, және ешқашан себеп болмаған түрмені қайта салудан аулақ боласыз.

Ол қайтадан маршруттағанда, жоғарырақ егжей-тегжейлік деңгейімен бір клиент сессиясын іске қосыңыз және команданы немесе сәтсіз болған рұқсатты атайтын жолды оқыңыз. Сол жол клиент соңында хабарлайтын тайм-ауттан құндырақ.

Қатысты мақалалар