Namestitev agenta za Linux¶
CyberElements Bastion uporablja agenta za Linux, da omeji morebitni omrežni dostop s strežnikov SSH, do katerih dostopajo uporabniki (opredeljeni v pravilnikih / pogodbah o dostopu).
Predpogoji¶
Za pravilno delovanje agenta je potrebnih nekaj predpogojev:
- Združljivi operacijski sistemi: Red Hat 9 in Debian 12
- Prisotnost požarnega zidu
iptables - Prijava z računom, ki ni
root
Informacije
Agent za Linux ne deluje na uporabnika root, ker ima ta uporabnik vedno dovolj pravic, da odstrani vse omejitve, ki bi zanj veljale.
Poleg tega nekatere storitve uporabljajo pravice root, zato bi dodajanje omrežnih omejitev lahko povzročilo nestabilnost teh storitev.
Delovanje¶
Agent za Linux je sestavljen iz več delov:
- storitev systemd z imenom
cleanroom-filter - modul PAM z imenom
pam_clr_filter - pravilnik SELinux za Red Hat, ki strežniku SSH omogoča komunikacijo s storitvijo
cleanroom-filter
Splošno delovanje poteka v tem zaporedju:
sequenceDiagram
autonumber
participant MED as Mediation Controller
participant GW_SSH as Edge Gateway<br/>Snemanje SSH
participant SSH as Cilj SSH<br/>Strežnik SSH
participant PAM as Cilj SSH<br/>Modul PAM pam_clr_filter
participant svc as Cilj SSH<br/>Storitev cleanroom-filter
MED->>GW_SSH: Zahteva za odprtje<br/>aplikacije SSH
GW_SSH->>+MED: Pridobitev informacij o filtriranju<br/>za sejo
MED->>-GW_SSH: Pošiljanje informacij<br/>o filtriranju omrežja
GW_SSH->>+SSH: Povezava SSH
SSH-->-PAM: Ustvarjanje seje SSH
PAM->>+svc: Pošiljanje uporabniškega imena
Note right of svc: Ustvarjanje verige <br/>iptables za uporabnika z imenom clr-LOGIN
svc->>-PAM: Pošiljanje enoličnega žetona
Note over PAM: Dodajanje spremenljivke okolja<br/> CLR-ID z enoličnim žetonom<br/> v sejo uporabnika
GW_SSH->>svc: Pošiljanje seznama omrežij, ki jih je treba dovoliti
Note over svc: Ustvarjanje pravila iptables OUTPUT<br/> za preusmeritev prometa uporabnika v<br/> prej ustvarjeno verigo iptables
Note over svc: Dodajanje avtorizacij v verigo<br/> iptables, ustvarjeno za uporabnika
break Konec seje SSH
SSH->>+GW_SSH: Obvestilo o koncu seje
SSH-->svc: Zaznavanje konca seje SSH
Note over svc: Brisanje pravila iptables<br/> OUTPUT, ustvarjenega za uporabnika
Note over svc: Brisanje verige iptables,<br/> ustvarjene za uporabnika
GW_SSH->>-MED: Obvestilo o koncu<br/> seje SSH uporabnika
end
- Strežnik Mediation Controller komponenti Edge Gateway pošlje informacije za odprtje nove seje SSH.
- Storitev za snemanje SSH od strežnika Mediation Controller zahteva podatke o omrežnem filtriranju, ki jih je treba uporabiti za sejo SSH.
- Storitev Mediation Controller odgovori s seznamom dovoljenih omrežij.
- Storitev za snemanje SSH nato vzpostavi povezavo s ciljnim strežnikom SSH.
- Povezava s strežnikom SSH sproži zaporedje ustvarjanja seje in s tem prehod skozi module PAM, dodeljene
sshd. - Modul PAM
pam_clr_filteragenta za Linux pošlje uporabniško ime storitvicleanroom-filter, ki nato ustvari novo verigo iptables z imenomclr-LOGIN, pri čemer se LOGIN nadomesti s prejetim uporabniškim imenom. - Ko je veriga iptables ustvarjena, storitev
cleanroom-filterustvari naključni token in ga pošlje modulu PAMpam_clr_filter. Ta doda token v okoljsko spremenljivkoCLR-IDuporabnika. - Storitev za snemanje SSH prek izvršljive datoteke
/usr/local/ipdiva/bin/cleanroom-netfiltersession.pystoritvicleanroom-filterpošlje seznam omrežij, ki jih je treba dovoliti. Storitev nato ustvari pravilo iptablesOUTPUT, ki ves promet uporabnika, prepoznanega po njegovem UID, preusmeri v verigo iptables, ustvarjeno v koraku 6. Vsi tokovi, ki jih je treba dovoliti za uporabnika, se dodajo v verigo iptables. - Ko se sproži konec seje SSH, se informacija pošlje storitvi za snemanje SSH komponente Edge Gateway.
- Storitev
cleanroom-filterzazna konec seje uporabnika in počisti dodana pravila iptables: izbriše direktivoOUTPUT, ki preusmerja promet uporabnika v verigo iptables, in izbriše samo verigo. - Ko komponenta Edge Gateway prejme konec seje SSH, to informacijo posreduje storitvi Mediation Controller.
Namestitev¶
Zahtevana dovoljenja root
Za namestitev agenta so potrebne pravice root.
Paket .deb ali .rpm lahko prenesete iz skrbniške konzole:
- Odprite delovni prostor „Configurations“ z gumbom v zgornjem levem kotu:

- Odprite ploščico „Toolbox“

- Na prvem zavihku, „Integration Tools“, izberite namestitveni program, ki ustreza želenemu operacijskemu sistemu

Ko pridobite paket, ga prenesite na strežnik Linux v imenik /tmp/. Nato sledite navodilom za namestitev za vaš operacijski sistem:
Z ustreznimi dovoljenji root zaženite naslednje ukaze:
1 2 | |
Drugi ukaz samodejno doda dve vrstici v datoteko /etc/pam.d/sshd, vendar je to operacijo mogoče izvesti tudi ročno:
27 28 29 30 31 32 33 34 35 36 37 | |
Z dovoljenji root zaženite naslednje ukaze:
1 2 | |
Drugi ukaz samodejno doda dve vrstici v datoteko /etc/pam.d/sshd, vendar je to operacijo mogoče izvesti tudi ročno:
11 12 13 14 15 16 17 | |