+ All Categories
Home > Documents > Procesy a programy - stuba.sklhudec/CS/Cvicenie_5_stud_materialy.pdf · Bezpečnosť...

Procesy a programy - stuba.sklhudec/CS/Cvicenie_5_stud_materialy.pdf · Bezpečnosť...

Date post: 31-Jul-2020
Category:
Upload: others
View: 5 times
Download: 0 times
Share this document with a friend
23
Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 1 Procesy a programy Základné pojmy Zoznam procesov Za aženie systému ť Ovládanie procesov, signály Využívané prostriedky a ich limity Činnos procesov ť Záznamy činnosti (log-y) Aktualizovanie programov
Transcript
Page 1: Procesy a programy - stuba.sklhudec/CS/Cvicenie_5_stud_materialy.pdf · Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 2 Proces Bežiaca inštancia programu.

Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 1

Procesy a programy

● Základné pojmy● Zoznam procesov● Za aženie systémuť● Ovládanie procesov, signály● Využívané prostriedky a ich limity● Činnos procesovť● Záznamy činnosti (log-y)● Aktualizovanie programov

Page 2: Procesy a programy - stuba.sklhudec/CS/Cvicenie_5_stud_materialy.pdf · Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 2 Proces Bežiaca inštancia programu.

Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 2

Proces

● Bežiaca inštancia programu.

● Vzniká volaním fork() (resp. clone()), ako kópia volajúceho procesu.

● Je jednoznačne identifikovaný PID.

● Má priradené UID a GID používate a (ktorý ľproces spustil).

● S okolím komunikuje cez súbory (stdin, stdout, stderr) a signály.

● Spotrebováva systémové prostriedky (pamä , procesorový čas).ť

Page 3: Procesy a programy - stuba.sklhudec/CS/Cvicenie_5_stud_materialy.pdf · Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 2 Proces Bežiaca inštancia programu.

Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 3

Zoznam procesov

● Príkaz ps zobrazuje:

– PID, PPID,

– UID,

– stav (R, T, D, S, I, Z),

– využitie pamäte, CPU,

– názov príkazu, argumenty, ...● Filtrovanie

– napr. pod a používate a.ľ ľ● Výstupný formát, zora ovanie.ď

Page 4: Procesy a programy - stuba.sklhudec/CS/Cvicenie_5_stud_materialy.pdf · Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 2 Proces Bežiaca inštancia programu.

Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 4

Zoznam procesov

● Všetky procesy v systéme

– ps auxw

– ps ­e

● Procesy konkrétneho používate aľ

– ps ­Fu user

● Zobrazenie vz ahovť

– ps ­eH; ps axjf; pstree

– ps ­feHu root

● Informácie o vláknach

– ps ­eLf

Page 5: Procesy a programy - stuba.sklhudec/CS/Cvicenie_5_stud_materialy.pdf · Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 2 Proces Bežiaca inštancia programu.

Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 5

Vyhľadanie procesov

● Pod a názvu príkazu (a alších kritérií) ľ ď vypíše zoznam zodpovedajúcich PID

– man pgrep

– pgrep ­l bash

– pgrep ­u root sendmail

– pgrep ­u root,user ssh

● Zadaný re azec je regulárny výrazť

– pgrep ^ba

– pgrep '\.sh$'

– pgrep sh

Page 6: Procesy a programy - stuba.sklhudec/CS/Cvicenie_5_stud_materialy.pdf · Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 2 Proces Bežiaca inštancia programu.

Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 6

Zaťaženie systému

● Celkový preh adľ

– uptime

● aktuálny čas, čas od “nabootovania”,● počet prihlásených používate ov,ľ● load averages (1, 5, 15 minút).

● Periodické (interaktívne) sledovanie procesov

– top

● procesy, (vlákna), pamä (swap),ť● zoradenie pod a podielu CPU, podielu ľ

pamäte, PID, spotrebovaného času, ...

Page 7: Procesy a programy - stuba.sklhudec/CS/Cvicenie_5_stud_materialy.pdf · Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 2 Proces Bežiaca inštancia programu.

Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 7

Zaťaženie systému

● Príkaz top

– f, vo ba zobrazovaných parametrovľ

– H, informácie o vláknach

– u, filtrovanie pod a používate aľ ľ

– M, zora ovanie pod a zabranej pamäte (%)ď ľ

– P, zora ovanie pod a času CPU (%)ď ľ

– O, výber kritérií zora ovaniaď● Vo ná pamäľ ť

– free, vmstat

Page 8: Procesy a programy - stuba.sklhudec/CS/Cvicenie_5_stud_materialy.pdf · Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 2 Proces Bežiaca inštancia programu.

Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 8

Signály – zrušenie procesu

● Zaslanie signálu procesom s daným PID

– man kill

– kill ­9 1234 234 9876

– kill ­l, vypíše zoznam signálov

● Zaslanie signálu procesom pod a názvuľ

– pkill, ako pgrep (pozná regulárne výrazy)

– killall (zadaný názov musí zodpoveda )ť

– killall ­TERM telnet

● Zrušenie procesu (prestane existova )ť

– SIGTERM, SIGKILL

Page 9: Procesy a programy - stuba.sklhudec/CS/Cvicenie_5_stud_materialy.pdf · Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 2 Proces Bežiaca inštancia programu.

Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 9

Signály – zastavenie procesu

● Zastavený proces nie je plánovaný, teda nevykonáva sa a nespotrebováva CPU čas.

● Môže by spustený od miesta, kde bol ťzastavený.

● Zastavenie a spustenie procesu:

– SIGSTOP, SIGCONT

– pkill ­STOP ­u user bash

– pkill ­CONT ­u user bash

Page 10: Procesy a programy - stuba.sklhudec/CS/Cvicenie_5_stud_materialy.pdf · Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 2 Proces Bežiaca inštancia programu.

Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 10

Ďalšie signály

● Znovunačítanie konfiguračného súboru

– SIGHUP

● Niektoré démony reagujú na tento signál znovunačítaním konfigurácie, bez nutnosti zastavenia

– killall ­HUP sshd

– pkill ­HUP named

● Príkaz dd – zobrazenie I/O štatistík

– po zaslaní signálu USR1 vypíše štatistiky na stderr

– killall ­USR1 ­u user dd

Page 11: Procesy a programy - stuba.sklhudec/CS/Cvicenie_5_stud_materialy.pdf · Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 2 Proces Bežiaca inštancia programu.

Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 11

Otvorené súbory

● Zoznam všetkých otvorených súborov

– man lsof

● príkaz, PID, používate , ve kos , ...ľ ľ ť● filtrovanie,● h adá a vypisuje otvorené súbory.ľ

– lsof ­c ba, lsof ­c /^ba/

● procesy s názvom začínajúcim na “ba”– lsof +D /tmp/

● procesy majúce otvorené súbory z /tmp/ a podadresárov

– lsof ­p 1

● súbory procesu s PID rovné 1

Page 12: Procesy a programy - stuba.sklhudec/CS/Cvicenie_5_stud_materialy.pdf · Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 2 Proces Bežiaca inštancia programu.

Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 12

Otvorené súbory

● Zoznam procesov, ktoré majú otvorený daný súbor

– man fuser

● Vypisuje len zoznam PID a spôsob využitia (cefFrm)

– fuser /bin/*sh

– fuser ­u ~

● S prepínačom '­v' udáva aj meno používate a a príkazuľ

– fuser ­v /tmp/

Page 13: Procesy a programy - stuba.sklhudec/CS/Cvicenie_5_stud_materialy.pdf · Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 2 Proces Bežiaca inštancia programu.

Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 13

Otvorené sieťové spojenia

● Príkaz netstat zobrazí zoznam všetkých soketov v systéme.

● S prepínačom ­p vypíše aj názov príkazu a PID procesu, ktorý je na konci spojenia.

– man netstat

– netstat ­nap

– netstat –­protocol=ip ­nlp

Page 14: Procesy a programy - stuba.sklhudec/CS/Cvicenie_5_stud_materialy.pdf · Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 2 Proces Bežiaca inštancia programu.

Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 14

Limity zdrojov procesu

● Limity pre systémové prostriedky procesu

– man ulimit (interný príkaz shell-u)

– ulimit ­a, vypíše aktuálne nastavenia

– core súbor, dátový segment, virt. pamä , ťpočet súborov, ve kos súboru, počet zámkov, ľ ťCPU čas, počet procesov, ...

– bežný používate ich môže len znižova ,ľ ť

– nastavenia pre používate ov:ľ● /etc/security/limits.conf

– globálne nastavenia:● /etc/rc.local

Page 15: Procesy a programy - stuba.sklhudec/CS/Cvicenie_5_stud_materialy.pdf · Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 2 Proces Bežiaca inštancia programu.

Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 15

Priorita plánovania procesu

● Prioritu plánovania procesu je možné meni ťzmenou hodnoty nice:

– rozsah: +19 najnižšia priorita, –20 najvyššia.● Spustenie procesu so zmenenou prioritou

– man nice

– nice ­n ­10 csh

● Zmena priority bežiacich procesov

– man renice

– renice 10 234

– zvýši prioritu môže len ť root.

Page 16: Procesy a programy - stuba.sklhudec/CS/Cvicenie_5_stud_materialy.pdf · Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 2 Proces Bežiaca inštancia programu.

Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 16

Sledovanie činnosti procesu

● Výpis sytémových volaní, ktoré proces robí

– man strace

– strace ­p 123 ­f ­o output.txt

● Sledovanie knižničných volaní

– man ltrace

– ltrace ­p 234 ­s 255 ­e read

● Na cudzí proces iba root.

Page 17: Procesy a programy - stuba.sklhudec/CS/Cvicenie_5_stud_materialy.pdf · Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 2 Proces Bežiaca inštancia programu.

Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 17

Štandardné procesy

● Niektoré procesy zabezpečujú úlohy potreb-né pre správny beh systému, alebo zabezpe-čujú rôzne služby

– chkconfig –­list

– chkconfig kudzu off

– service rsyslog status

– service cups stop

– service sendmail restart

● Napríklad:

– init, crond, rsyslogd, sendmail, sshd, ...

Page 18: Procesy a programy - stuba.sklhudec/CS/Cvicenie_5_stud_materialy.pdf · Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 2 Proces Bežiaca inštancia programu.

Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 18

Log­y

● Súbory so záznamami o činnosti procesov sa nachádzajú v adresári /var/log

– ls ­ltr /var/log

● Rotácia log-ov

– pod a ve kosti, pod a času, ...ľ ľ ľ– /etc/logrotate.conf

● Formát; dátum, uzol, proces/kernel: správa

● Správy jadra: dmesg

● Systémové správy:

– rsyslogd, /etc/rsyslog.conf

– /var/log/{messages,secure,debug,cron}

Page 19: Procesy a programy - stuba.sklhudec/CS/Cvicenie_5_stud_materialy.pdf · Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 2 Proces Bežiaca inštancia programu.

Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 19

Aplikačné log­y

● Služba sendmail (elektronická pošta)

– záznamy o spustení a fungovaní služby

– o spracovaní alias-ov

– o každom e-maile– /var/log/maillog

● Služba httpd (apache, web server)

– záznamy servera sú v messages,

– záznamy o každom prístupe:● /var/log/httpd/access_log● /var/log/httpd/error_log● /var/log/httpd/ssl_request_log

Page 20: Procesy a programy - stuba.sklhudec/CS/Cvicenie_5_stud_materialy.pdf · Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 2 Proces Bežiaca inštancia programu.

Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 20

Kontrola programov

● Správa programových balíkov

– man rpm

– rpm ­qi kernel

– rpm ­qf `which top`

– rpm ­ql openssh­server

● Overenie integrity programov

– rpm ­V sendmail

– typ súboru:● cdglr

– výsledky testov:● SM5DLUGT.

Page 21: Procesy a programy - stuba.sklhudec/CS/Cvicenie_5_stud_materialy.pdf · Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 2 Proces Bežiaca inštancia programu.

Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 21

Aktualizácia programov

● Aktualizácia programových balíkov

– man yum

● Automatická aktualizácia

– service yum­updatesd status

– chkconfig yum­updatesd on

– vi /etc/yum/yum­updates

– service yum­updatesd start

● “Ručná” aktualizácia

– yum update

● Urobi vždy po inštalácii nového systému!ť

Page 22: Procesy a programy - stuba.sklhudec/CS/Cvicenie_5_stud_materialy.pdf · Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 2 Proces Bežiaca inštancia programu.

Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 22

Súvisiace témy

● zmena root adresára pre proces– chroot

● bezpečnostné rozšírenia SELinux– getenforce, man selinux

● process accounting– accton

● boot-ovací proces– telinit, runlevel

● správa programových balíkov– rpm, yum

Page 23: Procesy a programy - stuba.sklhudec/CS/Cvicenie_5_stud_materialy.pdf · Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 2 Proces Bežiaca inštancia programu.

Bezpečnosť počítačových systémov / Procesy DB, FIIT STU BA, 2009 23

Literatúra a zdroje

● Manuálové stránky– http://www.manpages.info

● The Linux System Administrator's Guide– http://tldp.org/LDP/sag/html/

● Linux Administrator's Security Guide– http://www.seifried.org/lasg/

● Enabling Process Accounting on Linux HOWTO– http://www.faqs.org/docs/Linux-mini/Process-Accounting.html

● Securing & Optimizing Linux: The Ultimate Solution

– http://tldp.org/LDP/solrhe/Securing-Optimizing-Linux-The-Ultimate-Solution-v2.0.pdf


Recommended