Къде трябва да пише своя журнал OpenVPN сървърът и защо
log, log-append и syslog се различават, а мениджърът на услуги пази собствено копие. Изберете един авторитетен поток, поддържайте жизнения цикъл четим и задайте срок на съхранение.
Дизайнът на журнала отговаря на три въпроса: кой процес е създал запис, къде попада този запис и колко дълго оцелява. OpenVPN може да пише във файл, да предава съобщения на системния логер или да ги оставя на това, което улови мениджърът на услуги, и това не са три копия на един поток. Всяка опция променя кой притежава ротацията, кой потребител може да прочете резултата и какво се случва при стартиране. Решете отговорите преди инцидент, защото след това наследявате това, което е конфигурирано.
Какво всъщност прави демонът с директивата
Директивите не са абстракции; всяка решава къде процесът пише съобщенията си. log /path отваря този файл, log-append /path го отваря за добавяне, а syslog предава съобщенията на локалния системен логер през своя сокет. Без нито една от тях изходът отива на стандартния изход и мениджърът на услуги решава какво следва. Прочетете действащия unit и профила заедно, преди да заключите, че демонът игнорира конфигурацията ви.
Последният случай е обичаен при пакетна инсталация и обяснява защо двама администратори не са съгласни къде живее журналът. Единият чете journal на unit, другият файл, който демонът никога не е писал.
Проверете работещата конфигурация, а не файла на диска. Презаписване на unit от тип drop-in или файл за среда могат да променят действащата директива, без да докосват профила, който четете.
log отрязва, log-append не
log отрязва съществуващ файл, когато директивата влезе в сила, затова рестарт изтрива доказателствата отпреди. log-append запазва това, което има, и добавя. Нито една опция не ротира нищо и нито една не отваря файла отново сама по-късно, затова ротацията изисква сътрудничество.
Ако ротацията преименува файла, докато демонът продължава да пише в стария дескриптор, новият файл остава празен и използването на диска продължава да расте в преименувания. Изпратете сигнал на процеса да отвори отново или ротирайте със стратегия копирай-и-отрежи и приемете прозореца на копиране.
Директорията, собствеността и правата са част от дизайна. Демонът може да работи като непривилегирован потребител след стартиране, а директория, създадена от root при инсталацията, тогава може да не е записваема. Подгответе я чрез пакетиране или процеса на внедряване, вместо да поправяте права по време на инцидент.
Мениджърът на услуги пази второ копие
systemd прихваща стандартния изход и стандартната грешка по подразбиране, затова unit без изрично пренасочване вече има журнал. Добавянето на файлова директива дава два потока с различно съхранение, читатели и времеви марки.
Това не е автоматично грешно, но трябва да бъде решение. Запазете записа за стартиране в journal, защото отказите преди съществуването на конфигурирания файл не се появяват никъде другаде. След това направете файла авторитетен за събитията в стабилен режим и кажете това в runbook. Два авторитетни потока означават два отговора на всеки въпрос.
Потвърдете избора с тест, който се проваля нарочно. Стартирайте демона с нечетим сертификат и проверете кой поток записва грешката.
Подробността не е същото като използваема подробност
По-високо ниво на verb добавя повече редове, а след определена точка редове, които никой не чете. Ниво 3 е разумно стабилно състояние за повечето внедрявания, докато ниво 4 и нагоре подхожда на ограничено разследване с известен въпрос. Потискането на повторенията намалява шума, но не бива да скрива колко често събитие се повтаря. Задайте нивото, което можете да поддържате, и го повишавайте само за наименувано разследване с край.
Запазете идентичността на инстанцията и времевите марки в записа. Повторното свързване изглежда точно като първото, когато файлът се допълва от месеци и името на инстанцията липсва.
Внимавайте какво още попада в този файл. Пренасоченият изход може да включва текст от извикани скриптове, а помощна програма, която отпечатва средата си, поставя удостоверения и пътища до ключове в четим журнал. Отнасяйте се към достъпа до журнала като към решение за сигурност, дори когато самият демон не отпечатва нищо чувствително.
Ротация, съхранение и сигналите, които презареждат
Решете срока на съхранение с този, който притежава диска, и го задайте, преди томът да реши вместо вас. Сигналът за презареждане не е команда за поддръжка на журнала: изпращането на грешния рестартира тунела и прекъсва всеки потребител. Запишете процедурата за повторно отваряне до правилото за ротация, за да не се разминат двете.
Резултатът трябва да е услуга, която операторът може да опише: един авторитетен поток, всяко събитие поставено в жизнения цикъл и запис, който се получава без събиране на всеки файл с тайни на хоста. Това описание е тестът за приемане на дизайна и проверката му преди следващия инцидент е евтина.