• úvod
  • témata
  • události
  • tržiště
  • diskuze
  • nástěnka
  • přihlásit
    registrace
    ztracené heslo?
    INDIANCentralizovaná správa stanic a ostatních prvků v síti - automation/monitoring/alerting a dalsi devops nastroje
    QUIP
    QUIP --- ---
    Jako jo, nejaky reseni na to jsou, ale vsechno mi to prijde zbytecne slozity pro ten use case, ze to potrebuju jednou za rok, respektive pro jeden jedinej pripad, kdy jsem chtel jen vypsat seznam hostu (tzn. ani se nic neposle nikam po siti) a ansible se me stejne pta na to heslo. Coz pri normalni praci je to, co chci, ale ne v pripade, ze chci jen videt --list-hosts.
    INDIAN
    INDIAN --- ---
    QUIP: a co si treba zakryptovat sudo heslo pomoci vault ?
    $ ansible-vault create secrets.yml

    - dovnitr heslo:
    ansible_become_pass: mypass123

    (+ nezapomenout zahrnout secrets.yml do vars)
    a pak si vault heslo ulozit do souboru a pouzit ho k --vault-password-file:
    ansible all --vault-password-file=my_vault_password.txt -m ping
    DEFILA
    DEFILA --- ---
    QUIP:
    vsak jde, posles si --extra-vars="TVOJE_HODNOTA" a zavolas si ji; problem je, ze (tusim) hodnota too hesla bude nekde citelna ... (a osobne nemam rad --external-vars ...:))
    QUIP
    QUIP --- ---
    DEFILA: Sudo bez hesla neprovozuju (zamerne). Tak asi jedine ten samostatny config. Skoda, ze to nejde elegantneji jen pomoci parametru v cli, jako to jde u nekterych jinych programu.
    DEFILA
    DEFILA --- ---
    QUIP: mít v visudo NOPASSWD: .... ?:) Jinak bych řekl, že buď mít dedikovaný config pro to chceš jednou dělat; případně tam posílat z cli externí proměnou?(má největší prioritu, ale přijde mi to vždy jako prasarna)
    QUIP
    QUIP --- ---
    Da se u prikazu "ansible" (ne ansible-playbook) nejak potlacit dotazovani na heslo pro sudo, jen pro to jedno spusteni, kdyz v ansible.cfg mam sudo_ask_pass=True? Zkratka existuje nejaky opak k --ask-sudo-pass?
    Takhle se me totiz dotazuje na heslo, i kdyz chci jen --list-hosts.
    DEFILA
    DEFILA --- ---
    QUIP: jop, není to perfektní ve všech případech, ale jako ukázka pro Ansible mi to přišlo OK:)
    QUIP
    QUIP --- ---
    DEFILA: Ciste teoreticky ten tvuj task (shell: 'egrep ":[1][0-9]{3}" /etc/passwd | cut -d: -f1') muze odchytit i uzivatele, ktery ma UID mimo ten pozadovany rozsah, ale ma takove treba GID, nebo komentar zacina cislem 1xxx

    Takze bych tam spis dal awk, ktere bude rozlisovat konkretni fieldy

    awk -F: '$3 ~ /1[0-9]{3}/ { print $1 }' /etc/passwd

    nektere verze awk nerozumi tomu regexpu 1[0-9]{3}
    Tam je pak moznost pouzit

    awk -F: '$3 ~ /1[0-9][0-9][0-9]/ { print $1 }' /etc/passwd

    nebo

    awk -F: '$3 > 1000 && $3 < 2000 { print $1 }' /etc/passwd
    RUDOLF
    RUDOLF --- ---
    FRANCIMOUR: Wiki to má popsané lépe, imho něco jako selinux, jako nástroj tam má být csutil či tak nějak.. prej to jde částečně vypnout..

    System Integrity Protection - Wikipedia
    https://en.m.wikipedia.org/wiki/System_Integrity_Protection
    DEFILA
    DEFILA --- ---
    FRANCIMOUR:
    ja se v macOSu vazne nevyznam :)
    FRANCIMOUR
    FRANCIMOUR --- ---
    DEFILA: Něco takového ...

    What Is SIP? macOS System Integrity Protection Explained
    https://www.makeuseof.com/tag/what-is-sip-macos/
    DEFILA
    DEFILA --- ---
    FRANCIMOUR:
    Selinux - bezpecnosti politika linuxu, bez ohledu na to jaky jsi uzivatel (at uz root nebo, ne) - pokud tve 'procesy' nemaji spravny "stitek", tak je s zadnym uzivatelem nepustis
    FRANCIMOUR
    FRANCIMOUR --- ---
    DEFILA: Co to?
    DEFILA
    DEFILA --- ---
    FRANCIMOUR: macos má něco ala SElinuch?:))
    FRANCIMOUR
    FRANCIMOUR --- ---
    Tak jsem šel stepbystep:

    crony fungují... echo "hello world" do txt v pohodě,
    tak jsem zkusil find vypsat do txt taky v pohodě,
    zkusil jsem mazání s -delete a ... smaže se kus a dál už nic,
    tak jsem si to nechal vypsat do logu a Find: Operation not permitted
    * * * * 2 /usr/bin/find /Users/*/Library/Application\ Support/MobileSync/Backup -type f -mtime +60 -delete >> /Users/karel/Desktop/test.log 2>&1


    Hádám, že sice jako root, ale narážím na MacOS SIP.
    FRANCIMOUR
    FRANCIMOUR --- ---
    DRON: Ano, díky to už jsem taky vyčetl... takže root tam není. Zkusím se posunout níž a zkusit basic commands , abych zjistil zda mu nevadí něco v tom find..
    DRON
    DRON --- ---
    FRANCIMOUR: jestli to editujes pomoc crontab -e pod userem root, tak ta specifikace uzivatelw (root) za definici dne je uz navic...
    ADM
    ADM --- ---
    FRANCIMOUR: to by mohlo byt escapovanim {}, zkus to uplne vyhodit a nahradit ten -exec prostym -delete (pokud to ten jablecny find umi), jinak to zkus nejak odescapovat
    FRANCIMOUR
    FRANCIMOUR --- ---
    ADM: no já jsem to teď zkusil dát s plnou cestou:
    57 14 * * 2 root /usr/bin/find /Users/*/Library/Application\ Support/MobileSync/Backup -type f -mtime +90 -exec rm -f {} \;

    musím tam mít nějakou blbou chybu, že se to ani nechytne
    ADM
    ADM --- ---
    FRANCIMOUR: zkusil bych: plnou cestu napr. /usr/bin/find, do crontabu promennou SHELL="/path/to/shell/idealne/bash", spustit find v shellu neco jako /bin/sh -c "find blabla",
    Kliknutím sem můžete změnit nastavení reklam