Installazione dell'agente Linux¶
L'agente Linux viene utilizzato da cyberelements.io / cyberelements Cleanroom per limitare il possibile accesso alla rete dai server SSH accessibili dagli utenti (definito nelle politiche / contratti di accesso).
Prerequisiti¶
Per il corretto funzionamento dell'agente sono necessari alcuni prerequisiti:
- Sistema operativo compatibile: Red Hat 9 e Debian 12
- Presenza del
iptablesfirewall - Accesso con un account diverso da
root
Info
L'agente Linux non agisce sull'utente root, poiché quest'utente ha sempre i diritti sufficienti per rimuovere qualsiasi restrizione che gli sarebbe applicata.
Inoltre, poiché alcuni servizi root In questo caso, l'aggiunta di restrizioni di rete potrebbe causare l'instabilità di questi servizi.
Operazione¶
L'agente Linux è suddiviso in diverse parti:
- Un servizio systemd denominato
cleanroom-filter - Un modulo PAM denominato
pam_clr_filter - Una policy SELinux per Red Hat per consentire al server SSH di comunicare con il servizio
cleanroom-filter
L'operazione generale segue questa sequenza:
sequenceDiagram
autonumber
participant MED as Mediation Controller
participant GW_SSH as Edge Gateway<br/>SSH Recorder
participant SSH as SSH Target<br/>SSH Server
participant PAM as SSH Target<br/>pam_clr_filter PAM Module
participant svc as SSH Target<br/>cleanroom-filter Service
MED->>GW_SSH: Request to open an<br/>SSH application
GW_SSH->>+MED: Retrieve filtering information<br/>for the session
MED->>-GW_SSH: Send network<br/>filtering information
GW_SSH->>+SSH: SSH Connection
SSH-->-PAM: Creating an SSH session
PAM->>+svc: Sending the username
Note right of svc: Creating an iptables <br/>chain for the user named clr-LOGIN
svc->>-PAM: Sending a unique token
Note over PAM: Adding the CLR-ID environment<br/> variable containing the unique token<br/> to the user's session
GW_SSH->>svc: Sending the list of networks to be authorized
Note over svc: Creating an iptables OUTPUT rule<br/> to redirect the user's traffic to the iptables<br/> chain created previously
Note over svc: Adding authorizations to the iptables<br/> chain created for the user
break End of SSH session
SSH->>+GW_SSH: End of session notification
SSH-->svc: Detection of end of SSH session
Note over svc: Deletion of iptables OUTPUT<br/> rule created for user
Note over svc: Deletion of iptables chain<br/> created for user
GW_SSH->>-MED: End of SSH session<br/> notification for user
end
- Il Mediation Controller Il server invia informazioni al Edge Gateway per aprire una nuova sessione SSH.
- Il servizio di registrazione SSH chiede al Mediation Controller server per il filtro di informazioni di rete da applicare alla sessione SSH.
- Il Mediation Controller risponde con un elenco di reti autorizzate.
- Il servizio di registrazione SSH stabilisce quindi la connessione al server SSH di destinazione.
- La connessione al server SSH attiva la sequenza di creazione di sessione e quindi il passaggio attraverso i moduli PAM assegnati a
sshd. - L'agente Linux
pam_clr_filterIl modulo PAM invia il nome utente alcleanroom-filterservizio, che crea una nuova catena iptables chiamataclr-LOGINdove LOGIN è sostituito dal nome utente ricevuto. - Dopo aver creato la catena iptables, il
cleanroom-filterIl servizio crea e invia un token casuale alpam_clr_filterIl modulo PAM aggiunge questo token al codice di accesso dell'utente.CLR-IDvariabile ambientale. - Il servizio di registrazione SSH invia, tramite il
/usr/local/ipdiva/bin/cleanroom-netfiltersession.pyIl programma di ricerca è stato pubblicato il 1° gennaio 1997 e il suo contenuto è stato pubblicato il 1° gennaio 1998.cleanroom-filterIl servizio crea quindi unOUTPUTiptables regola per reindirizzare tutto il traffico dall'utente, identificato dal suo UID, alla catena iptables creata nel passaggio 6. Tutti i flussi da autorizzare per l'utente vengono aggiunti alla catena iptables. - Quando viene attivato il termine della sessione SSH, le informazioni vengono inviate al servizio di registrazione SSH del server. Edge Gateway.
- Il
cleanroom-filterIl servizio rileva la fine della sessione dell'utente e pulisce le regole iptables aggiunte: elimina le regole iptables aggiunte e le regole iptables aggiunte.OUTPUTdirettiva che reindirizza il traffico dell'utente verso una catena iptables e elimina la catena stessa. - Una volta che il Edge Gateway ha ricevuto la fine della sessione SSH, trasmette questa informazione al Mediation Controller.
Installazione¶
Permessi root richiesti
Per installare l'agente sono necessari i privilegi root.
Il pacchetto .deb o .rpm può essere scaricato dalla console di amministrazione:
Una volta recuperato il pacchetto, invialo al server Linux nella directory /tmp/. Quindi segui le istruzioni di installazione per il tuo sistema operativo:
Eseguire i seguenti comandi con le autorizzazioni root appropriate:
1 2 | |
Il secondo comando automatizza l'aggiunta di due righe al file /etc/pam.d/sshd, ma questa operazione può essere eseguita anche manualmente:
27 28 29 30 31 32 33 34 35 36 37 | |
Eseguire i seguenti comandi con root autorizzazioni:
1 2 | |
Il secondo comando automatizza l'aggiunta di due righe al file /etc/pam.d/sshd, ma questa operazione può essere eseguita anche manualmente:
11 12 13 14 15 16 17 | |





