Installazione e funzionamento del timone

Installazione e funzionamento del timone

prefazione

La nostra “amicizia” è iniziata due anni fa. Sono arrivato in un nuovo posto di lavoro, dove l'amministratore precedente mi ha lasciato casualmente questo software in eredità. Non sono riuscito a trovare nulla su Internet oltre alla documentazione ufficiale. Anche adesso, se si cerca su Google “timone”, nel 99% dei casi si otterrà: timoni di navi e quadricotteri. Sono riuscito a trovare un approccio con lui. Poiché la community di questo software è trascurabile, ho deciso di condividere la mia esperienza e il mio rake. Penso che questo sarà utile a qualcuno.

Quindi Timone

Rudder è un'utilità di controllo e gestione della configurazione open source che aiuta ad automatizzare la configurazione del sistema. Funziona secondo il principio dell'installazione di un agente per ciascun utente finale. Attraverso una comoda interfaccia, possiamo monitorare quanto la nostra infrastruttura è conforme a tutte le policy specificate.

l'uso di

Di seguito elencherò per cosa utilizzo Rudder.

  • Controllo di file e configurazioni: ./ssh/authorized_keys ; /etc/hosts; iptables; (e poi dove porta la tua immaginazione)

  • Controllo dei pacchetti installati: zabbix.agent o qualsiasi altro software

Installazione del server

Recentemente ho aggiornato dalla versione 5 alla 6.1, tutto è andato bene. Di seguito sono riportati i comandi per Deban/Ubuntu ma è presente anche il supporto: RHEL/CentOS и Sle.

Nasconderò l'installazione negli spoiler per non distrarvi.

Spoiler

Dipendenze

rudder-server richiede Java RE almeno versione 8, può essere installato dal repository standard:

Controllo per vedere se è installato

java -version

se la conclusione

-bash: java: command not found

quindi installare

apt install default-jre

Server

Importazione della chiave

wget --quiet -O- "https://repository.rudder.io/apt/rudder_apt_key.pub" | sudo apt-key add -

Ecco la stampa stessa

pub  4096R/474A19E8 2011-12-15 Rudder Project (release key) <[email protected]>
      Key fingerprint = 7C16 9817 7904 212D D58C  B4D1 9322 C330 474A 19E8

Poiché non abbiamo un abbonamento a pagamento, aggiungiamo il seguente repository

echo "deb http://repository.rudder.io/apt/6.1/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/rudder.list

Aggiorna l'elenco dei repository e installa il server

apt update
apt install rudder-server-root

Crea amministratore utente

rudder server create-user -u admin -p "Ваш Пароль"

In futuro potremo gestire gli utenti tramite il config

Questo è tutto, il server è pronto.

Ottimizzazione del server

Ora è necessario aggiungere gli indirizzi IP degli agenti o un'intera sottorete all'agente timone, ci concentriamo sulla politica di sicurezza.

Impostazioni -> Generale

Installazione e funzionamento del timone

Nel campo “Aggiungi una rete”, inserisci l'indirizzo e la maschera nel formato xxxx/xx. Per consentire l'accesso da tutti gli indirizzi della rete interna (a meno che ovviamente non si tratti di una rete di test e non si sia dietro NAT) inserire: 0.0.0.0/0

Importante: dopo aver aggiunto l'indirizzo IP, non dimenticare di fare clic su Salva modifiche, altrimenti non verrà salvato nulla.

porti

Aprire le seguenti porte sul server

  • 443 - tcp

  • 5309 - tcp

  • 514 - udp

Abbiamo risolto la configurazione iniziale del server.

Installazione dell'agente

Spoiler

Aggiunta di una chiave

wget --quiet -O- "https://repository.rudder.io/apt/rudder_apt_key.pub" | sudo apt-key add -

Impronta digitale della chiave

pub  4096R/474A19E8 2011-12-15 Rudder Project (release key) <[email protected]>
      Key fingerprint = 7C16 9817 7904 212D D58C  B4D1 9322 C330 474A 19E8

Aggiunta di un archivio

echo "deb http://repository.rudder.io/apt/6.1/ $(lsb_release -cs) main" > /etc/apt/sources.list.d/rudder.list

Installazione dell'agente

apt update
apt install rudder-agent

Configurazione dell'agente

Indichiamo all'agente l'indirizzo IP del policy server

rudder agent policy-server <rudder server ip or hostname> #Без скобок. Можно также использовать доменное имя 

Eseguendo il seguente comando invieremo una richiesta per aggiungere un nuovo agente al server, in un paio di minuti apparirà nell'elenco dei nuovi agenti, spiegherò come aggiungere nella sezione successiva

rudder agent inventory

Possiamo anche forzare l'avvio dell'agente e invierà immediatamente la richiesta

rudder agent run

Il nostro agente è pronto, andiamo avanti.

Aggiunta di agenti

Login

https://127.0.0.1/rudder/index.html

Installazione e funzionamento del timone

Il tuo agente apparirà nella sezione "Accetta nuovi nodi", seleziona la casella e fai clic su Accetta

Installazione e funzionamento del timone

Dovrebbe essere necessario un po' di tempo prima che il sistema controlli la conformità del server

Creazione di gruppi di server

Creiamo un gruppo (questo è pur sempre intrattenimento), non ho idea del motivo per cui gli sviluppatori abbiano creato una formazione di gruppo così atroce, ma a quanto ho capito, non c'è altro modo. Vai alla sezione Gestione nodi -> Gruppi e clicca su Crea, seleziona un gruppo statico e un nome.

Installazione e funzionamento del timone

Filtriamo il server di cui abbiamo bisogno in base a funzionalità speciali, ad esempio in base all'indirizzo IP, e salviamo

Installazione e funzionamento del timone

Il gruppo è costituito.

Impostazione delle regole

Vai a Criteri di configurazione → Regole e crea una nuova regola

Installazione e funzionamento del timone

Aggiungi il gruppo preparato in precedenza (questo può essere fatto in seguito)

Installazione e funzionamento del timone

E formiamo una nuova direttiva

Installazione e funzionamento del timone

Creiamo una direttiva per aggiungere chiavi pubbliche a .ssh/authorized_keys. Lo utilizzo quando un nuovo dipendente se ne va o, ad esempio, per la riassicurazione se qualcuno mi taglia accidentalmente la chiave.

Andare su Criteri di configurazione → Direttive a sinistra vediamo “Libreria direttive” Trovare “Accesso remoto → Chiavi autorizzate SSH”, a destra fare clic su Crea direttiva

Inseriamo le informazioni sull'utente e aggiungiamo la sua chiave. Successivamente, seleziona la policy dell'applicazione

  • Globale: politica predefinita

  • Applica: esegue sui server selezionati

  • Audit: condurrà un audit e indicherà quali clienti hanno la chiave

Installazione e funzionamento del timone

Assicurati di indicare la nostra regola

Installazione e funzionamento del timone

Poi salva e il gioco è fatto.

controllare la

Installazione e funzionamento del timone

Chiave aggiunta correttamente

Panini

L'agente fornisce informazioni complete sul server. Elenchi di pacchetti installati, interfacce, porte aperte e molto altro, che puoi vedere nello screenshot qui sotto

Installazione e funzionamento del timone

Puoi anche installare e controllare il software non solo su Linux ma anche su Windows, quest'ultimo non ho controllato, non ce n'era bisogno..

Dall'autore

Potresti chiederti, perché reinventare la ruota se ansible e pupazzo sono già stati inventati molto tempo fa?

Rispondo: Ansible presenta alcuni inconvenienti, ad esempio non vediamo in che stato si trova questa configurazione adesso, o la situazione familiare quando si avvia un ruolo o un playbook e compaiono errori di arresto anomalo e si inizia a salire sul server e si vede quale pacchetto è stato aggiornato e dove. E semplicemente non ho lavorato con i burattini..

Ci sono degli svantaggi per Timone? Molto.. A partire dal fatto che gli agenti cadono e devi reinstallarli o utilizzare il comando di ripristino del timone. (ma a proposito, non l'ho ancora visto nella versione 6), risultando in una configurazione estremamente complessa e un'interfaccia illogica.

Ci sono dei vantaggi? E ci sono anche molti vantaggi: a differenza del noto Ansible, abbiamo un'interfaccia web in cui puoi vedere la conformità che abbiamo applicato. Ad esempio, le porte che sporgono verso il mondo, qual è lo stato del firewall, sono installati agenti di sicurezza o altri gadget.

Questo software è perfetto per il dipartimento di sicurezza delle informazioni, poiché lo stato dell'infrastruttura sarà sempre davanti ai tuoi occhi e se una qualsiasi delle regole si illumina in rosso, questo è un motivo per visitare il server. Come ho detto, uso Rudder ormai da 2 anni e se ne fumi un po', la vita migliora. La cosa più difficile in una grande infrastruttura è che non ricordi in che stato si trova il server, se June non ha installato gli agenti di sicurezza o se ha configurato correttamente iptables, ma rudder ti aiuterà a rimanere al passo con tutti gli eventi. Consapevole significa armato! )

PS Si è rivelato molto più di quanto avevo previsto, non descriverò come installare i pacchetti, se all'improvviso ci sono richieste, scriverò una seconda parte.

PSS L'articolo è a scopo informativo, ho deciso di condividerlo poiché su Internet si trovano pochissime informazioni. Forse questo sarà interessante per qualcuno. Buona giornata, cari amici)

Sui diritti della pubblicità

Server epici - E ' VPS su Linux o Windows con potenti processori della famiglia AMD EPYC e unità Intel NVMe molto veloci. Affrettati ad ordinare!

Installazione e funzionamento del timone

Fonte: habr.com

Aggiungi un commento