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

Екі сұранысты ажыратыңыз

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

Community OpenVPN 2.x ішінде askpass кілттің құпиясөзін бірінші жолында ұстайтын файлды көрсетеді, ал auth-user-pass бір жолында пайдаланушы аты, келесі жолында құпиясөз бар файлды көрсетеді. Екі файлдың ешқайсысы екінші опцияны қанағаттандыра алмайды. Жұмыс үстелі қолданбасы немесе NetworkManager профилі екеуін де өз құпия қоймасында ұстауы мүмкін, оны пәрмен жолы клиенті ешқашан оқымайды, сондықтан кез келген жолды жазбас бұрын қай клиентті конфигурациялап жатқаныңызды белгілеп қойыңыз.

Екі опцияны да оқылатын файлдарға бағыттаңыз

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

key /etc/openvpn/client/office.key
askpass /etc/openvpn/client/office-key.pass
auth-user-pass /etc/openvpn/client/office-login.auth

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

Абсолютті жолдар жұмыс каталогы туралы сұрақты алып тастайды, бірақ қатынас бермейді. Одан кейін иелік, режим және өткіштік келеді, ал үшеуі де процесс жұмыс істейтін тіркелгіге қатысты тексеріледі.

Профильге дейін unit конфигурациясын оқыңыз

Дайындалымның қай конфигурацияны жүктейтінін unit шешеді, сіз өңдеп жатқан файл емес. Оның пәрмен жолы мен барлық drop-in жазбаларын оқыңыз, содан кейін жұмыс каталогы арқылы шын мәнінде қолданылатын профильге жетіңіз. Басқа .ovpn файлына қосылған құпиясөз сілтемесі бұл дайындалым үшін ештеңе өзгертпейді.

Үш тек оқуға арналған пәрмен оның көбіне жауап береді. Біріншісі unit пен барлық drop-in жазбаларын, екіншісі процесті шектейтін сәйкестік пен sandbox параметрлерін, үшіншісі соңғы іске қосудың шын мәнінде неден шағымданғанын басып шығарады. Хостта бар дайындалым атауын қолданыңыз:

systemctl cat [email protected]
systemctl show [email protected] -p User -p Group -p WorkingDirectory -p ProtectHome
journalctl -u [email protected] -b

ProtectHome пен профильдің өз user, group және chroot опцияларына назар аударыңыз. Үй каталогының астындағы файл shell-іңізде оқылатын болуы мүмкін, ал үй каталогтары жасырылған соң қызметтің ішінде көрінбейді. systemd іске қосатын тіркелгі әрқашан кілтті соңында ашатын тіркелгі бола бермейді.

Орындалу сәйкестігі екі файлды да аша алатынын дәлелдеңіз

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

namei -l /etc/openvpn/client/office-key.pass
sudo -u openvpn test -r /etc/openvpn/client/office-key.pass && echo readable

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

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

Алғашқы іске қосуды, содан кейін қайта қосылуды тексеріңіз

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

Журнал жолы үшеуінің қайсысы екенін айтады. Түзету қай кіріс сәтсіз болғанынан шығады:

What the journal showsWhich input failedWhere to look
A path that cannot be openedThe file the profile namesAskpass or login path, and the unit's working directory
A key decryption errorThe key passphraseFirst line of the askpass file, and read access for the runtime identity
AUTH_FAILED from the serverThe account credentialsLogin file contents, and whether the account is still valid

Содан кейін сізге шын мәнінде қажет өмірлік циклді сынаңыз: жүктелу кезінде іске қосу және кез келген қолдау көрсетілген қайта қосылу, тек shell-ден қолмен іске қосу емес. auth-nocache кезінде кірістер бірінші қолданыстан кейін тасталады, сондықтан кейінгі қайта қосылуға әлі де оқылатын көз керек. Жұмыс үстеліне кіргенде ашылатын кілт сақинасы біреу кірмей тұрып іске қосылған қызметке қолжетімсіз, және қолмен сынақтың өтіп, қайта жүктеудің сәтсіз болуының кәдімгі себебі осы. Егер алғашқы іске қосу сәтті болып, кейінгі қайта қосылу сәтсіз болса, рұқсаттарды қайта өзгертудің алдында қайта қосылу оқиғасы үшін журналды оқыңыз.

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

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