Запуск OpenVPN через SSH запускає його на віддаленій машині, у контексті виконання цієї машини. Це робить його зміною у віддаленій мережі, а не простим натисканням кнопки здалеку. Два розумні режими — сеанс на передньому плані під наглядом і власна служба, і вони мають різну підготовку, різні облікові дані та різну поведінку при збої.

Два режими, один профіль

Обидва режими використовують той самий профіль і обидва змінюють маршрутизацію на хості. Відрізняється те, хто присутній під час запуску, і що відбувається після завершення сеансу.

ModeUseful forWhat it needs
Supervised foreground sessionA connection with a human watching and able to typeA usable terminal, a reviewed profile and recovery access
Managed serviceAn unattended lifecycle that starts without a loginOwned configuration, supported credential delivery and restart policy

Режим переднього плану призначений для з’єднання під наглядом, коли поруч є людина. Режим служби призначений для з’єднання, яке має піднятися без чийогось входу. Змішувати їх, залишаючи процес переднього плану працювати й одночасно вмикаючи службу на тому самому профілі, — найчастіша саморобна поломка тут.

Що насправді являє собою сеанс на передньому плані

Процес OpenVPN на передньому плані має продовжувати працювати, поки тунель піднятий. Initialization Sequence Completed означає, що ініціалізація завершена, а не те, що треба чекати повернення запрошення. Графічна оболонка робочого столу ховає цю довгу роботу за вікном, і саме тому люди очікують, що команда SSH поводитиметься так само. Вона так не поводиться.

Перевірте доступ програми окремо. Зайнятий термінал і один рядок журналу не доводять ні успіху, ні відмови.

Що потрібно службі без нагляду

Служба запускається зі своїм обліковим записом, робочим каталогом і обмеженнями файлової системи, і все це відрізняється від вашої оболонки. Використовуйте явні шляхи та відповідного власника, а не покладайтеся на те, де ви випадково стояли. Дайте юніту політику перезапуску, яку ви справді хочете, бо цикл підключення без відступу заповнює журнал і дратує партнера. Потім перевірте, що вона піднімається після перезавантаження, а не після вашого наступного входу.

Інтерактивна MFA ламає сценарій без нагляду за задумом. Якщо профіль потребує коду, який вводить людина, це не служба без нагляду, а збережений одноразовий код — не проєкт облікових даних. Вирішіть це свідомо, а не виявляйте під час завантаження.

Облікові дані — це чотири різні входи

У посібнику OpenVPN розділено введення з консолі, файли облікових даних, парольні фрази закритого ключа та взаємодію під керуванням інтерфейсу керування. Пара імені користувача й пароля — це одне, а парольна фраза зашифрованого ключа — інше. Інтерфейс керування, який видає облікові дані на запит, — третє. Виберіть механізм, що відповідає вашому проєкту автентифікації, замість склеювати все в один файл, бо це одного разу спрацювало.

Захищайте профілі та журнали, які несуть ідентичність або приватний матеріал. Їх читає обліковий запис служби, а також будь-хто з правильним членством у групі.

Один власник і шлях назад

Збережіть свій шлях адміністрування через SSH, перш ніж увімкнути широкий маршрут тунелю. Конфігурація повного тунелю з кінцевою точкою, що вмирає, може залишити машину недосяжною, і тоді виправлення вимагатиме консолі, яку ви не підготували. Схвалена зовнішня консоль або свідома політика повернення керування — це страховка.

Виберіть одного власника конфігурації для повсякденної роботи. Автоматична служба й процес переднього плану, що конкурують за одні й ті самі інтерфейси, маршрути та стан резолвера, дають відмови, які виглядають як проблема провайдера. Зупиняйте сеанс під наглядом його звичайним перериванням, а керований — через його менеджер, замість убивати кожен процес з іменем openvpn.

Різниця, яку варто записати, проста: сеанс під наглядом може залежати від вашого сеансу, а служба без нагляду — ні.

Схожі статті