Monitorujeme operační systém

Debian Linux Firehol Na portálu airdump jsou vesměs pentetrační tutoriály a postupy pro úpravu souborů nebo ovládačů. Tento text se bude zabývat tím jak po zabezpečení vlastní instalace Linuxu získat přehled o tom co se v systému děje. Existuje řada postupů, triků a možností. Ukážeme si ale jak všechno zvládnout v klídku a najednou. Text vznikl jako demonstrace, se záměrem ukázat možnost GUI monitoringu a to především firewallu a sítě. Obecně je konfigurovatelnost samozřejmě podstatně širší.

Jednoduché a přehledné

V linux systémech existuje řada příkazu a pomocí konsole lze ovládat a monitorovat celý systém. Existuje ale vcelku povedný nástroj který sílu přikazového řádku koncentruje a aplikuje na jednom míste. Správně nakonfigurovaný firewall a striktní pravidla jsou k ničemu, pokuď v systému existuje kód který používa otevřené porty a pracuje zevnitř.

Conky

Mnoho z vás tuto aplikací zná, nakonec je defaultně instalována i v distribuci jakou je Backtrack. V základní konfiguraci toho moc nenajdete. Ukážeme si jak aplikaci nakonfigurovat a pomocí malého tweaku přijmout firehol logovat události do extra logu, následně je pak conky monitorem zobrazovat na Desktopu a číst. Konfigurace zahrnuje i real-time zobrazovat příchozích a odchozích spojení na počítač.

Ulogd

Stačí jednoducha instalace a o víc se není potřeba starat. Podle verze systému..

slapt-get --install ulogd
apt-get install ulogd

Nebo stáhnou zdroják a kompilovat :)

Firehol

Do konfiguračního souboru firehol přidat řádek

FIREHOL_LOG_MODE="ULOG"

Kompletní konfigurace

Místo rozepisováni toho co je co, dávam k dispozici vlastní konfiguraci conkyrc, kterou si můžete (budete muset) stejně upravit (zejména v případě konfigurace disků a síťového rozhraní) takže o trénink dovedností nepříjdete :)

# A comprehensive conky script, configured for use on
# Ubuntu / Debian Gnome, without the need for any external scripts.
#
# Based on conky-jc and the default .conkyrc.
# INCLUDES:
# – tail of /var/log/messages
# – netstat connections to your computer
#
# — Pengo (conky@pengo.us)#
# Create own window instead of using desktop (required in nautilus)
own_window yes
own_window_type override
own_window_transparent yes
own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager
#
# Use double buffering (reduces flicker, may not work for everyone)
double_buffer yes
#
# fiddle with window
use_spacer no
#
# anti-aliasing
use_xft no
#
# Xft font when Xft is enabled
# xftfont arial:pixelsize=8
#
# Text alpha when using Xft
# xftalpha 0.8
#
# Update interval in seconds
update_interval 3
#
# Minimum size of text area
# minimum_size 250 5
maximum_width 300
#
# Draw shades?
draw_shades yes
#
# Text stuff
draw_outline yes # amplifies text if yes
draw_borders no
font arial:pixelsize=11
uppercase no # set to yes if you want all text to be in uppercase
#
# Force UTF8? note that UTF8 support required XFT
# override_utf8_locale yes
#
# Stippled borders?
stippled_borders 3
#
# border margins
border_margin 9
#
# border width
border_width 10
#
# Default colors and also border colors, grey90 == #e5e5e5
default_color grey90
#
own_window_colour brown
own_window_transparent yes
#
# Text alignment, other possible values are commented
#alignment top_left
alignment top_right
#alignment bottom_left
#alignment bottom_right
#
# Gap between borders of screen and text
gap_x 5
gap_y 40
#
# stuff after ‚TEXT‘ will be formatted on screen
#
TEXT
$color
${color orange}SYSTEM ${hr 2}$color
$nodename $sysname $kernel on $machine
#
${color orange}CPU ${hr 2}$color
${freq}MHz Load: ${loadavg} Temp: ${acpitemp}
$cpubar
${cpugraph 000000 ffffff}
NAME PID CPU% MEM%
${top name 1} ${top pid 1} ${top cpu 1} ${top mem 1}
${top name 2} ${top pid 2} ${top cpu 2} ${top mem 2}
${top name 3} ${top pid 3} ${top cpu 3} ${top mem 3}
${top name 4} ${top pid 4} ${top cpu 4} ${top mem 4}
${top name 5} ${top pid 5} ${top cpu 5} ${top mem 5}
#
${color orange}MEMORY / DISK ${hr 2}$color
RAM: $memperc% ${membar 6}$color
Swap: $swapperc% ${swapbar 6}$color
#
sda1: ${fs_free_perc /media/sda1}% ${fs_bar 6 /media/sda1}$color
sda6: ${fs_free_perc /media/sda6}% ${fs_bar 6 /media/sda6}$color
sda8: ${fs_free_perc /media/sda7}% ${fs_bar 6 /media/sda7}$color
#
${color orange}NETWORK (${addr ath0}) ${hr 2}$color
Down: $color${downspeed ath0} k/s ${alignr}Up: ${upspeed ath0} k/s
${downspeedgraph ath0 25,140 000000 ff0000} ${alignr}${upspeedgraph ath0
25,140 000000 00ff00}$color
Total: ${totaldown ath0} ${alignr}Total: ${totalup ath0}
#
${color orange}LOGGING ${hr 2}$color
${execi 30 tail -n3 /var/log/ulog/syslogemu.log | fold -w50}
$stippled_hr
${color #ddaa00}Port(s)${alignr}#Connections
$color Inbound: ${tcp_portmon 1 32767 count} Outbound: ${tcp_portmon 32768 61000 count}${alignr}ALL: ${tcp_portmon 1 65535 count}
${color #ddaa00}Outbound Connection ${alignr} Remote Service/Port$color
${tcp_portmon 32768 61000 rhost 0} ${alignr} ${tcp_portmon 32768 61000 rservice 0}
${tcp_portmon 32768 61000 rhost 1} ${alignr} ${tcp_portmon 32768 61000 rservice 1}
${tcp_portmon 32768 61000 rhost 2} ${alignr} ${tcp_portmon 32768 61000 rservice 2}
${tcp_portmon 32768 61000 rhost 3} ${alignr} ${tcp_portmon 32768 61000 rservice 3}
${tcp_portmon 32768 61000 rhost 4} ${alignr} ${tcp_portmon 32768 61000 rservice 4}
${tcp_portmon 32768 61000 rhost 5} ${alignr} ${tcp_portmon 32768 61000 rservice 5}
${color #ddaa00}Inbound Connection ${alignr} Local Service/Port$color
${tcp_portmon 1 32767 rhost 0} ${alignr} ${tcp_portmon 1 32767 lservice 0}
${tcp_portmon 1 32767 rhost 1} ${alignr} ${tcp_portmon 1 32767 lservice 1}
${tcp_portmon 1 32767 rhost 2} ${alignr} ${tcp_portmon 1 32767 lservice 2}
${tcp_portmon 1 32767 rhost 3} ${alignr} ${tcp_portmon 1 32767 lservice 3}
${tcp_portmon 1 32767 rhost 4} ${alignr} ${tcp_portmon 1 32767 lservice 4}
${tcp_portmon 1 32767 rhost 5} ${alignr} ${tcp_portmon 1 32767 lservice 5}

Uprava konfigurace

Dle vlastních potřeb můžete ubírat nebo přidávat libovolné části konfigurace. Doporučuji měnit pouze označení disku (sda) a síťového rozhraní (ath0)

Monitoring

Velikost okna a počet monitorovacích oken lze nakonfigurovat. Conky v akci vypada nejak takhle (obrázek je rozdělen na části – jinak je v celku :)

Název sytému

Monitoring CPU

Výpis práve běžícich aplikací

Výpis paměti

Provoz sítě

Log firewallu

Odchozi spojení

Poznámky k článku lze psát do komentářu, dotazy ohledně konfigurace směrujte do Fóra. Kompletní přehled podporovaných proměnných pro aplikaci Conky najdete na stránkach Sourceforge.

Kam dál?