Регистрирането е критичен аспект от управлението на Linux сървър. Съобщенията в журнала са полезни за анализ на основната причина и избягване на потенциални грешки в бъдеще. Анализирането и отстраняването на грешки в сървъра е основно умение както за ИТ инженерите, така и за системните администратори.
Това ръководство ще ви покаже как да настроите отдалечен сървър за регистриране, известен също като лог хост, в Linux. Хостът на лог ви позволява да агрегирате локални Linux регистрационни файлове към отдалечен централизиран сървър за лесен достъп и анализ.
Защо да имате специален лог сървър?
Операционната система Linux регистрира повечето дейности на вашия сървър за одит и отстраняване на грешки с помощта на демона syslog (протокол за регистриране на системата). Така че може би се чудите защо ми е необходим специален сървър за моите регистрационни файлове? Ето някои предимства пред наличието на специален сървър за регистриране:
- По-добра сигурност, тъй като сървърът за отдалечено регистриране има само няколко отворени порта навън.
- Подобрена производителност на сървъра, тъй като отдалеченият хост за регистриране не изпълнява много услуги, освен тези, използвани за регистриране.
- Улеснява архивирането и управлението на съобщенията в журнала.
Регистрационните съобщения са важни за одитиране на вашите сървъри и базова линия и са основна част от процедурите за превантивна поддръжка на вашата сървърна инфраструктура.
Стъпка 1: Инсталиране на rsyslog на Linux
Това ръководство се фокусира върху Ubuntu 20.04, но процесът трябва да бъде почти същият, ако използвате други масови дистрибуции на Linux.
rsyslog е услуга за отдалечено регистриране за Linux и се предлага предварително инсталирана по подразбиране в повечето съвременни дистрибуции на Linux, например Ubuntu и други базирани на Debian системи.
Услугата rsyslog е модерен и подобрен демон към syslog, който ви позволява само да управлявате регистрационни файлове локално. С демона rsyslog можете да изпращате вашите локални регистрационни файлове до някой конфигуриран отдалечен Linux сървър.
Ако нямате инсталиран rsyslog на вашия компютър, можете лесно да го направите, като използвате следната команда в базирани на Debian дистрибуции:
sudo apt инсталира rsyslog
На Red Hat Linux можете да го инсталирате, като напишете:
yum инсталирайте rsyslog
На Fedora и нейните производни стартирайте:
dnf инсталира rsyslog
За да инсталирате rsyslog на Arch Linux:
yay -S rsyslog
За да проверите състоянието на rsyslog, изпълнете следната команда:
systemctl състояние rsyslog
Изход:
Стъпка 2: Конфигуриране на сървъра на Log Host
Хостът на регистрационните файлове е сървърът, конфигуриран да получава регистрационни съобщения от други сървъри или компютри. Конфигурацията на rsyslog се намира в /etc/rsyslog.conf файл.
Можете да отворите /etc/rsyslog.conf файл с помощта на всеки текстов редактор по ваш избор. В това ръководство ще използваме Vim.
Ще ви трябват повишени привилегии, за да правите промени в конфигурационния файл.
Преди да започнете да редактирате конфигурационния файл, трябва да направите резервно копие или копие на файла. За да направите това, изпълнете командата:
sudo cp /etc/rsyslog.conf /etc/rsyslog_original.config
След това отворете /etc/rsyslog.conf файл с помощта на текстов редактор.
sudo vim /etc/rsyslog.conf
Има два протокола, които можете да използвате за изпращане/получаване на лог файлове с rsyslog: TCP и UDP. Това ръководство ви показва как да конфигурирате и двете.
Не е необходимо да конфигурирате UDP и TCP, за да работите отдалечено регистриране. Изберете само едно от двете.
Ако предпочитате да използвате UDP, потърсете и разкоментирайте следните редове, като премахнете водещите Паунд (#) символ пред редовете. Можете да намерите тези редове под секцията за модули на конфигурационния файл.
модул (load="imudp")
вход (type="imudp" port="514")
Ако предпочитате да използвате TCP, разкоментирайте следните редове, като премахнете водещите Паунд (#) символ, разположен в началото на редовете:
модул (load="imtcp")
вход (type="imtcp" port="514")
Следната фигура показва конфигурационния файл rsyslog, конфигуриран да използва UDP комуникация:
След това конфигурирайте местоположението, където rsyslog ще съхранява вашите регистрационни файлове. За по-добра организация трябва да категоризирате входящите журнали по произход. Дефинирайте шаблон във вашия rsyslog конфигурационен файл, като добавите следните редове:
$template remote-incoming-logs, "/var/log/remote/%HOSTNAME%".log
*.* ?remote-incoming-logs
Гореспоменатите редове командват rsyslog за съхраняване на регистрационните файлове в папката /var/log/remote/hostname, където име на хост е името на отдалечения клиент, който изпраща регистрационни съобщения до хоста на журнала.
Сега запазете промените, които сте направили. Ако използвате Vim, ето как да запазите и излезете от файл.
Накрая рестартирайте услугите rsyslog, за да влязат в сила промените, които сте направили.
sudo systemctl рестартирайте rsyslog
Стъпка 3: Конфигуриране на вашата защитна стена
Ако вашата защитна стена е активирана, уверете се, че портът, който сте конфигурирали по-горе, е в състояние да комуникира с външния свят. Ще трябва да редактирате правилата на защитната си стена, за да разрешите входящи регистрационни файлове.
За базирани на Debian дистрибуции просто използвайте инструмента UFW, за да активирате или UDP, или TCP протокол за прехвърляне.
Свързани: Как да конфигурирате защитната стена в Ubuntu с помощта на UFW
Ако използвате UDP, изпълнете следната команда, където 514 е номерът на конфигурирания порт:
sudo ufw 514/udp
Ако използвате TCP на порт 514, просто изпълнете:
sudo ufw 514/tcp
На Fedora можете да използвате защитна стена-cmd за постигане на подобни резултати.
firewall-cmd --zone=zone --add-port=514/udp
За Red Hat Linux отворете iptables файл, намиращ се на адрес /etc/sysconfig/iptables като използвате вашия текстов редактор по избор и добавете следното правило:
-A INPUT -m състояние --state НОВО -m udp -p udp --dport 514 -j ПРИЕМАНЕ
Рестартирайте услугата iptables, за да влязат в сила промените.
рестартиране на услугата iptables
Стъпка 4: Конфигуриране на клиента за регистриране
Клиентът е машината, която изпраща своите регистрационни файлове към отдалечен или централизиран сървър на лог хост. Отворете конфигурационния файл rsyslog, който се намира на адрес /etc/rsyslog.conf:
sudo vim /etc/rsyslog.conf
Добавете следния ред, ако използвате UDP, къде 192.168.12.123 е IP адресът на отдалечения сървър, вие ще пишете вашите регистрационни файлове на:
*.* @192.168.12.123:514
Ако използвате TCP, добавете следния ред вместо това. Имайте предвид, че линията има две @ символи.
*.* @@192.168.12.123:514
Запазете промените си и рестартирайте услугата rsyslog на клиента с командата:
sudo systemctl рестартирайте rsyslog
Стъпка 5: Преглед на регистрационните съобщения на сървъра
Можете да използвате SSH, за да влезете във вашия отдалечен сървър и да видите регистрационните файлове, изпратени от клиентските сървъри. В този случай rsyslog е конфигуриран така, че да съхранява клиентските регистрационни файлове в /var/log/remote директория на отдалечения сървър.
cd /var/logs/remote
След това избройте съдържанието на директорията с помощта на командата ls:
ls -l
Както можете да видите в изхода, директорията съдържа регистрационни съобщения за посочените отдалечени сървъри andiwa и рукуру. Техните регистрационни файлове са наименувани andiwa.log и rukuru.log съответно.
След това можете да разгледате регистрационните файлове с помощта на текстов редактор или с Linux инструменти за преглед на файлове като котка или по-малко.
Отдалеченото регистриране ви дава повече контрол
Това ръководство разгледа как да настроите отдалечен сървър за регистриране (хост на регистрационни файлове) на Linux.
Хостът на регистрационни файлове ви предлага по-добра организация и контрол, когато става въпрос за регистриране. Дори в сценарии, при които системата е повредена или недостъпна, все още можете да преглеждате нейните регистрационни файлове от хоста на регистрационните файлове и да разберете какво се обърка.
Първи стъпки със системно регистриране в Linux
Прочетете Следващото
Свързани теми
- Linux
- Системна администрация
- Linux команди
За автора
Mwiza разработва софтуер по професия и пише много за Linux и програмиране от преден край. Някои от интересите му включват история, икономика, политика и корпоративна архитектура.
Абонирайте се за нашия бюлетин
Присъединете се към нашия бюлетин за технически съвети, ревюта, безплатни електронни книги и ексклузивни оферти!
Щракнете тук, за да се абонирате