Aqbeż għall-kontenut

Installazzjoni tal-aġent Linux

L-aġent Linux jintuża minn CyberElements Bastion biex jillimita l-aċċess possibbli għan-netwerk mis-servers SSH aċċessati mill-utenti (definit fil-politiki / fil-kuntratti ta’ aċċess).

Prerekwiżiti

Ftit prerekwiżiti huma meħtieġa biex l-aġent jaħdem sew:

  • Sistemi operattivi kompatibbli: Red Hat 9 u Debian 12
  • Preżenza tal-firewall iptables
  • Dħul b’kont differenti minn root

Informazzjoni

L-aġent Linux ma jaġixxix fuq l-utent root, peress li dan l-utent dejjem għandu drittijiet suffiċjenti biex ineħħi kwalunkwe restrizzjoni li tiġi applikata għalih.

Barra minn hekk, peress li xi servizzi jużaw id-drittijiet ta’ root, iż-żieda ta’ restrizzjonijiet tan-netwerk tista’ tagħmel dawn is-servizzi instabbli.

Tħaddim

L-aġent Linux huwa maqsum f’diversi partijiet:

  • Servizz systemd bl-isem cleanroom-filter
  • Modulu PAM bl-isem pam_clr_filter
  • Politika SELinux għal Red Hat biex tippermetti lis-server SSH jikkomunika mas-servizz cleanroom-filter

It-tħaddim ġenerali jsegwi din is-sekwenza:

sequenceDiagram
    autonumber
    participant MED as Mediation Controller
    participant GW_SSH as Edge Gateway<br/>Reġistratur SSH
    participant SSH as Mira SSH<br/>Server SSH
    participant PAM as Mira SSH<br/>Modulu PAM pam_clr_filter
    participant svc as Mira SSH<br/>Servizz cleanroom-filter

    MED->>GW_SSH: Talba biex tinfetaħ<br/>applikazzjoni SSH
    GW_SSH->>+MED: Ksib tal-informazzjoni tal-filtrazzjoni<br/>għas-sessjoni
    MED->>-GW_SSH: Bgħit ta’ informazzjoni dwar<br/>il-filtrazzjoni tan-netwerk
    GW_SSH->>+SSH: Konnessjoni SSH
    SSH-->-PAM: Ħolqien ta’ sessjoni SSH
    PAM->>+svc: Bgħit tal-isem tal-utent
    Note right of svc: Ħolqien ta’ katina iptables <br/>għall-utent bl-isem clr-LOGIN
    svc->>-PAM: Bgħit ta’ token uniku
    Note over PAM: Żieda tal-varjabbli tal-ambjent CLR-ID<br/> li fiha t-token uniku<br/> mas-sessjoni tal-utent
    GW_SSH->>svc: Bgħit tal-lista tan-netwerks li għandhom jiġu awtorizzati
    Note over svc: Ħolqien ta’ regola iptables OUTPUT<br/> biex it-traffiku tal-utent jiġi ridirezzjonat lejn il-katina iptables<br/> maħluqa qabel
    Note over svc: Żieda ta’ awtorizzazzjonijiet mal-katina iptables<br/> maħluqa għall-utent
    break Tmiem tas-sessjoni SSH
        SSH->>+GW_SSH: Notifika tat-tmiem tas-sessjoni
        SSH-->svc: Skoperta tat-tmiem tas-sessjoni SSH
        Note over svc: Tħassir tar-regola iptables OUTPUT<br/> maħluqa għall-utent
        Note over svc: Tħassir tal-katina iptables<br/> maħluqa għall-utent
        GW_SSH->>-MED: Notifika tat-tmiem tas-sessjoni SSH<br/> għall-utent
    end
Hold "Ctrl" to enable pan & zoom
  1. Is-server Mediation Controller jibgħat informazzjoni lill-komponent Edge Gateway biex tinfetaħ sessjoni SSH ġdida.
  2. Is-servizz tar-reġistrazzjoni SSH jitlob lis-server Mediation Controller l-informazzjoni tal-iffiltrar tan-netwerk li għandha tiġi applikata għas-sessjoni SSH.
  3. Is-servizz Mediation Controller iwieġeb b’lista ta’ netwerks awtorizzati.
  4. Is-servizz tar-reġistrazzjoni SSH imbagħad jistabbilixxi l-konnessjoni mas-server SSH fil-mira.
  5. Il-konnessjoni mas-server SSH tiskatta s-sekwenza tal-ħolqien tas-sessjoni, u għalhekk il-passaġġ mill-moduli PAM assenjati lil sshd.
  6. Il-modulu PAM pam_clr_filter tal-aġent Linux jibgħat l-isem tal-utent lis-servizz cleanroom-filter, li mbagħad joħloq katina iptables ġdida bl-isem clr-LOGIN fejn LOGIN jiġi sostitwit bl-isem tal-utent riċevut.
  7. Wara li joħloq il-katina iptables, is-servizz cleanroom-filter joħloq u jibgħat token każwali lill-modulu PAM pam_clr_filter. Dan tal-aħħar iżid dan it-token mal-varjabbli tal-ambjent CLR-ID tal-utent.
  8. Is-servizz tar-reġistrazzjoni SSH jibgħat, permezz tal-eżekutibbli /usr/local/ipdiva/bin/cleanroom-netfiltersession.py, il-lista tan-netwerks li għandhom jiġu awtorizzati lis-servizz cleanroom-filter. Is-servizz imbagħad joħloq regola iptables OUTPUT biex jidderieġi mill-ġdid it-traffiku kollu mill-utent, identifikat bl-UID tiegħu, lejn il-katina iptables maħluqa fil-pass 6. Il-flussi kollha li għandhom jiġu awtorizzati għall-utent jiżdiedu mal-katina iptables.
  9. Meta jiġi skattat it-tmiem tas-sessjoni SSH, l-informazzjoni tintbagħat lis-servizz tar-reġistrazzjoni SSH tal-komponent Edge Gateway.
  10. Is-servizz cleanroom-filter jiskopri t-tmiem tas-sessjoni tal-utent u jnaddaf ir-regoli iptables miżjuda: iħassar id-direttiva OUTPUT li tidderieġi mill-ġdid it-traffiku tal-utent lejn katina iptables u jħassar il-katina nnifisha.
  11. Ladarba l-komponent Edge Gateway ikun irċieva t-tmiem tas-sessjoni SSH, jgħaddi din l-informazzjoni lis-servizz Mediation Controller.

Installazzjoni

Permessi root meħtieġa

Il-privileġġi root huma meħtieġa biex jiġi installat l-aġent.

Il-pakkett .deb jew .rpm jista’ jitniżżel mill-konsol tal-amministrazzjoni:

  1. Aċċessa l-ispazju tax-xogħol “Configurations” permezz tal-buttuna li tinsab fin-naħa ta’ fuq tax-xellug:
  2. Iftaħ il-madum “Toolbox”
  3. Agħżel il-programm tal-installazzjoni adattat għas-sistema operattiva mixtieqa fl-ewwel tab, “Integration Tools”

Ladarba tikseb il-pakkett, ibagħtu lis-server Linux fil-folder /tmp/. Imbagħad segwi l-istruzzjonijiet tal-installazzjoni għas-sistema operattiva tiegħek:

Ħaddem il-kmandi li ġejjin bil-permessi root xierqa:

1
2
dpkg -i /tmp/cleanroom-netfilter_*_amd64.deb
sed -i "s/@include common-session/@include common-session\n\n\# Use the Cleanroom agent to limit network bounces\nsession    optional\tpam_clr_filter.so/g" /etc/pam.d/sshd

It-tieni kmand jawtomatizza ż-żieda ta’ żewġ linji mal-fajl /etc/pam.d/sshd, iżda din l-operazzjoni tista’ titwettaq ukoll manwalment:

27
28
29
30
31
32
33
34
35
36
37
# Standard Un*x session setup and teardown.
@include common-session

# Use the Cleanroom agent to limit network bounces
session    optional     pam_clr_filter.so

# Print the message of the day upon successful login.
# This includes a dynamically generated part from /run/motd.dynamic
# and a static (admin-editable) part from /etc/motd.
session    optional     pam_motd.so  motd=/run/motd.dynamic
session    optional     pam_motd.so noupdate

Ħaddem il-kmandi li ġejjin bil-permessi root:

1
2
dnf install /tmp/CleanroomFilter-*-Linux.rpm
sed -i "s/revoke$/revoke\n# Use the Cleanroom agent to limit network bounces\nsession    optional\tpam_clr_filter.so/g" /etc/pam.d/sshd

It-tieni kmand jawtomatizza ż-żieda ta’ żewġ linji mal-fajl /etc/pam.d/sshd, iżda din l-operazzjoni tista’ titwettaq ukoll manwalment:

11
12
13
14
15
16
17
# pam_selinux.so open should only be followed by sessions to be executed in the user context
session    required     pam_selinux.so open env_params
session    required     pam_namespace.so
session    optional     pam_keyinit.so force revoke
# Use the Cleanroom agent to limit network bounces
session    optional     pam_clr_filter.so
session    optional     pam_motd.so