Linux aģenta instalēšana¶
CyberElements Bastion izmanto Linux aģentu, lai ierobežotu iespējamo tīkla piekļuvi no SSH serveriem, kuriem piekļūst lietotāji (definēti piekļuves politikās/līgumos).
Priekšnosacījumi¶
Lai aģents darbotos pareizi, ir nepieciešami daži priekšnosacījumi:
- Saderīgās OS: Red Hat 9 un Debian 12
- Ir pieejams ugunsmūris
iptables - Pieteikšanās ar kontu, kas nav
root
Informācija
Linux aģents neietekmē lietotāju root, jo šim lietotājam vienmēr ir pietiekamas tiesības, lai noņemtu jebkurus tam piemērotos ierobežojumus.
Turklāt, tā kā daži pakalpojumi izmanto root tiesības, tīkla ierobežojumu pievienošana var padarīt šos pakalpojumus nestabilus.
Darbības princips¶
Linux aģents sastāv no vairākām daļām:
- systemd pakalpojums ar nosaukumu
cleanroom-filter - PAM modulis ar nosaukumu
pam_clr_filter - SELinux politika sistēmai Red Hat, kas ļauj SSH serverim sazināties ar pakalpojumu
cleanroom-filter
Vispārīgā darbība notiek šādā secībā:
sequenceDiagram
autonumber
participant MED as Mediation Controller
participant GW_SSH as Edge Gateway<br/>SSH ierakstītājs
participant SSH as SSH mērķis<br/>SSH serveris
participant PAM as SSH mērķis<br/>PAM modulis pam_clr_filter
participant svc as SSH mērķis<br/>pakalpojums cleanroom-filter
MED->>GW_SSH: Pieprasījums atvērt<br/>SSH lietojumprogrammu
GW_SSH->>+MED: Filtrēšanas informācijas iegūšana<br/>sesijai
MED->>-GW_SSH: Tīkla filtrēšanas<br/>informācijas sūtīšana
GW_SSH->>+SSH: SSH savienojums
SSH-->-PAM: SSH sesijas izveide
PAM->>+svc: Lietotājvārda sūtīšana
Note right of svc: iptables ķēdes clr-LOGIN <br/>izveide lietotājam
svc->>-PAM: Unikālā marķiera sūtīšana
Note over PAM: Vides mainīgā CLR-ID<br/> ar unikālo marķieri pievienošana<br/> lietotāja sesijai
GW_SSH->>svc: Atļaujamo tīklu saraksta sūtīšana
Note over svc: iptables OUTPUT kārtulas izveide<br/> lietotāja datplūsmas novirzīšanai uz iepriekš izveidoto<br/> iptables ķēdi
Note over svc: Atļauju pievienošana lietotājam<br/> izveidotajai iptables ķēdei
break SSH sesijas beigas
SSH->>+GW_SSH: Paziņojums par sesijas beigām
SSH-->svc: SSH sesijas beigu noteikšana
Note over svc: Lietotājam izveidotās<br/> iptables OUTPUT kārtulas dzēšana
Note over svc: Lietotājam izveidotās<br/> iptables ķēdes dzēšana
GW_SSH->>-MED: Paziņojums par lietotāja<br/> SSH sesijas beigām
end
- Serveris Mediation Controller nosūta komponentam Edge Gateway informāciju jaunas SSH sesijas atvēršanai.
- SSH ierakstīšanas pakalpojums pieprasa serverim Mediation Controller tīkla filtrēšanas informāciju, kas jāpiemēro SSH sesijai.
- Mediation Controller atbild ar atļauto tīklu sarakstu.
- Pēc tam SSH ierakstīšanas pakalpojums izveido savienojumu ar mērķa SSH serveri.
- Savienojums ar SSH serveri aktivizē sesijas izveides secību un līdz ar to pāreju caur PAM moduļiem, kas piešķirti
sshd. - Linux aģenta PAM modulis
pam_clr_filternosūta lietotājvārdu pakalpojumamcleanroom-filter, kas pēc tam izveido jaunu iptables ķēdi ar nosaukumuclr-LOGIN, kur LOGIN tiek aizstāts ar saņemto lietotājvārdu. - Pēc iptables ķēdes izveides pakalpojums
cleanroom-filterģenerē nejaušu marķieri un nosūta to PAM modulimpam_clr_filter. Tas pievieno šo marķieri lietotāja vides mainīgajamCLR-ID. - SSH ierakstīšanas pakalpojums, izmantojot izpildāmo failu
/usr/local/ipdiva/bin/cleanroom-netfiltersession.py, nosūta pakalpojumamcleanroom-filteratļaujamo tīklu sarakstu. Pēc tam pakalpojums izveido iptables kārtuluOUTPUT, lai visu datplūsmu no lietotāja, kuru identificē pēc UID, novirzītu uz iptables ķēdi, kas izveidota 6. darbībā. Visas lietotājam atļaujamās plūsmas tiek pievienotas iptables ķēdei. - Kad tiek aktivizētas SSH sesijas beigas, informācija tiek nosūtīta komponenta Edge Gateway SSH ierakstīšanas pakalpojumam.
- Pakalpojums
cleanroom-filterkonstatē lietotāja sesijas beigas un notīra pievienotās iptables kārtulas: tas dzēš direktīvuOUTPUT, kas novirza lietotāja datplūsmu uz iptables ķēdi, un dzēš pašu ķēdi. - Kad Edge Gateway ir saņēmis SSH sesijas beigas, tas pārsūta šo informāciju komponentam Mediation Controller.
Instalēšana¶
Nepieciešamas root atļaujas
Lai instalētu aģentu, ir nepieciešamas root privilēģijas.
Pakotni .deb vai .rpm var lejupielādēt no administrēšanas konsoles:
- Piekļūstiet darbvietai „Configurations“, izmantojot pogu augšējā kreisajā stūrī:

- Atveriet flīzi „Toolbox“

- Pirmajā cilnē „Integration Tools“ atlasiet vēlamajai operētājsistēmai atbilstošo instalēšanas programmu

Pēc pakotnes iegūšanas nosūtiet to uz Linux servera direktoriju /tmp/. Pēc tam izpildiet savai operētājsistēmai paredzētos instalēšanas norādījumus:
Izpildiet tālāk norādītās komandas ar atbilstošām root atļaujām:
1 2 | |
Otrā komanda automātiski pievieno divas rindiņas failam /etc/pam.d/sshd, taču šo darbību var veikt arī manuāli:
27 28 29 30 31 32 33 34 35 36 37 | |
Izpildiet tālāk norādītās komandas ar root atļaujām:
1 2 | |
Otrā komanda automātiski pievieno divas rindiņas failam /etc/pam.d/sshd, taču šo darbību var veikt arī manuāli:
11 12 13 14 15 16 17 | |