Preskoči na sadržaj

Nadogradnja tijekom rada usluge Mediation Controller

Važno

Dokumentacija za nadogradnju tijekom rada usluge Mediation Controller namijenjena je svakom poslužitelju Mediation Controller koji radi na sustavu Debian 11. Verzija sustava Debian može se provjeriti sljedećom naredbom (koju treba izvršiti putem protokola SSH ili pristupa konzoli):

1
cat /etc/debian_version

Informacije

Podsjetnik: prebacivanje na root na računalima sa sustavom Debian mora se izvršiti sljedećom naredbom:

1
su -

Planiranje i priprema

Otvaranje mrežnih tokova

Pri nadogradnji proizvoda mnogo se paketa mora preuzeti iz repozitorija sustava Debian zbog prijelaza s verzije Debian 11 na verziju 12. Pristup putem TCP 80 mora biti otvoren prema security.debian.org i ftp.fr.debian.org.

Da biste testirali otvorenost tokova na računalu, možete pokrenuti sinkronizaciju repozitorija sustava Debian. Ako se prikažu poruke o pogreškama u vezi s pristupom repozitorijima sustava Debian, mrežni tok nije otvoren, a vjerojatno ga blokira vatrozid tvrtke. Sinkronizaciju repozitorija možete pokrenuti sljedećom naredbom:

1
apt update

Preuzimanje zrcala i potrebnih alata

Zrcalo CyberElements Cleanroom 4.6 možete preuzeti s ove poveznice (potrebno je stvoriti račun klijenta): Systancia Marketplace

Ključ systancia.gpg, koji služi za provjeru autentičnosti repozitorija CyberElements Bastion, također se mora preuzeti sa servisa Systancia Marketplace.

Uz zrcalo, za postupak nadogradnje bit će potrebni alati trećih strana:

  • SSH klijent (u sustavu Windows možete upotrijebiti alat PuTTY)
  • SCP klijent (u sustavu Windows možete upotrijebiti alate WinSCP ili FileZilla)

Instalacija i korištenje alata screen

Alat screen omogućuje otvaranje više terminala ljuske u jednoj konzoli. Taj je alat nužno upotrijebiti za nadogradnju verzije rješenja CyberElements Bastion kako bi se uklonila ovisnost o stabilnosti mrežne povezivosti. Naime, bez alata screen instalacija bi se prekinula u slučaju prekida SSH povezivosti s poslužiteljima CyberElements Bastion.

Zahvaljujući alatu screen, pri ponovnom povezivanju s konzolom ljuske opreme CyberElements Bastion može se vratiti terminal u kojem se izvršavao postupak ažuriranja.

Paket screen treba instalirati sljedećim naredbenim retkom:

1
apt install --no-install-recommends screen

Da biste otvorili novi terminal screen, morate izvršiti sljedeću naredbu:

1
screen -S <ID>

Zamijenite <ID> nazivom koji identificira sesiju.

Primjer

Za nadogradnje verzije proizvoda CyberElements identifikator cye-upgrade lako je prepoznatljiv. Naredba bi stoga bila sljedeća:

1
screen -S cye-upgrade

Da biste vratili terminal otvoren pomoću alata screen, dovoljno je izvršiti sljedeću naredbu:

1
screen -r <ID>

Zamijenite <ID> nazivom definiranim pri otvaranju sesije.

Primjer

Terminal prethodno otvoren s identifikatorom cye-upgrade može se vratiti sljedećom naredbom:

1
screen -r cye-upgrade

Da biste zatvorili terminal nakon dovršetka nadogradnje, u terminal unesite naredbu exit ili tipkovnički prečac ctrl+d.

Time ćete se vratiti u konzolu. Poruka „screen is terminating“ potvrđuje da je terminal zatvoren.

Proširenje prostora na disku za virtualne uređaje

Virtualni uređaji Systancia Cleanroom 4.4 ili 4.5 zahtijevaju dodavanje proširenja diska od 4 GB particiji /usr. Ova je operacija potrebna kako bi bilo dovoljno prostora na disku za nadogradnju i kako bi se izbjeglo zastajanje tijekom operacije.

Prilikom povezivanja s poslužiteljem Mediation Controller, bilo putem protokola SSH ili u načinu konzole, poruka dobrodošlice obavijestit će vas da ste povezani s računalom tvrtke Systancia. Dodatni redak navodi verziju appliance.

Primjer

Virtualni uređaj Mediation Controller s verzijom 4.5 dat će sljedeći rezultat:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
            ____            _                   _
        / ___| _   _ ___| |_ __ _ _ __   ___(_) __ _
        \___ \| | | / __| __/ _  | '_ \ / __| |/ _  |
            ___) | |_| \__ \ || (_| | | | | (__| | (_| |
        |____/ \__, |___/\__\__,_|_| |_|\___|_|\__,_|
                |___/
#################################################################
# WARNING:                                                      #
# You must have specific authorization to access this machine.  #
# Unauthorized access to this machine is prohibited and will be #
# considered as intrusion.                                      #
# Unauthorized users will be logged, monitored, and could be    #
# prosecuted.                                                   #
#################################################################
Systancia Cleanroom 4.5.0 B77

Ako računalo nije virtualni uređaj isporučen s verzijom 4.4 ili 4.5, ovo se poglavlje može preskočiti i prijeći na nadogradnju.

Izričito se preporučuje sigurnosna kopija

Sljedeći koraci izmijenit će particioniranje diska poslužitelja Mediation Controller. Ako su napravljene ručne promjene, sljedeće upute možda neće biti prikladne, što može dovesti do blokiranja računala.

Prije nastavka napravite sigurnosnu kopiju računala ili, ako je potrebno, duplicirajte virtualno računalo. Snimke stanja ne mogu se koristiti jer, osobito kod platforme VMware, onemogućuju proširenje diska.

Na razini hipervizora proširite prostor na disku virtualnog računala za dodatnih 4 GB. Ako proširenje diska nije moguće, provjerite da nema snimki stanja, a ako ih nema, isključite virtualno računalo ako proširenje tijekom rada nije podržano.

Nakon što je prostor na disku proširen na razini virtualnog računala, za proširenje particije /usr potrebne su sljedeće naredbe koje treba izvršiti kao root:

1
2
3
4
5
6
echo 1 > /sys/class/block/sda/device/rescan
start_lvm_partition=`fdisk -l /dev/sda | grep LVM | awk '{print $2}'`
echo -e "d\n2\nn\ne\n2\n\n\nn\n$start_lvm_partition\n\nt\n5\n8E\nw" | fdisk /dev/sda
pvresize /dev/sda5
lvresize -l +100%FREE /dev/mapper/SystanciaLVMGroup-usr
resize2fs /dev/mapper/SystanciaLVMGroup-usr

Nadogradnja

Ažuriranje paketa sustava Debian

Budući da nadogradnja rješenja CyberElements Bastion zahtijeva nadogradnju sustava Debian, preporučuje se da prije prelaska na Debian 12 ispravno ažurirate pakete sustava Debian 11. Da biste to učinili, pokrenite sljedeće naredbe kao root (ažuriranje sustava, a zatim uklanjanje nepotrebnih paketa):

1
2
3
apt update
apt upgrade -y
apt autoremove -y

Mogu se pojaviti poruke koje od vas traže da izmijenite konfiguraciju nekoliko konfiguracijskih datoteka. U tim slučajevima odaberite mogućnost zadržavanja trenutačne konfiguracije.

Priprema upravljačkih programa za Microsoft SQL Server

Dodatni koraci potrebni su ako su instalirani upravljački programi za Microsoft SQL Server (to je slučaj na virtualnim uređajima koje isporučuje CyberElements).
Da biste provjerili jesu li prisutni na poslužitelju, kao root možete izvršiti sljedeću naredbu:

1
apt list --installed ms*

Ako se ne pojavi nikakav odgovor, upravljački programi nisu instalirani i možete prijeći na korak pripreme zrcala.
U suprotnom, ako su upravljački programi instalirani, trebala bi biti navedena dva paketa: msodbcsql17 i mssql-tools. Slijedite upute u ovom poglavlju.

Primjeri

Poslužitelj na kojem upravljački programi nisu instalirani dao bi sljedeći rezultat prethodne naredbe:

1
Listing... Done

Poslužitelj na kojem su upravljački programi instalirani dat će rezultat sličan ovome (verzije paketa mogu se razlikovati):

1
2
3
Listing... Done
msodbcsql17/bullseye,now 17.10.6.1-1 amd64 [installed]
mssql-tools/bullseye,now 17.10.1.1-1 amd64 [installed]

Sljedeće naredbe potrebne su za instalaciju određene verzije paketa kako bi nadogradnja bila uspješna:

1
env ACCEPT_EULA=Y apt install -y --allow-downgrades odbcinst=2.3.6-0.1+b1 odbcinst1debian2=2.3.6-0.1+b1 libodbc1=2.3.6-0.1+b1 unixodbc=2.3.6-0.1+b1 mssql-tools=17.9.1.1-1 msodbcsql17=17.9.1.1-1

Konfigurirajte repozitorij tvrtke Microsoft prilagođen sustavu Debian 12 radi pripreme nadogradnje:

1
echo "deb [arch=amd64] https://packages.microsoft.com/debian/12/prod bookworm main" > /etc/apt/sources.list.d/mssql-release.list

Priprema zrcala CyberElements Cleanroom 4.6

Zrcalo preuzeto tijekom faze pripreme (datoteka s nastavkom tgz) mora se poslati na poslužitelj protokolom SCP. Treba ga smjestiti u direktorij /tmp/.

Zatim pripremite zrcalo izvršavanjem sljedećih naredbi kao root (preostale datoteke iz neke starije nadogradnje verzije bit će izbrisane):

1
2
3
mkdir -p /opt/systancia/repository
rm -rf /opt/systancia/repository/*
tar xvzf /tmp/*.tgz -C /opt/systancia/repository/

Konfiguracija alata APT

Upravitelj paketa APT konfiguriran je za dohvaćanje paketa sustava Debian 11; mora se ponovno konfigurirati za dohvaćanje paketa sustava Debian 12. Također je potrebno ažurirati referencu na lokalno zrcalo rješenja CyberElements Bastion. Da biste to učinili, pokrenite sljedeće naredbe kao root:

1
2
echo -e 'deb http://security.debian.org/debian-security/ bookworm-security main contrib non-free non-free-firmware\ndeb http://ftp.fr.debian.org/debian bookworm main contrib non-free non-free-firmware\ndeb http://ftp.fr.debian.org/debian bookworm-updates main contrib non-free non-free-firmware' > /etc/apt/sources.list
echo "deb file:///opt/systancia/repository/ bookworm ipdiva" > /etc/apt/sources.list.d/systancia.list

Autentičnost lokalnog zrcala provjerava se ključem systancia.gpg preuzetim tijekom faze pripreme. Pošaljite ga na poslužitelj protokolom SCP, u direktorij /tmp/, a zatim ga instalirajte sljedećom naredbom kao root:

1
mv /tmp/systancia.gpg /etc/apt/trusted.gpg.d/

Uz konfiguraciju novih repozitorija, toplo preporučujemo da primijenite sljedeću postavku kojom se alatu APT nalaže da ne instalira preporučene ovisnosti koje nisu nužno potrebne, kako bi se smanjio broj instaliranih komponenti. Sljedeća naredba primjenjuje tu postavku kao root:

1
echo -e 'APT::Install-Recommends false;\nAPT::Install-Suggests false;' > /etc/apt/apt.conf.d/99norecommends

Na kraju je potrebno ažurirati popis paketa u repozitorijima sljedećom naredbom:

1
apt update

Pokretanje nadogradnje verzije

Pristupite poslužitelju Mediation Controller putem protokola SSH i prijeđite na korisnika root, a zatim otvorite sesiju alata screen kako je navedeno gore.

Započnite ažuriranjem određenih paketa kako bi se nadogradnja verzije mogla provesti. Pri izvršavanju prve naredbe očekuje se poruka o pogrešci, ali pogreška će se ispraviti drugom naredbom:

1
2
apt install -y python3-cleanroom-django-mssql python3-ipdiva-ua-parser python3-ipdiva-user-agents python3-ipdiva-django2
apt install -y --fix-broken

Pri nadogradnji poslužitelja Mediation Controller sa sustava Debian 11 na Debian 12 paket collectd se ažurira i postaje nekompatibilan s konfiguracijskom datotekom koju generira CyberElements Bastion (/etc/collectd/collectd.conf). To može uzrokovati pogrešku tijekom ažuriranja.

Da biste to izbjegli, onemogućite collectd:

1
2
systemctl stop collectd 
systemctl disable collectd

Nakon toga nadogradnja se može pokrenuti sljedećom naredbom:

1
apt dist-upgrade -y

Tijekom nadogradnje bit će vam postavljeno nekoliko pitanja o tome želite li zadržati konfiguracijske datoteke i ažurirati ih prema standardnoj konfiguraciji sustava Debian 12 ili zadržati postojeću specifičnu konfiguraciju. Evo naših preporuka za većinu datoteka na koje možete naići:

Konfiguracijska datoteka Preporučena radnja
/etc/issue Za zadržavanje odgovorite N
/etc/issue.net Za zadržavanje odgovorite N
/etc/security/limits.conf Za zadržavanje odgovorite N
/etc/login.defs Za zadržavanje odgovorite N
/etc/shibboleth/shibboleth2.xml Za zadržavanje odgovorite N
/etc/shibboleth/shibd.logger Primijenite promjene, odgovorite Y
/etc/default/ntpsec Primijenite promjene, odgovorite Y
/etc/snmp/snmpd.conf Primijenite promjene, odgovorite Y
/etc/logrotate.d/IPdivaServer Primijenite promjene, odgovorite Y
/etc/ssh/sshd_config Za zadržavanje odgovorite Keep the local version currently installed
/etc/ssh/ssh_config Primijenite promjene, odgovorite Y
/etc/apache2/ports.conf Za zadržavanje odgovorite N
/etc/init.d/apache2 Za zadržavanje odgovorite N
/etc/modsecurity/modsecurity.conf-recommended Primijenite promjene, odgovorite Y
/etc/ipdiva/httpd/commonParameters.conf Primijenite promjene, odgovorite Y
/etc/ipdiva/care/djangosettings.ini Primijenite promjene, odgovorite Y
/etc/crontab Primijenite promjene, odgovorite Y
/etc/openssl.cnf Primijenite promjene, odgovorite Y
/etc/audit/rules.d/audit.rules Za zadržavanje odgovorite N
/etc/pam.d/su Za zadržavanje odgovorite N
/etc/sysctl.conf Za zadržavanje odgovorite N

Prihvatite konfiguracijsku poruku paketa glibc:

Prihvatite automatsko ponovno pokretanje usluga:

Kada je nadogradnja dovršena, pokrenite sljedeće naredbe da biste ponovno aktivirali collectd, uklonili nepotrebne pakete i ponovno pokrenuli računalo:

1
2
3
4
systemctl start collectd
systemctl enable collectd
apt autoremove -y
reboot

Radnje specifične za poslužitelje Mediation Controller u arhitekturi Cluster

Na poslužitelju Mediation Controller SLAVE pokrenite sljedeće naredbe kako biste ponovno sinkronizirali zajedničku tajnu između poslužitelja Mediation Controller MASTER i SLAVE:

1
2
hostManagerCtl masterSynchro /etc/ipdiva/secure/secret /etc/ipdiva/secure/secret
systemctl restart apache2

Nadogradnja instance baze podataka PostgreSQL

Na poslužitelju Mediation Controller ažurirajte instancu baze podataka PostgreSQL s verzije 13 na verziju 15. Da biste to učinili, izvršite sljedeće upute s odgovarajućim pravima root.

Prije migracije provjerite stanje instanci baze podataka PostgreSQL:

1
pg_lsclusters

Pokrenite sljedeće naredbe kako biste ažurirali instancu baze podataka na PostgreSQL verzije 15:

1
2
3
4
pg_dropcluster --stop 15 main
systemctl stop postgresql
pg_upgradecluster 13 main
systemctl start postgresql

Provjerite je li instanca baze podataka uspješno nadograđena. Trebale bi se pojaviti dvije instance, jedna u verziji 13, a druga u verziji 15, koja je jedina aktivna. Provjera se izvodi sljedećom naredbom:

1
pg_lsclusters

Ako je nadogradnja bila uspješna, instanca baze podataka verzije 13 može se izbrisati:

1
pg_dropcluster 13 main

Može se pokrenuti brisanje paketa PostgreSQL verzije 13:

1
apt -y --purge autoremove postgresql-client-13 postgresql-13

Migracija baze podataka CyberElements Bastion

Konfiguracija proizvoda pohranjena je u bazi podataka koju je potrebno migrirati kako bi mogla sadržavati konfiguracije promjena koje donosi nova verzija. Operacija se izvodi na poslužitelju Mediation Controller kao root.

Arhitektura Cluster

Za arhitekturu Cluster operaciju je potrebno izvesti samo s jednog poslužitelja Mediation Controller, bez obzira na to s kojeg.

Također je potrebno pokrenuti sljedeću naredbu:

1
python3 /var/lib/ipdiva/care/manage.py migrate

Migracija podataka pokreće se naredbom ekvivalentnom ovoj:

1
python3 /var/lib/ipdiva/care/manage.py migrate --database=<org_clr>

Pri čemu <org_clr> treba zamijeniti nazivom organizacije koja se migrira. Imajte na umu da, ako poslužitelj Mediation Controller ima više organizacija (više tenanta), naredbu ćete morati pokrenuti onoliko puta koliko je organizacija za migraciju.

Primjer

Za platformu CyberElements Bastion koja ima organizacije systancia i systancia-test morat ćete pokrenuti sljedeće naredbe:

1
2
python3 /var/lib/ipdiva/care/manage.py migrate --database=systancia
python3 /var/lib/ipdiva/care/manage.py migrate --database=systancia-test

Nakon migracije baze podataka potrebno je ponovno pokrenuti uslugu Apache2:

1
systemctl restart apache2

Vraćanje konfiguracija

Neke su konfiguracije prebrisane tijekom postupka nadogradnje i potrebno ih je vratiti.

Datoteka commonParameters.conf:

Premjestite oznake <Location> koje se odnose na poslužitelje HTML5 Gateway, a obično se nalaze na kraju datoteke, iz datoteke /etc/ipdiva/httpd/commonParameters.conf.dpkg-old u /etc/ipdiva/httpd/commonParameters.extra.conf (stvorite datoteku ako ne postoji). Ako nema oznaka <Location>, mogu se kopirati sljedeći primjeri.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
<Location /HTML5/>
    Order allow,deny
    Allow from all
    ProxyPass http://127.0.0.1:1234/systanciaHTML5-6.0/ flushpackets=on
    ProxyPassReverse http://127.0.0.1:1234
</Location>

<Location /HTML5/websocket-tunnel>
    Order allow,deny
    Allow from all
    ProxyPass ws://127.0.0.1:1234/systanciaHTML5-6.0/websocket-tunnel
    ProxyPassReverse ws://127.0.0.1:1234/systanciaHTML5-6.0/websocket-tunnel
</Location>
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<Location /HTML5-1/>
    Order allow,deny
    Allow from all
    ProxyPass http://127.0.0.1:1234/systanciaHTML5-6.0/ flushpackets=on
    ProxyPassReverse http://127.0.0.1:1234
</Location>

<Location /HTML5-1/websocket-tunnel>
    Order allow,deny
    Allow from all
    ProxyPass ws://127.0.0.1:1234/systanciaHTML5-6.0/websocket-tunnel
    ProxyPassReverse ws://127.0.0.1:1234/systanciaHTML5-6.0/websocket-tunnel
</Location>

<Location /HTML5-2/>
    Order allow,deny
    Allow from all
    ProxyPass http://127.0.0.1:1235/systanciaHTML5-6.0/ flushpackets=on
    ProxyPassReverse http://127.0.0.1:1235
</Location>

<Location /HTML5-2/websocket-tunnel>
    Order allow,deny
    Allow from all
    ProxyPass ws://127.0.0.1:1235/systanciaHTML5-6.0/websocket-tunnel
    ProxyPassReverse ws://127.0.0.1:1235/systanciaHTML5-6.0/websocket-tunnel
</Location>

Datoteka djangosettings.ini:

Kopirajte podatke iz retka 2 „allowed_hosts“ datoteke /etc/ipdiva/care/djangosettings.ini.dpkg-old u datoteku /etc/ipdiva/care/djangosettings.ini. To se može automatizirati sljedećom naredbom kao root:

1
sed -i "2c\\`sed -n '2p' /etc/ipdiva/care/djangosettings.ini.dpkg-old`" /etc/ipdiva/care/djangosettings.ini

Primjena vraćanja:

Za primjenu vraćanja potrebno je ponovno pokretanje usluge Apache2 kao root:

1
systemctl restart apache2

Provjera valjanosti

Nakon dovršetka nadogradnje potrebno je provjeriti valjanost infrastrukture CyberElements Bastion kako bi se osiguralo da ispravno radi prije povratka u produkciju. Ako provjera valjanosti ne uspije, razmotrite vraćanje na prethodno stanje vraćanjem sigurnosnih kopija poslužitelja CyberElements Bastion.

Pristupite administratorskom sučelju organizacije, a zatim idite na izbornik „About“ na upravljačkoj traci kako biste provjerili je li verzija usluge Mediation Controller uspješno nadograđena na 4.6.

Mogu se pokrenuti prvi testovi funkcionalnosti platforme, ali preporučujemo korištenje verzije 4.6 komponente Edge Gateway kako bi se osigurale optimalne performanse aplikacija CyberElements Bastion.