Hlavní navigace

TACACS (2)

Milan Gigel 3. 8. 2001

V minulej časti sme si priblížili základnú konfiguráciu daemona tacacs, dnes sa budeme venovať problematike podrobnejšie. Pri definovaní skupín sme spomínali že úspešnosť autorizácie je možné pred a po overení hesla ovplyvniť vlastným skriptom.

group = slaba_prevadzka
    login = file /etc/passwd
    before authorization "/usr/local/tac_plugin/slaba.pl $user"
}

Ako vstupné parametre pre náš užívateľský skript môžme použiť nasledovné

$user – názov konta
$name – názov zariadenia, na ktoré sa chce užívateľ authentikovať
$port – port zariadenia, na ktoré sa chce užívateľ authentikovať
$address – IP adresa klienta
$priv – priv-level úroveň
$method – číslica 1–4
$type – číslica 1–4
$service – číslica 1–7
$status – pass, fail, error, unknown

Čo sa týka návratovej hotnoty pretautorizačného scriptu, možnosti exit kódu sú 4

0 – autorizácia je bezpodmienečne povolená
1 – autorizácia je bezpodmienečne zakázaná
2 – autorizácia je povolená
3 – autorizácia je zakázaná

Pri poautorizačnom scripte máme nasledovné možnosti

0 – autorizácia pokračuje, akoby skript nebol ani volaný. Hodí sa na extra logovanie, napr. niekde na web status a pod.
1 – autorizácia je bezpodmienečne zakázaná
2 – autorizácia je povolená

Nasledujúci skript nám jednoducho obmedzí konto na autorizáciu iba v slabej prevádzke ktorú si určíme od 19:00 do 7:00 v rátane štátnych sviatkov.

slaba.pl

#!/bin/bash
if date | fgrep -f /usr/local/tac_plugin/def_slaba
    then
        exit 0
    else
        echo $1 >> /var/log/tacacs/slaba.warn
        exit 1
    fi

def_slaba

 19:
 20:
 21:
 22:
 23:
 00:
 01:
 02:
 03:
 04:
 05:
 06:
Sat
Sun
Jan 6
Apr 21
Apr 24
May 1
May 9
Aug 29
Sep 1
Sep 15
Nov 1
Dec 24
Dec 25
Dec 26

Na tomto príklade vidíme jednu z možností praktického použitia autorizačných skriptov. Možností je mnoho od prekročenia časového limitu, preneseného objemu údajov, prepojenie na účtovný systém pri nezaplatení mesačného poplatku, kreditné účtovanie až po výstup na web stránku alebo špeciálneho logového súboru, poprípade upozornenie na prihlásenie prostredníctvom SMS správy na mobilný telefón.

Logový súbor

Ako sme už spomínali pri konfigurácii tacacsu, logový súbor obsahuje účtovacie informácie, ktoré je možné jednoduchým spôsobom spracovávať. Formát logového súboru je nasledovný:

timestamp, názov zariadenia, na ktorom prebieha authentikácia, názov konta, port, ip adresa klienta, účtovný záznam. Účtovným záznamom môže byť jedna z nasledujúcich položiek:
„unknown“, „service“, „start_time“, „port“, „elapsed time“, „status“, „priv_level“, „cmd“, „protocol“, „cmd-arg“, „bytes_in“, „bytes_out“, „paks_in“, „paks_out“, „address“, „callback-dialstring“, „nocallback-verify“, „callback-line“, „callback-rotary“ a samozrejme v každom riadku „task_id“

Najzaujímvejšími údajmi pre nás budú asi start_time, elapsed_time, bytes_in a bytes_out. Pomocou jednoduchých scriptov je možné tieto údaje spracovať a využiť ich buď ako výpisy k vyúčtovaniam poskytovaných služieb alebo ako štatistiku a prehľad na www stránke.

Doteraz sme si priblížili authentikačné funkcie tacacsu, avšak tacacs nám v rámci sessionu umožňuje aj autorizačné služby.

group = mail_only {
        expires = "Mar 9 2000"
        login = file /etc/passwd
        maxsess=1
        service = ppp protocol= ip {
            autocomand=ppp
            inacl=101
            outacl=102
            addr-pool = mailonlys
        }
    }

user = pascal {
        login = des barU503ivCO45
        expires = "Jun 12 2002"
        cmd= telnet {
            permit 62\.168\.96\.[0-9]+
            permit 128\.[0-9]+\.12.\7
        }
        cmd = show {
            permit .*
        }
}

Ako ste už určite všetci pochopili, jedná sa o autorizáciu jednotlivých úloh v rámci sessionu. Pri požiadavke o autorizáciu sa prejde list pre daného užívateľa, vyhľadá sa dotazovaný pár a na základe porovnania sa stanoví návratový kód. Pre definovanie podmienok sa používajú regexp výrazy. Ak daný pár nie je súčasťou listu pre dané konto, návratový kód bude vždy DENY. Túto politiku je možné zmeniť veľmi jednoducho. Slúži nám na to direktíva

    default authorization = permit

ktorú použijeme na začiatku konfiguračného súboru. Ak chceme túto politiku zmeniť iba pre vybrané kontá použijeme direktívu

    default service= permit

ako jeden z atribútov konta alebo skupiny.

Kedže tacacs priamo nema prikaz na vypis authentikovaných užívateľov, takže nám pomôže nasledujúci script. Tacacs zapisuje authentikovaných užívateľov do súboru /var/log/tac.who_log, z ktorého po preformátovaní môžeme dostať čitateľný výpis. Nasledujúci scriptík nám bude neustále vypisovať authentikovaných užívateľov v 5 sekundovom intervale až do stlačenia klávesy Ctrl-C.

cwho.sh

#!/bin/sh
while true; do
clear
fold -w 160 /var/log.tac.who_log | tr -s '\000' '\t' | expand -20 | sort -b
sleep 5
done

V ďalšej časti si povieme niečo o konfigurovaní routerov CISCO pre spoluprácu s tacacsom.

Našli jste v článku chybu?

9. 8. 2001 9:51

tomas meinlschmidt (neregistrovaný)

plati to pouze pro verzi 8 (f.4.0.3), kde konfigurace se provadi stylem
key = klic_pro_ostatni
host = ip_praha {
key = klic_praha
}
host = ip_brno {
key = klic_brno
}








8. 8. 2001 9:53

Filip Janecek (neregistrovaný)

Zdravim vsechny, rad bych se zeptal,jak nakonfigurovat vice klicu na jednom serveru TACACS+?CISCOACS to umi,ale u TAC_PLUS jsem to nikde nenasel.Abych treba pro oblast Brno pouzival jiny klic a pro Prahu zase jiny klic atd.Jinak se me tento serial moc libi.Dik

Vitalia.cz: Říká amoleta - a myslí palačinka

Říká amoleta - a myslí palačinka

Vitalia.cz: „Připluly“ z Německa a možná obsahují jed

„Připluly“ z Německa a možná obsahují jed

Podnikatel.cz: Přehledná titulka, průvodci, responzivita

Přehledná titulka, průvodci, responzivita

DigiZone.cz: Česká televize mění schéma ČT :D

Česká televize mění schéma ČT :D

Podnikatel.cz: K EET. Štamgast už peníze na stole nenechá

K EET. Štamgast už peníze na stole nenechá

Měšec.cz: U levneELEKTRO.cz už reklamaci nevyřídíte

U levneELEKTRO.cz už reklamaci nevyřídíte

Lupa.cz: UX přestává pro firmy být magie

UX přestává pro firmy být magie

Podnikatel.cz: 1. den EET? Problémy s pokladnami

1. den EET? Problémy s pokladnami

Lupa.cz: Propustili je z Avastu, už po nich sahá ESET

Propustili je z Avastu, už po nich sahá ESET

Měšec.cz: Jak vymáhat výživné zadarmo?

Jak vymáhat výživné zadarmo?

Vitalia.cz: Baletky propagují zdravotní superpostel

Baletky propagují zdravotní superpostel

DigiZone.cz: NG natáčí v Praze seriál o Einsteinovi

NG natáčí v Praze seriál o Einsteinovi

Podnikatel.cz: Víme první výsledky doby odezvy #EET

Víme první výsledky doby odezvy #EET

Lupa.cz: Proč firmy málo chrání data? Chovají se logicky

Proč firmy málo chrání data? Chovají se logicky

Vitalia.cz: Jsou čajové sáčky toxické?

Jsou čajové sáčky toxické?

DigiZone.cz: Sony KD-55XD8005 s Android 6.0

Sony KD-55XD8005 s Android 6.0

Lupa.cz: Google měl výpadek, nejel Gmail ani YouTube

Google měl výpadek, nejel Gmail ani YouTube

120na80.cz: Jak oddálit Alzheimera?

Jak oddálit Alzheimera?

Vitalia.cz: Paštiky plné masa ho zatím neuživí

Paštiky plné masa ho zatím neuživí

Podnikatel.cz: EET: Totálně nezvládli metodologii projektu

EET: Totálně nezvládli metodologii projektu