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:
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
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
Il tuo agente apparirà nella sezione "Accetta nuovi nodi", seleziona la casella e fai clic su Accetta
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.
Filtriamo il server di cui abbiamo bisogno in base a funzionalità speciali, ad esempio in base all'indirizzo IP, e salviamo
Il gruppo è costituito.
Impostazione delle regole
Vai a Criteri di configurazione → Regole e crea una nuova regola
Aggiungi il gruppo preparato in precedenza (questo può essere fatto in seguito)
E formiamo una nuova direttiva
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
Assicurati di indicare la nostra regola
Poi salva e il gioco è fatto.
controllare la
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
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 '
Fonte: habr.com