Prefaci
La nostra "amistat" va començar fa dos anys. Vaig arribar a un nou lloc de treball, on l'administrador anterior em va deixar casualment aquest programari com a herència. No he trobat res a Internet que no sigui documentació oficial. Fins i tot ara, si busqueu a Google "timon", en el 99% dels casos sortirà amb: timons de vaixells i quadcopters. Vaig aconseguir trobar una aproximació a ell. Atès que la comunitat d'aquest programari és insignificant, he decidit compartir la meva experiència i rastrejar. Crec que això serà útil per a algú.
Així que Timó
Rudder és una utilitat de gestió de configuració i auditoria de codi obert que ajuda a automatitzar la configuració del sistema. Funciona amb el principi d'instal·lar un agent per a cada usuari final. Mitjançant una interfície còmoda, podem controlar fins a quin punt la nostra infraestructura compleix amb totes les polítiques especificades.
Utilitzar
A continuació, enumeraré per a què faig servir Rudder.
-
Control de fitxers i configuracions: ./ssh/authorized_keys ; /etc/hosts ; iptables ; (i després a on porta la teva imaginació)
-
Control dels paquets instal·lats: zabbix.agent o qualsevol altre programari
Instal·lació del servidor
Recentment he actualitzat de la versió 5 a la 6.1, tot ha anat bé. A continuació es mostren les ordres per a Deban/Ubuntu, però també hi ha suport:
Amagaré la instal·lació en spoilers per no distreure't.
Spoiler
Dependències
rudder-server requereix Java RE com a mínim la versió 8, es pot instal·lar des del dipòsit estàndard:
Comprovant si està instal·lat
java -version
si la conclusió
-bash: java: command not found
després instal·lar
apt install default-jre
Servidor
Importació de la clau
wget --quiet -O- "https://repository.rudder.io/apt/rudder_apt_key.pub" | sudo apt-key add -
Aquí teniu la impressió en si
pub 4096R/474A19E8 2011-12-15 Rudder Project (release key) <[email protected]>
Key fingerprint = 7C16 9817 7904 212D D58C B4D1 9322 C330 474A 19E8
Com que no tenim una subscripció de pagament, afegim el següent repositori
echo "deb http://repository.rudder.io/apt/6.1/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/rudder.list
Actualitzeu la llista de repositoris i instal·leu el servidor
apt update
apt install rudder-server-root
Crea un administrador d'usuari
rudder server create-user -u admin -p "Ваш Пароль"
En el futur podrem gestionar els usuaris mitjançant la configuració
Això és tot, el servidor està preparat.
Ajust del servidor
Ara cal afegir les adreces IP dels agents o una subxarxa sencera a l'agent del timó, ens centrem en la política de seguretat.
Configuració -> General
Al camp "Afegeix una xarxa", introduïu l'adreça i la màscara en el format xxxx/xx. Per permetre l'accés des de totes les adreces de la xarxa interna (llevat que, per descomptat, es tracti d'una xarxa de prova i estigueu darrere de NAT) introduïu: 0.0.0.0/0
Important: després d'afegir l'adreça IP, no us oblideu de fer clic a Desa els canvis, en cas contrari no es desarà res.
Ports
Obriu els ports següents al servidor
-
443 - tcp
-
5309 - tcp
-
514 - udp
Hem resolt la configuració inicial del servidor.
Instal·lació de l'agent
Spoiler
Afegint una clau
wget --quiet -O- "https://repository.rudder.io/apt/rudder_apt_key.pub" | sudo apt-key add -
empremta digital clau
pub 4096R/474A19E8 2011-12-15 Rudder Project (release key) <[email protected]>
Key fingerprint = 7C16 9817 7904 212D D58C B4D1 9322 C330 474A 19E8
Afegir un repositori
echo "deb http://repository.rudder.io/apt/6.1/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/rudder.list
Instal·lació de l'agent
apt update
apt install rudder-agent
Configuració de l'agent
Indiquem a l'agent l'adreça IP del servidor de polítiques
rudder agent policy-server <rudder server ip or hostname> #Без скобок. Можно также использовать доменное имя
En executar la següent comanda enviarem una sol·licitud per afegir un nou agent al servidor, en un parell de minuts apareixerà a la llista d'agents nous, us explicaré com afegir a la següent secció
rudder agent inventory
També podem forçar l'agent a començar i enviarà la sol·licitud a l'instant
rudder agent run
El nostre agent està configurat, seguim endavant.
Addició d'agents
iniciar Sessió
https://127.0.0.1/rudder/index.html
El vostre agent apareixerà a la secció "Accepta nous nodes", marqueu la casella i feu clic a Acceptar
Hauria de passar una mica de temps fins que el sistema comprovi el compliment del servidor
Creació de grups de servidors
Creem un grup (això encara és entreteniment), ni idea de per què els desenvolupadors van fer una formació de grup tan atroz, però segons tinc entès, no hi ha cap altra manera. Aneu a la secció Gestió de nodes -> Grups i feu clic a Crear, seleccioneu un grup estàtic i un nom.
Filtrem el servidor que necessitem per característiques especials, per exemple, per adreça IP, i desem
El grup està configurat.
Establiment de normes
Aneu a Política de configuració → Regles i creeu una regla nova
Afegiu el grup preparat abans (es pot fer més tard)
I formem una nova directiva
Creem una directiva per afegir claus públiques a .ssh/authorized_keys. Ho faig servir quan un nou empleat marxa, o per a la reassegurança, per exemple, si algú em talla la clau per accident.
Aneu a Política de configuració → Directives a l'esquerra veiem “Biblioteca de directives” Cerqueu “Accés remot → Claus autoritzades SSH”, a la dreta, feu clic a Crea directiva
Introduïm informació sobre l'usuari i afegim la seva clau. A continuació, seleccioneu la política d'aplicació
-
Global: política predeterminada
-
Aplicar - Executar als servidors seleccionats
-
Auditoria: realitzarà una auditoria i dirà quins clients tenen la clau
Assegureu-vos d'indicar la nostra regla
Llavors desa i ja està.
Comprovació
La clau s'ha afegit correctament
Bollos
L'agent proporciona informació completa sobre el servidor. Llistes de paquets instal·lats, interfícies, ports oberts i molt més, que podeu veure a la captura de pantalla següent
També podeu instal·lar i controlar el programari no només a Linux sinó també a Windows, no vaig comprovar aquest últim, no hi havia necessitat.
De l’autor
Potser us preguntareu, per què reinventar la roda si ansible i titella ja s'han inventat fa molt de temps?
Contesto: Ansible té alguns inconvenients, per exemple, no veiem en quin estat es troba aquesta configuració ara, o la situació familiar quan inicieu un paper o un llibre de jocs i apareixen errors de bloqueig i comenceu a pujar al servidor i veureu quin paquet s'ha actualitzat on. I no vaig treballar amb titelles...
Hi ha algun inconvenient a Rudder? Molt.. A partir del fet que els agents cauen i cal reinstal·lar-los o utilitzar l'ordre de reinici del timó. (però, per cert, encara no ho he vist a la versió 6), resultant en una configuració extremadament complexa i una interfície il·lògica.
Hi ha avantatges? I també hi ha molts avantatges: A diferència del conegut Ansible, disposem d'una interfície web en la qual es pot veure el compliment que hem aplicat. Per exemple, els ports que sobresurten al món, quin és l'estat del tallafoc, els agents de seguretat instal·lats o altres gadgets.
Aquest programari és perfecte per al departament de seguretat de la informació, ja que l'estat de la infraestructura sempre estarà davant dels vostres ulls, i si alguna de les regles s'il·lumina en vermell, aquest és un motiu per visitar el servidor. Com he dit, fa 2 anys que faig servir Rudder, i si el fumes una mica, la vida millora. El més difícil en una gran infraestructura és que no recordeu en quin estat es troba el servidor, si June no va instal·lar agents de seguretat o si va configurar iptables correctament, però el timó us ajudarà a estar al dia de tots els esdeveniments. Conscient vol dir armat! )
PS Va resultar molt més del que estava previst, no descriuré com instal·lar paquets, si de sobte hi ha peticions, escriuré una segona part.
PSS L'article és informatiu, he decidit compartir-lo ja que a Internet hi ha molt poca informació. Potser això serà interessant per a algú. Que tingueu un bon dia, estimats amics)
Sobre els drets de publicitat
Servidors èpics - És
Font: www.habr.com