• ú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
    Diskuse o vsem, co se tyka nastroju ulehcujicich praci nejen administratorum ...

    Sirsi zaber vitan (resp. co se neveslo do nazvu) :
    Inventarizace * IT Asset Management * Centralizovana sprava instalaci / aktualizaci * Zalohovani stanic * Sprava licenci

    Par tipu :
    Saltstack * Ansible * OCS Inventory NG * Fusion Inventory * GLPI * Mandriva Pulse2 * IBM Tivoli * Microsoft SCCM * BackupPC * Bacula * Puppet * Chef * RackTables * Zabbix * Foreman * Cfengine * Wix Toolset * WKPG * Symantec Client Management Suite
    chybi tu neco ? sem s tim ;)
    rozbalit záhlaví
    VESNACH
    VESNACH --- ---
    CHOROBA: jo, to sem moh napsat rovnou sry

    bacula-hw - storage kde bezi proxmox, na tom:
    vm bacula-dir - director baculy
    vm bacula-sd - storage daemon, kde mam mountnuty raid
    vm bacula-sd (s3) - storage daemon, kde je s3fs mount do aws jako offside backup, (+ v aws img os bacula-dir, jako ec2 instanci)

    na directoru mam configy v jednom fajlu v /servers

    @|"sh -c 'cat /etc/bacula/schedules/*.conf'"
    @|"sh -c 'cat /etc/bacula/jobdefs/*.conf'"
    @|"sh -c 'cat /etc/bacula/servers/*.conf'"

    nejak takhle...

    Client {
    Name = cli-xxx
    Address = xxx
    FDPort = 9102
    Catalog = bacula
    Password = "xxx"
    File Retention = 125 days
    Job Retention = 6 months
    AutoPrune = yes
    }

    FileSet {
    Name = "fs-xxx"
    Include {
    Options {
    signature = MD5
    compression = GZIP
    WildDir = "*/.logs"
    Exclude = yes
    }
    File = /var/xxx
    File = /opt/xxx
    File = /opt/backup-bacula/xxx
    }
    }

    Job {
    Name = "job-xxx"
    JobDefs = "JobFullAt2"
    Client = "cli-xxx"
    FileSet = "fs-xxx"
    Pool = "pool-incremental-xxx"
    Full Backup Pool = "pool-full-xxx"
    Allow Mixed Priority = yes
    Differential Backup Pool = "pool-differential-xxx"
    Storage = "sto-xxx"
    Client Run Before Job = "/usr/local/bin/pre_script.sh"
    Client Run After Job = "/usr/local/bin/post_script.sh"
    }

    Job {
    Name = "res-xxx"
    Type = Restore
    Client = "cli-xxx"
    FileSet = "fs-xxx"
    Storage = "sto-xxx"
    Where = /tmp/bacula-restores
    Messages = Standard
    Pool = Default
    }

    Pool {
    Name = "pool-full-xxx"
    Pool Type = Backup
    Recycle = yes
    AutoPrune = yes
    Volume Retention = 63 days
    Use Volume Once = yes
    Maximum Volumes = 5
    LabelFormat = "FB-xxx-"
    # Maximum Volume Bytes = 100G
    }

    Pool {
    Name = "pool-incremental-xxx"
    Pool Type = Backup
    Recycle = yes
    AutoPrune = yes
    Volume Retention = 59 days
    Use Volume Once = yes
    Maximum Volumes = 60
    LabelFormat = "IB-xxx-"
    }

    Pool {
    Name = "pool-differential-xxx"
    Pool Type = Backup
    Recycle = yes
    AutoPrune = yes
    Volume Retention = 59 days
    Maximum Volumes = 11
    Use Volume Once = yes
    LabelFormat = "DB-xxx-"
    }

    Storage {
    Name = "xxx"
    Address = xxx
    SDPort = 9103
    Device = "xxx"
    Media Type = File
    Maximum Concurrent Jobs = 3
    Password = "xxx"
    }

    a vsechno co je nejak kriticka vec, tak ma na bacula-dir v /servers druhy konfig pro bacula-sd (s3), takze se pro to spousti fakticky dva joby v rozdilnych intervalech, s rozdilnou retenci, kazdy na jinou storage...
    CHOROBA
    CHOROBA --- ---
    no kdyz nevim jajk ro mas reseny....
    asi nejlepsi je pres ansible galaxy si stahnout celou role a upravit si variables k obrazu svemu ( a dalsi veci)
    VESNACH
    VESNACH --- ---
    INDIAN: jo, to jsem koukal, spis jestli to nahodou nekdo nepouziva prakticky a nepostrcil by me jak to idealne navrhnout tak, aby to odpovidalo tomu, jak to mam reseny...
    INDIAN
    INDIAN --- ---
    VESNACH: vidim ze na githubu je podobnejch projeektu nekolik
    VESNACH
    VESNACH --- ---
    nenavedl by me nekdo, jak optimalne z "ansiblovat" instalaci bacula-fd + vytvoreni konfigu na dir a sd serveru? Do ted jsme to resil scriptem, ale chtel bych to udelat hezci...
    MAJA
    MAJA --- ---
    QUIP: jj, nakonec jsem to vyřešil rsyncem pouštěným z virtuálky, který se připojí k certifikační proxy pod non-root userem, který má v home nalinkované soubory ...
    QUIP
    QUIP --- ---
    MAJA: Ja bych na to sel cestou volani nejak skriptu z toho proxyserveru. Tedy proxy zavola nejakou neprivilegovanou cestou neco na tom stroji, ktery potrebuje obnoveny certifikat a ten pak teprve provede stazeni certifikatu z tveho cert storu na proxy (at uz rsyncem, pres http, sftp whatever) a pak provede reload potrebnych sluzeb - jenom tenhle posledni krok bude potrebovat rootovska opravneni.
    Zajimavou moznosti u rsyncu je treba pre a post-xfer exec, kdy ti ten rsync posloucha jako daemon a tim, ze se na nej pripojis, se spusti nejaka akce, ktera uz muze probehnout pod rootem. Pritom samotny modul rsyncu je chrootnuty a muze byt read only.
    BOAR
    BOAR --- ---
    MUXX: co třeba wildcard? *.intranet.biz?
    MUXX
    MUXX --- ---
    BOAR: Ale jo mas pravdu. Spis je to prezitek z doby kdy LE nebylo. Vsechno co ma uzivatele uz jede na LE. A pokud nechci mit verejny zaznamy o internich systemech, tak se to da udelat i jinak.
    MAJA
    MAJA --- ---
    BOAR: 5 sekund je dobrých, jsem čekal, že to bude typicky být takový neurčitý interval mezi 0 - 15 min ...
    BOAR
    BOAR --- ---
    MUXX: musim ric, ze interni CA je zlo nejvetsiho kalibru - a zaroven bezpecnostni dira :-) ale pocitam, ze je to dira pripravena na smirovani - ssl proxy, ktera prepodepisuje vlastni CA autoritou ?
    jak resis CA autoritu na mobilech a ruznejch klientech ?

    BOAR
    BOAR --- ---
    MAJA: ja jsem tu v gitlabu udelal CI, ktery dela renew, a pak vsechny certy nacpe do gitu. Kazdej stroj si v noci stahne repozitar s certifikatama, a reloadne nginx.

    MAJA: Ja delam ty certifikaty nektery hvezdickovy, takze je delam pres DNS.
    Vypada to tak, ze na domene je udelanej TXT CNAME na dns server, klterej si pousti a manazuje to CI
    takze v hlavnim DNS je:
    _acme-challenge.ahoj.cz IN CNAME ahoj.cz.le.adresatohodnsvci.cz

    takze by to znamenalo do DNS, ktery spravuje jina firma jen pridat zaznam pro kazdou domenu - a nasmerovat ho na tvuj DNS server. kde si pak udelas overeni.
    btw. nemusis cekat, ejstli to prosaklo na druhej konec - LE se pta primo autoritativniho dns serveru, takze tam muzes zadat zaznam, a udelat reload - a v tom okamziku to le najde. ja tam mam tusim 5 sec pauzu.
    MAJA
    MAJA --- ---
    RUDOLF: Let`s Encrypt
    RUDOLF
    RUDOLF --- ---
    MAJA: hele, co je LE seznam?
    MAJA
    MAJA --- ---
    SPM: DNSko bohužel spravuje externí firma, tak jsem skončil u té jednodušší webové varianty ... ale zase je to rychlejší resp. člověk nemusí rešit, jestli už se záznam updatoval a prosáklo to na druhý konec apod.
    SPM
    SPM --- ---
    ja to jinak na interni subdomeny vyresil tak, ze pouzivam dns auth, mam jeden stroj s dns vystavenej do internetu, na nej delegovanou tu interni domenu a jednotlivy masiny si pres api na nem vytvari a mazou ten txt zaznam
    KOLCON
    KOLCON --- ---
    MAJA: Jo jeden stroj obnovi vsechny certifikaty a vsechny pak rsyncuju vsude
    MAJA
    MAJA --- ---
    KOLCON: přímo podhodíš certifikáty třeba pod apache (plus reload service) nebo řešíš nějakou kontrolu/zálohu stávajících ?
    KOLCON
    KOLCON --- ---
    MAJA: Já to normálně rsyncuju...
    MAJA
    MAJA --- ---
    MUXX: Jaké jsou pohnutky nemít interní systémy v LE seznamu ?
    MUXX
    MUXX --- ---
    MAJA: no ja to mam tak, ze mam nginx, ktery se stara certbotem o certifikaty a dela zaroven ssl offload. certifikaty tak nemam potreba nikam dal kopirovat. na ostatni veci pouzivam interni CA, protoze nechci, aby moje interni systemy byly ve verejnym lets encrypt seznamu.
    Kliknutím sem můžete změnit nastavení reklam