Predgovor
Naše "prijateljstvo" je počelo prije dvije godine. Došao sam na novo radno mjesto, gdje mi je prethodni administrator slučajno ostavio ovaj softver u naslijeđe. Na internetu, osim službene dokumentacije, ništa se nije moglo pronaći. Čak i sada, ako proguglate "kormilo", u 99% slučajeva će doći do: brodskih kormila i kvadrokoptera. Uspio sam pronaći put do toga. Pošto je zajednica ovog softvera zanemarljiva, odlučio sam podijeliti svoje iskustvo i rake. Mislim da će nekome biti od koristi.
Dakle, Kormilo
Rudder je uslužni program za reviziju i upravljanje konfiguracijom otvorenog koda koji pomaže u automatizaciji konfiguracije sistema. Radi na principu instaliranja agenta za svakog krajnjeg korisnika. Preko praktičnog interfejsa možemo pratiti koliko je naša infrastruktura usklađena sa svim navedenim politikama.
Koristite
U nastavku ću navesti za šta koristim Rudder.
-
Kontrola datoteka i konfiguracija: ./ssh/authorized_keys ; /etc/hosts ; iptables ; (i onda kuda vas mašta vodi)
-
Kontrola instaliranih paketa: zabbix.agent ili bilo koji drugi softver
Instalacija servera
Nedavno sam ažurirao sa verzije 5 na 6.1, sve je prošlo dobro. Ispod su komande za Deban/Ubuntu, ali postoji i podrška:
Instalaciju ću sakriti u spojlerima da vas ne ometam.
Spojler
Zavisnosti
rudder-server zahtijeva Java RE najmanje verziju 8, može se instalirati iz standardnog spremišta:
Provjeravam da li je instaliran
java -version
ako zaključak
-bash: java: command not found
zatim instalirajte
apt install default-jre
Server
Uvoz ključa
wget --quiet -O- "https://repository.rudder.io/apt/rudder_apt_key.pub" | sudo apt-key add -
Evo otiska
pub 4096R/474A19E8 2011-12-15 Rudder Project (release key) <[email protected]>
Key fingerprint = 7C16 9817 7904 212D D58C B4D1 9322 C330 474A 19E8
Pošto nemamo plaćenu pretplatu, dodajemo sljedeće spremište
echo "deb http://repository.rudder.io/apt/6.1/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/rudder.list
Ažurirajte listu spremišta i instalirajte server
apt update
apt install rudder-server-root
Kreirajte korisnika administratora
rudder server create-user -u admin -p "Ваш Пароль"
U budućnosti možemo upravljati korisnicima kroz konfiguraciju
Sve, server je spreman.
Podešavanje servera
Sada morate dodati IP adrese agenata ili cijelu podmrežu agentu kormila, fokusiramo se na sigurnosnu politiku.
Postavke -> Općenito
U polje "Dodaj mrežu" Unesite adresu i masku u formatu xxxx/xx . Da biste omogućili pristup sa svih adresa interne mreže (Osim ako se naravno radi o testnoj mreži i vi ste iza NAT-a) unesite: 0.0.0.0/0
Važno - nakon što dodate ip adresu, ne zaboravite kliknuti na Sačuvaj promjene, inače ništa neće biti sačuvano.
Portovi
Otvorite sljedeće portove na serveru
-
443 - tcp
-
5309 - tcp
-
514 - udp
Sredili smo početno podešavanje servera.
Instaliranje agenta
Spojler
Dodavanje ključa
wget --quiet -O- "https://repository.rudder.io/apt/rudder_apt_key.pub" | sudo apt-key add -
Otisak ključa
pub 4096R/474A19E8 2011-12-15 Rudder Project (release key) <[email protected]>
Key fingerprint = 7C16 9817 7904 212D D58C B4D1 9322 C330 474A 19E8
Dodavanje spremišta
echo "deb http://repository.rudder.io/apt/6.1/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/rudder.list
Instaliranje agenta
apt update
apt install rudder-agent
Postavljanje agenta
Navedite ip adresu servera politike agentu
rudder agent policy-server <rudder server ip or hostname> #Без скобок. Можно также использовать доменное имя
Pokretanjem sljedeće naredbe poslat ćemo zahtjev za dodavanje novog agenta na server, za par minuta će se pojaviti na listi novih agenata, objasniću kako dodati u sljedećem odjeljku
rudder agent inventory
Također možemo prisiliti agenta da se pokrene i on će odmah poslati zahtjev
rudder agent run
Naš agent je spreman, idemo dalje.
Dodavanje agenata
Ulogovati se
https://127.0.0.1/rudder/index.html
Vaš agent će se pojaviti u odjeljku "Prihvati nove čvorove", potvrdite okvir i kliknite Prihvati
Trebalo bi proći malo vremena dok sistem ne provjeri usklađenost servera
Kreiranje grupa servera
Hajde da napravimo grupu (to je i dalje zabava), nemam pojma zašto su programeri napravili tako gnusno formiranje grupe, ali koliko ja razumem, ne postoji drugi način. Idite na odjeljak Upravljanje čvorovima -> Grupe i kliknite na Kreiraj, odaberite statičku grupu i ime.
Filtriramo server koji nam je potreban po posebnim karakteristikama, na primjer, po IP adresi, i spremamo
Grupa je postavljena.
Postavljanje pravila
Idite na Politika konfiguracije → Pravila i kreirajte novo pravilo
Dodajte ranije pripremljenu grupu (to se može uraditi kasnije)
I formiramo novu direktivu
Kreirajmo direktivu za dodavanje javnih ključeva u .ssh/authorized_keys. Ovo koristim kada novi zaposlenik ode, ili za reosiguranje, na primjer, ako mi neko slučajno izreže ključ.
Idite na Politiku konfiguracije → Direktive na lijevoj strani vidimo “Biblioteku direktiva” Pronađite “Udaljeni pristup → SSH ovlašteni ključevi”, na desnoj strani kliknite Kreiraj direktivu
Unosimo podatke o korisniku i dodajemo njegov ključ. Zatim odaberite politiku aplikacije
-
Globalno - Zadana politika
-
Enforce - Izvršiti na odabranim serverima
-
Revizija - Provest će reviziju i reći koji klijenti imaju ključ
Obavezno navedite naše pravilo
Zatim sačuvajte i gotovi ste.
Proverite
Ključ je uspješno dodan
Lepinje
Agent pruža potpune informacije o serveru. Liste instaliranih paketa, interfejsa, otvorenih portova i još mnogo toga, što možete vidjeti na slici ispod
Također možete instalirati i kontrolirati softver ne samo na Linuxu već i na Windowsu, nisam provjerio ovo drugo, nije bilo potrebe..
Od autora
Možda se pitate, zašto ponovo izmišljati točak ako su ansible i lutka već odavno izmišljeni?
Odgovaram: Ansible ima neke nedostatke, na primjer, ne vidimo u kakvom je stanju ova konfiguracija sada, ili poznata situacija kada pokrenete ulogu ili playbook i pojavi se greška pri rušenju, pa počnete da se penjete na server i vidite koji paket je ažuriran gdje. I jednostavno nisam radio sa lutkom..
Postoje li nedostaci kormila? Puno.. Počevši od činjenice da agenti padaju i morate ih ponovo instalirati ili koristiti komandu za resetiranje kormila. (ali usput, ovo još nisam vidio u verziji 6), što je rezultiralo izuzetno složenim podešavanjem i nelogičnim sučeljem.
Ima li prednosti? A tu je i puno prednosti: Za razliku od dobro poznatog Ansiblea, imamo web sučelje u kojem možete vidjeti usklađenost koju smo primijenili. Na primjer, da li portovi vire u svijet, kakvo je stanje zaštitnog zida, da li su instalirani sigurnosni agenti ili drugi uređaji.
Ovaj softver je savršen za odjel informacione sigurnosti, budući da će vam stanje infrastrukture uvijek biti pred očima, a ako neko od pravila svijetli crveno, onda je to razlog da posjetite server. Kao što rekoh, koristim Rudder već 2 godine, i ako ga malo popušite, život postaje bolji. Najteža stvar u velikoj infrastrukturi je to što se ne sjećate u kakvom je stanju server, da li je jun propustio instaliranje sigurnosnih agenata ili je ispravno konfigurirao iptables, ali kormilo će vam pomoći da budete u toku sa svim događajima. Svjestan znači naoružan! )
PS Ispalo je mnogo više nego što sam planirao, neću opisivati kako instalirati pakete, ako se iznenada pojave zahtjevi, napisat ću drugi dio.
PSS Članak je informativnog karaktera, odlučio sam ga podijeliti jer na internetu ima vrlo malo informacija. Možda će ovo nekome biti zanimljivo. Ugodan dan dragi prijatelji)
O pravima reklame
Epic serveri Je
izvor: www.habr.com