КІРУ
    opened image

    Linux серверлеріндегі қызметтер және Systemd пайдалану арқылы олардың әкімшілігі

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

    Бұл мақалада біз Systemd көмегімен барлық іске қосылған қызметтерді қалай көрсету, оларды басқару және осы қызметтер пайдаланатын порттарды бақылау туралы егжей-тегжейлі қарастырамыз. Біз сондай-ақ брандмауэр арқылы қауіпсіздікті бақылау үшін Systemd-ны қалай пайдалануға болатынын талқылаймыз.

     

    Linux-та қызметтерді басқару жүйелері дегеніміз не?

     

    Linux-та қызметтерді басқару — әкімшілікте маңызды аспект. Қандай қызметтердің жұмыс істеп тұрғанын, ал қандайларының тоқтатылғанын немесе өшірілгенін тез білу мүмкіндігі маңызды. Бұл жүйенің өнімділігін бақылау және ақауларды жою үшін қажет, егер олар анықталса.

    Бұрын қызметтерді басқару init — жүйенің жүктелуі кезінде қызметтерді іске қосуға жауапты дәстүрлі инициализация процесі арқылы жүзеге асырылды. Алайда, Systemd енгізілгеннен кейін басқару икемдірек және қуатты болды. Systemd init-тің орнын басып, Ubuntu, CentOS және Fedora сияқты Linux дистрибутивтерінің көпшілігінде де-факто стандартқа айналды.

     

    Systemd дегеніміз не?

     

    Systemd — Linux-та процестер мен қызметтерді басқаратын жүйелік менеджер. Ол жүйенің жүктелу жылдамдығын арттыру және ескірген init-ті ауыстыру үшін жасалған. Systemd бірнеше маңызды функцияларды орындайды:

    • Жүйе іске қосылғанда қызметтерді инициализациялау.
    • Қызметтер арасындағы тәуелділіктерді басқару.
    • Жүйедегі қызметтердің және процестердің күйін бақылау.
    • Қызметтер мен процестерге қатысты барлық оқиғаларды журналдау (systemd-journald).

    Systemd-нің басты артықшылықтарының бірі - оның SysV-пен үйлесімділігі және ескі LSB скрипттерін қолдауы, бұл init-ті пайдаланудан заманауи қызметтерді басқаруға ауысуды жеңілдетеді.

    Неліктен іске қосылған қызметтерді көрсету керек?

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

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

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

     

     

    Systemd арқылы Linux-та барлық қызметтерді көрсету

     

    Жүйеде белсенді қызметтердің барлығын көрсету үшін мына командаларды пайдалануға болады:

    systemctl list-units --type=service

    Бұл әдіс жүйеге жүктелген "қызмет" типіндегі барлық жүйелік юниттердің тізімін шығарады. Команда белсенді және тоқтатылған қызметтерді көрсетеді. Қарапайым шығару үшін қысқартылған команданы пайдалануға болады:

    systemctl --type=service

     

    Systemd-де белсенді қызметтерді қалай көрсету керек

     

    Белсенді қызметтер — бұл немесе жалғастырып жұмыс істеп тұрған, немесе жұмысын аяқтаған, бірақ әлі жадтан шығарылмаған қызметтер. Барлық белсенді қызметтердің тізімін көру үшін келесі команданы орындау қажет:

    systemctl list-units --type=service --state=active

    Минималды параметрлермен шығару үшін баламалы команданы пайдалануға болады:

    systemctl --type=service --state=active
    

    Тек іске қосылған қызметтерді қалай көрсету керек

    Іске қосылған қызметтер — бұл қазіргі уақытта жұмыс істеп тұрған қызметтер. Оларды көрсету үшін келесі команданы пайдаланыңыз:

    systemctl list-units --type=service --state=running
    

    Балама команда:

    systemctl --type=service --state=running

    Бұл командалар жүйелік әкімшілерге қазіргі уақытта қандай қызметтердің жұмыс істеп тұрғаны туралы ақпаратты тез алуға көмектеседі.

    Systemd-дегі негізгі терминдер

    • Unit (Юнит) — Systemd-дегі негізгі бірлік. Юниттер қызметтер, құрылғылар, монтиралған нүктелер, сокеттер және жүйе басқаратын басқа объектілер болуы мүмкін.
    • Load (Загрузка) — юниттің жадқа жүктелгенін көрсететін статус.
    • Active (Активен) — юниттің белсенді екенін (мысалы, қызмет іске қосылған және жұмыс істеп тұрғанын) көрсетеді.
    • SUB (Подсостояние) — юниттің нақты күйін көрсететін нақты статус, мысалы, "running" (жұмыс істеп тұр) немесе "failed" (сәтсіздік).
    • Description (Описание) — юниттің мақсатын сипаттайтын қысқа жол.

     

    Systemd командасына алиас жасау

     

    Іске қосылған қызметтерді көрсету командасын жеңілдету үшін алиас жасауға болады. Бұл әсіресе бір және сол команданы жиі орындау қажет болса пайдалы.

    Келесі алиасты ~/.bashrc файлына қосыңыз:

    alias running_services='systemctl list-units --type=service --state=running'

    Бұл алиасты қосқаннан кейін, ағымдағы сессияны жаңарту үшін команданы орындаңыз:

     

    source ~/.bashrc
    

    Енді сіз іске қосылған қызметтерді жылдам көрсету үшін

    running_services.

    Қызметтің тыңдап тұрған портын анықтау

    Белгілі бір қызметтің қандай портты пайдаланатынын білу үшін келесі командаларды пайдалануға болады:

    netstat -ltup | grep <процесс_аты>

    ss пайдалану арқылы баламалы команда:

    ss -ltup | grep <процесс_аты>

    Бұл командалар қызметтердің кіріс қосылымдарын тыңдап тұрған барлық порттарын, сондай-ақ қызметтер туралы ақпаратты көрсетеді.

     

    Брандмауэрде ашық қызметтер мен порттарды көрсету

     

    Жүйенің қауіпсіздігін бақылау үшін брандмауэрде қандай қызметтер мен порттардың рұқсат етілгенін білу маңызды. Мұны әртүрлі брандмауэрлерді пайдалану арқылы қалай жасауға болатынын қарастырайық.

    FirewallD

    Рұқсат етілген қызметтерді көрсету үшін:

    firewall-cmd --list-services
    

    Ашық порттарды көрсету үшін:

    firewall-cmd --list-ports

    UFW

    UFW статусын және рұқсат етілген қызметтер мен порттардың тізімін көрсету үшін:

    sudo ufw status

    Бұл командалар сізге брандмауэр арқылы сырттан қол жеткізу үшін рұқсат етілген порттар мен қызметтерді анықтауға көмектеседі.

     

     

    Қорытынды

    Қызметтерді басқару — Linux жүйелерін әкімшілікте маңызды бөлік. Systemd қызметтерді бақылау және басқару үшін қуатты құралдарды ұсынады, бұл оны қазіргі әкімшілер үшін алмастырылмайтын етеді. Оның көмегімен белсенді қызметтерді оңай бақылауға, олардың күйін тексеруге және ресурстарды пайдалануды оңтайландыруға болады. Сонымен қатар, Systemd қауіпсіздікті интеграциялауға мүмкіндік береді, порттарды бақылау және брандмауэрмен өзара әрекеттесу арқылы жүйенің қорғау деңгейін арттыруға ықпал етеді.

     

    Сондай-ақ, басқа пайдалы мақалаларды қарастыруды ұсынамыз: