Obzirom da AOSI web servis komunicira SOAP/HTTPS protokolom, umjesto self signed certifikata koji standardno dolazi s paketom aosi-aai  za kriptiranje HTTPS prometa potrebno je postaviti valjani javno vjerodostojan certifikat. Postavljanje takvog certifikata omogućit će klijentima koji se spajaju na AOSI da automatski provjere ispravnost certifikata i budu sigurni da pripada ustanovi na čiji se AOSI spajaju.

Javno vjerodostojan certifikat  je svaki certifikat koji je izdan od izdavatelja certifikata koji se nalaze na popisu javnih izdavatelja u obliku Trusted Certification Authorities datoteke koja je pridodana svim preglednicima, a održava ga Certification Authority Browser Forum.

Jedan od takvih izdavatelja je i CARNET servis pod nazivom TCS. Upute za dobivanje takvog certifikata navedene su na web stranici https://certifikati.carnet.hr

Izrada certifikata

Prije primjene novog certifikata potrebno je posjedovati certifikat izdan za poslužitelj na kojem se nalazi AOSI web servis.

Da bi certifikat bio valjan, u polju subject, u atributu CN (ili u ekstenziji Subject Alternative Name) mora imati ispravan hostname.

Ta vrijednost trebala bi biti jednaka vrijednosti koju vraća naredba:

hostname --fqdn

izvršena na poslužitelju na kojem se nalazi AOSI web servis (npr. mario.inst.hr). 

Debian 11 (bullseye) - postavljanje certifikata

Za primjenu certifikata AOSI web servisa potrebne su tri datoteke (ekstenzija nije bitna, bitno je da su PEM enkodirani) u prvoj se nalazi serverski certifikat (obično ima nastavak .crt, .cer, .pem) , u drugoj intermediate certifikati (obično ima nastavak .pem), a u trećoj se nalazi ključ certifikata (obično ima nastavak .key, .pem) .

Dobra praksa je smjestiti navedene datoteke na sljedeća mjesta : 

  • serverski certifikat 
    • putanja: /etc/ssl/certs/ 
    • naziv datoteke: <hostname>.crt (npr mario_inst_hr.crt)
  • intermidiet certifikati 
    • putanja: /etc/ssl/certs/ 
    • naziv datoteke: <kratki_naziv_izdavatelja>.pem (npr harica.pem)
  • ključ
    • putanja: /etc/ssl/private/ 
    • naziv datoteke: <hostname>.key (npr mario_inst_hr.key)

VAŽNO: aosi web servis se izvršava pod korisnikom aosi. Bitno je osigurati da korisnik aosi smije čitati datoteke s certifikatom i ključem. Korisnik aosi je u grupi aosi, pa je jedan od načina da to postignete da postavite da je direktorij i datoteke s certifikatom u vlasništvu grupa aosi i da grupa ima pravo čitanja datoteka s ključem i certifikatima / ulaska u direktorij.

Pokrenuti naredbu za dohvat informacija o najnovijim paketima:

# apt-get update

Pokrenuti instalaciju naredbom:

# apt-get install certs-aai

Ako paket ne postoji u postupku instalacije treba:

  • Na prvoj formi odabrati Yes/Da
  • U drugoj formi unijeti cijelu putanju do datoteke s certifikatom (postavljen prije). Na primjer, putanja će izgledati ovako: /etc/ssl/certs/mario_inst_hr.crt
  • u trećoj formi unijeti cijelu putanju do datoteke s intermediate certifikatima (postavljen prije). Na primjer, putanja će izgledati ovako: /etc/ssl/certs/harica.pem
  • U četvrtoj formi unijeti cijelu putanju do datoteke s ključem (postavljen prije). Na primjer, putanja će izgledati ovako: /etc/ssl/private/mario_inst_hr.key

Pokrenuti rekonfiguraciju paketa, ako u predhodnom koraku nije pitano za certifikate

# dpkg-reconfigure certs-aai

U postupku zamjene postojećih certifikata treba:

  • Na prvoj formi odabrati Yes/Da
  • U drugoj formi unijeti cijelu putanju do datoteke s certifikatom (postavljen prije). Na primjer, putanja će izgledati ovako: /etc/ssl/certs/mario_inst_hr.crt
  • u trećoj formi unijeti cijelu putanju do datoteke s intermediate certifikatima (postavljen prije). Na primjer, putanja će izgledati ovako: /etc/ssl/certs/harica.pem
  • U četvrtoj formi unijeti cijelu putanju do datoteke s ključem (postavljen prije). Na primjer, putanja će izgledati ovako: /etc/ssl/private/mario_inst_hr.key

Debian 12 (bookworm) - postavljanje certifikata

Za primjenu certifikata AOSI web servisa potrebne su dvije datoteke (ekstenzija nije bitna, bitno je da su PEM enkodirani) u prvoj se nalazi serverski certifikat s pripadajućim intermediate certifikatima (obično ima nastavak .crt, .cer, .pem), a u drugoj se nalazi ključ certifikata (obično ima nastavak .key, .pem) .

Dobra praksa je smjestiti navedene datoteke na sljedeća mjesta : 

  • serverski certifikat 
    • putanja: /etc/ssl/certs/ 
    • naziv datoteke: <hostname>.crt (npr mario_inst_hr.crt)
  • ključ
    • putanja: /etc/ssl/private/ 
    • naziv datoteke: <hostname>.key (npr mario_inst_hr.key)

VAŽNO: aosi web servis se izvršava pod korisnikom aosi. Bitno je osigurati da korisnik aosi smije čitati datoteke s certifikatom i ključem. Korisnik aosi je u grupi aosi, pa je jedan od načina da to postignete da postavite da je direktorij i datoteke s certifikatom u vlasništvu grupa aosi i da grupa ima pravo čitanja datoteka / ulaska u direktorij.

Pokrenuti naredbu za dohvat informacija o najnovijim paketima:

# apt-get update

Pokrenuti instalaciju naredbom:

# apt-get install certs-aai

Ako paket ne postoji u postupku instalacije treba:

  • Na prvoj formi odabrati Yes/Da
  • U drugoj formi unijeti cijelu putanju do datoteke s certifikatom i pripadajućim intermediate certifikatima (postavljen prije). Na primjer, putanja će izgledati ovako: /etc/ssl/certs/mario_inst_hr.crt
  • U trećoj formi unijeti cijelu putanju do datoteke s ključem (postavljen prije). Na primjer, putanja će izgledati ovako: /etc/ssl/private/mario_inst_hr.key

Pokrenuti rekonfiguraciju paketa, ako u predhodnom koraku nije pitano za certifikate

# dpkg-reconfigure certs-aai

U postupku zamjene postojećih certifikata treba:

  • Na prvoj formi odabrati Yes/Da
  • U drugoj formi unijeti cijelu putanju do datoteke s certifikatom i pripadajućim intermediate certifikatima (postavljen prije). Na primjer ona će izgledati ovako: /etc/ssl/certs/mario_inst_hr.crt
  • U trećoj formi unijeti cijelu putanju do datoteke s ključem (postavljen prije). Na primjer ona će izgledati ovako: /etc/ssl/private/mario_inst_hr.key


Primjena certifikata

Nakon postavljanja novih certifikata, AOSI web servis treba primijeniti novi cerifikat. Primijena novih certifikata provodi se izvođenjem slijedećih naredbi:


construction Prije pokretanja naredbi

Prilikom pokretanja naredbe dpkg-reconfigure aosi-aai potrebno je unijeti zaporku LDAP administratorskog (sistemskog) korisnika čiji je dn: cn=admin, dc=<domena>, dc=hr  (npr. cn=admin, dc=inst, dc=hr) , ne radi se o fizičkoj osobi/korisniku sa ovlastima ažuriranja podataka putem web sučelja već o "sistemskom korisniku". Ta je zaporka zapisana u datoteci /etc/aosi/ldap_pwd


Rekonfiguracija aosi-aai paketa 

# dpkg-reconfigure aosi-aai

Restartati AOSI web servis naredbom

# systemctl restart aosi-aai

Kako provjeriti ispravnost certifikata AOSI web servisa?

  • No labels