
Predslov
Naše „priateľstvo“ sa začalo pred dvoma rokmi. Prišiel som na nové pôsobisko, kde mi predchádzajúci admin náhodne zanechal tento softvér ako dedičstvo. Na internete som nenašiel nič iné ako oficiálnu dokumentáciu. Dokonca aj teraz, keď si zadáte do googlu „kormidlo“, v 99% prípadov vám príde: lodné prilby a kvadrokoptéry. Podarilo sa mi nájsť k nemu prístup. Keďže komunita tohto softvéru je zanedbateľná, rozhodol som sa podeliť o svoje skúsenosti a hrabať. Myslím, že to bude pre niekoho užitočné.
Takže Kormidlo
Rudder je nástroj na auditovanie a správu konfigurácie s otvoreným zdrojom, ktorý pomáha automatizovať konfiguráciu systému. Funguje na princípe inštalácie agenta pre každého koncového užívateľa. Prostredníctvom pohodlného rozhrania môžeme sledovať, do akej miery naša infraštruktúra spĺňa všetky špecifikované zásady.
Použitie
Nižšie uvediem, na čo používam Kormidlo.
Kontrola súborov a konfigurácií: ./ssh/authorized_keys ; /etc/hosts ; iptables; (a potom kam vedie vaša fantázia)
Kontrola nainštalovaných balíkov: zabbix.agent alebo akýkoľvek iný softvér
Inštalácia servera
Nedávno som aktualizoval z verzie 5 na 6.1 a všetko prebehlo hladko. Nižšie sú uvedené príkazy pre Debian.Ubuntu ale existuje aj podpora: и .
Inštaláciu skryjem do spojlerov, aby som vás nerozptyľoval.
Spojler
Závislosti
kormidlo-server vyžaduje Java RE aspoň verziu 8, dá sa nainštalovať zo štandardného úložiska:
Kontrola, či je nainštalovaný
java -versionak záver
-bash: java: command not foundpotom nainštalujte
apt install default-jreServer
Import kľúča
wget --quiet -O- "https://repository.rudder.io/apt/rudder_apt_key.pub" | sudo apt-key add -Tu je samotná tlač
pub 4096R/474A19E8 2011-12-15 Rudder Project (release key) <security@rudder-project.org>
Key fingerprint = 7C16 9817 7904 212D D58C B4D1 9322 C330 474A 19E8Keďže nemáme platené predplatné, pridávame nasledujúce úložisko
echo "deb http://repository.rudder.io/apt/6.1/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/rudder.listAktualizujte zoznam úložísk a nainštalujte server
apt update
apt install rudder-server-rootVytvoriť správcu používateľa
rudder server create-user -u admin -p "Ваш Пароль"V budúcnosti môžeme spravovať používateľov prostredníctvom konfigurácie
To je všetko, server je pripravený.
Ladenie servera
Teraz je potrebné pridať IP adresy agentov alebo celú podsieť do kormidlového agenta, zameriavame sa na bezpečnostnú politiku.
Nastavenia -> Všeobecné

Do poľa „Pridať sieť“ zadajte adresu a masku vo formáte xxxx/xx. Aby ste povolili prístup zo všetkých adries internej siete (ak samozrejme nejde o testovaciu sieť a nie ste za NAT), zadajte: 0.0.0.0/0
Dôležité - po pridaní adresy IP nezabudnite kliknúť na tlačidlo Uložiť zmeny, inak sa nič neuloží.
porty
Otvorte nasledujúce porty na serveri
443 - tcp
5309 - tcp
514 - udp
Vyriešili sme počiatočné nastavenie servera.
Inštalácia agenta
Spojler
Pridanie kľúča
wget --quiet -O- "https://repository.rudder.io/apt/rudder_apt_key.pub" | sudo apt-key add -Odtlačok kľúča
pub 4096R/474A19E8 2011-12-15 Rudder Project (release key) <security@rudder-project.org>
Key fingerprint = 7C16 9817 7904 212D D58C B4D1 9322 C330 474A 19E8Pridanie úložiska
echo "deb http://repository.rudder.io/apt/6.1/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/rudder.listInštalácia agenta
apt update
apt install rudder-agentNastavenie agenta
Agentovi oznámime IP adresu servera politík
rudder agent policy-server <rudder server ip or hostname> #Без скобок. Можно также использовать доменное имя Spustením nasledujúceho príkazu odošleme požiadavku na pridanie nového agenta na server, o pár minút sa objaví v zozname nových agentov, ako pridať vysvetlím v ďalšej časti
rudder agent inventoryMôžeme tiež prinútiť agenta, aby spustil a okamžite odošle požiadavku
rudder agent runNáš agent je pripravený, poďme ďalej.
Pridávanie agentov
Prihlásiť sa
https://127.0.0.1/rudder/index.html

Váš agent sa zobrazí v časti „Prijať nové uzly“, začiarknite políčko a kliknite na tlačidlo Prijať

Systém by mal chvíľu trvať, kým skontroluje súlad servera
Vytváranie skupín serverov
Poďme vytvoriť skupinu (to je stále zábava), netušíme, prečo vývojári urobili takú ohavnú formáciu skupiny, ale ako som pochopil, nie je iná cesta. Prejdite do časti Správa uzlov -> Skupiny a kliknite na Vytvoriť, vyberte statickú skupinu a názov.

Server, ktorý potrebujeme, vyfiltrujeme podľa špeciálnych funkcií, napríklad podľa IP adresy, a uložíme

Skupina je zostavená.
Nastavenie pravidiel
Prejdite do Zásady konfigurácie → Pravidlá a vytvorte nové pravidlo

Pridajte skupinu pripravenú skôr (môžete to urobiť neskôr)

A tvoríme novú smernicu

Vytvorme si smernicu na pridávanie verejných kľúčov do .ssh/authorized_keys. Používam to pri odchode nového zamestnanca, alebo napríklad na preistenie, ak mi niekto náhodou vystrihne kľúč.
Prejdite na Zásady konfigurácie → Direktívy vľavo vidíme „Knižnica smerníc“ Nájdite „Vzdialený prístup → Autorizované kľúče SSH“, vpravo kliknite na Vytvoriť smernicu
Zadáme informácie o používateľovi a pridáme jeho kľúč. Ďalej vyberte politiku aplikácie
Globálne – Predvolená politika
Vynútiť – spustiť na vybraných serveroch
Audit – vykoná audit a povie, ktorí klienti majú kľúč

Nezabudnite uviesť naše pravidlo

Potom uložte a máte hotovo.
check

Kľúč bol úspešne pridaný
Buchty
Agent poskytuje úplné informácie o serveri. Zoznamy nainštalovaných balíkov, rozhraní, otvorených portov a oveľa viac, ktoré môžete vidieť na obrázku nižšie

Softvér môžete nainštalovať a ovládať nielen v systéme Linux, ale aj v systéme Windows, toto som nekontroloval, nebolo to potrebné.
Od autora
Možno sa pýtate, prečo znovu vynájsť koleso, ak ansible a bábka už boli dávno vynájdené?
Odpovedám: Ansible má určité nevýhody, napríklad nevidíme, v akom stave je teraz táto konfigurácia, alebo známa situácia, keď spustíte rolu alebo playbook a objavia sa chyby zrútenia a začnete liezť na server a uvidíte aký balík bol kde aktualizovaný. A to som jednoducho nepracoval s bábkou..
Má kormidlo nejaké nevýhody? Veľa.. Počnúc tým, že agenti odpadávajú a musíte ich preinštalovať alebo použiť príkaz reset kormidla. (ale mimochodom, vo verzii 6 som to ešte nevidel), čo má za následok mimoriadne zložité nastavenie a nelogické rozhranie.
Sú nejaké výhody? A je tu aj veľa výhod: Na rozdiel od známeho Ansible máme webové rozhranie, v ktorom si môžete pozrieť, aký súlad sme aplikovali. Napríklad, či porty trčia do sveta, v akom stave je firewall, či sú nainštalované bezpečnostné agenty alebo iné pomôcky.
Tento softvér je ideálny pre oddelenie informačnej bezpečnosti, pretože stav infraštruktúry budete mať vždy na očiach a ak sa niektoré z pravidiel rozsvieti na červeno, je to dôvod na návštevu servera. Ako som povedal, používam Rudder už 2 roky a ak ho trochu fajčíte, život sa zlepší. Najťažšia vec vo veľkej infraštruktúre je, že si nepamätáte, v akom stave je server, či June zmeškal inštaláciu bezpečnostných agentov alebo či správne nakonfiguroval iptables, ale kormidlo vám pomôže držať krok so všetkými udalosťami. Aware znamená ozbrojený! )
PS Vyšlo to oveľa viac, ako som plánoval, nebudem popisovať, ako nainštalovať balíčky, ak sa zrazu objavia požiadavky, napíšem druhú časť.
PSS Článok je informatívny, rozhodol som sa ho zdieľať, keďže na internete je veľmi málo informácií. Možno to bude pre niekoho zaujímavé. Prajem pekný deň, milí priatelia)
O právach reklamy
Epické servery - je alebo Windows S výkonnými procesormi AMD EPYC a ultrarýchlymi diskami Intel NVMe. Objednajte si teraz!

Zdroj: hab.com
