Skip to content

Commit 15870c5

Browse files
authored
Add NGINX documentation (#25)
IB-8862 Signed-off-by: Raul Metsma <raul@metsma.ee>
1 parent f250f0a commit 15870c5

16 files changed

Lines changed: 1457 additions & 25 deletions

File tree

.github/workflows/pages.yml

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,13 +30,24 @@ jobs:
3030
cd ID_software_architecture_files
3131
mkdocs build
3232
mv site ../_site
33+
- name: Copy shared files
34+
run: |
35+
for dir in domain nginx; do
36+
mkdir -p $dir/_includes
37+
cp _includes/head_custom.html $dir/_includes/head_custom.html
38+
done
3339
- name: Build domain page docs
3440
uses: actions/jekyll-build-pages@v1
3541
with:
3642
source: ./domain
3743
destination: ./_site/domain
44+
- name: Build nginx page docs
45+
uses: actions/jekyll-build-pages@v1
46+
with:
47+
source: ./nginx
48+
destination: ./_site/nginx
3849
- name: Upload artifact
39-
uses: actions/upload-pages-artifact@v4
50+
uses: actions/upload-pages-artifact@v5
4051

4152
deploy:
4253
environment:
@@ -47,4 +58,4 @@ jobs:
4758
steps:
4859
- name: Deploy to GitHub Pages
4960
id: deployment
50-
uses: actions/deploy-pages@v4
61+
uses: actions/deploy-pages@v5

README.md

Lines changed: 22 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,34 +2,50 @@
22

33
* [Architecture of ID-software](http://open-eid.github.io)
44
* [Domain Controller Configuration](http://open-eid.github.io/domain)
5+
* [Nginx SSL Configuration](http://open-eid.github.io/nginx)
56

67
## Editing and building "Architecture of ID-software"
78

8-
Uses http://www.mkdocs.org/ and https://github.com/mkdocs/mkdocs-bootswatch styles for generating documentation.
9+
Uses http://www.mkdocs.org/ and https://github.com/mkdocs/mkdocs-bootswatch styles for generating documentation.
910

1011
1. Update source files in ID_software_architecture_files/docs/
1112

12-
2. Build documentation localy
13+
2. Build documentation locally
1314

1415
cd ID_software_architecture_files
1516
mkdocs build
1617

1718
## Editing and building "Domain Controller Configuration"
1819

19-
Uses https://jekyllrb.com and https://just-the-docs.com styles for generating documentation.
20+
Uses https://jekyllrb.com and https://just-the-docs.com styles for generating documentation.
2021

2122
1. Update source files in domain/
2223

23-
2. Build pdf document
24+
2. Build PDF document
2425

2526
```bash
2627
# Export English version
27-
pandoc index.md -L kramdown-toc.lua -o eID_Auth_Guide_EN.pdf
28+
pandoc domain/index.md -L kramdown-toc.lua -o eID_Auth_Guide_EN.pdf
2829

2930
# Export Estonian version
30-
pandoc index.et.md -L kramdown-toc.lua -o eID_Auth_Guide_ET.pdf
31+
pandoc domain/index.et.md -L kramdown-toc.lua -o eID_Auth_Guide_ET.pdf
3132
```
3233

34+
## Editing and building "Nginx SSL Configuration"
35+
36+
Uses https://jekyllrb.com and https://just-the-docs.com styles for generating documentation.
37+
38+
1. Update source files in nginx/
39+
40+
2. Build PDF document
41+
42+
```bash
43+
# Export English version
44+
pandoc nginx/index.md -L kramdown-toc.lua -o nginx_SSL_EN.pdf
45+
46+
# Export Estonian version
47+
pandoc nginx/index.et.md -L kramdown-toc.lua -o nginx_SSL_ET.pdf
48+
```
3349

3450
## Support
3551
Official builds are provided through official distribution point [id.ee](https://www.id.ee/en/article/install-id-software/). If you want support, you need to be using official builds. Contact our support via www.id.ee for assistance.
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,11 @@
66
if (altText && altText.trim() !== '') {
77
const figure = document.createElement('figure');
88
const figcaption = document.createElement('figcaption');
9-
9+
1010
figure.className = 'generated-figure';
1111
figcaption.className = 'generated-figcaption';
1212
figcaption.textContent = altText;
13-
13+
1414
const parent = img.parentNode;
1515
figure.appendChild(img.cloneNode(true));
1616
figure.appendChild(figcaption);

domain/index.et.md

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,16 +6,18 @@ See dokument pakub põhjalikku tehnilist ülevaadet ja samm-sammulisi juhiseid s
66

77
**Versioon:** 26.03/1
88

9+
**Väljaandja:** [RIA](https://www.ria.ee/)
10+
911
**Versiooni info**
1012

1113
| Kuupäev | Versioon | Muutused/märkused
1214
|:-----------|:--------:|:-----------------------------------------------------------
13-
| 21.01.2019 | 19.01/1 | Avalik versioon, baseerub 18.12 tarkvaral
14-
| 10.03.2022 | 22.03/1 | Uuendatud versioon, baseerub EID-22.1.0.1922 tarkvaral. — Muutja: Urmas Vanem
15+
| 21.01.2019 | 19.01/1 | Avalik versioon, baseerub `18.12` tarkvaral
16+
| 10.03.2022 | 22.03/1 | Uuendatud versioon, baseerub `eID-22.1.0.1922` tarkvaral. — Muutja: Urmas Vanem
1517
| 14.09.2022 | 22.09/1 | Lisatud uute Microsoft poolsete nõuete kirjeldus kasutaja ja eID kaardi sertifikaadi sidumiseks. — Muutja: Urmas Vanem
16-
| 11.12.2023 | 23.12/1 | Eemaldatud ESTEID-SK 2015 ahel + väiksed muutused. — Muutja: Urmas Vanem
18+
| 11.12.2023 | 23.12/1 | Eemaldatud `ESTEID-SK 2015` ahel + väiksed muutused. — Muutja: Urmas Vanem
1719
| 31.10.2025 | 25.10/1 | Lisatud Zetes ahelad — Muutja: Raul Kaidro
18-
| 13.03.2026 | 26.03/1 | Konverteeritud to Markdown formaati — Changed by: Raul Metsma
20+
| 13.03.2026 | 26.03/1 | Konverteeritud Markdown formaati — Muutja: Raul Metsma
1921

2022
---
2123

@@ -40,7 +42,7 @@ eID logini rakendamine eeldab kogumit süsteemseid ettevalmistusi nii domeeni ku
4042
eID kaartidega domeeni logimiseks tuleb keskkond konfigureerida järgnevalt:
4143

4244
* Domeeni kontrollerid peavad omama endi tuvastamiseks spetsiifiliste omadustega sertifikaati, mida usaldavad ka kliendid.
43-
* Domeeni kontrollerid peavad usaldama sertifitseerimiskeskuse eID kaartide harude juur- ja kesktasemete sertifikaate.
45+
* Domeeni kontrollerid peavad usaldama [SK ID Solutions](https://www.skidsolutions.eu/resources/certificates/) (`EE-GovCA2018`) ja [Zetes](https://repository.eidpki.ee/) (`EEGovCA2025`) eID kaartide harude juur- ja kesktasemete sertifikaate.
4446
* Klientarvutitel peab olema installeeritud ID-tarkvara (täna, märtsis 2026, soovitame kõige värskeimat versiooni 25.10.23.8403).
4547
* Klientarvutid peavad toetama sertifikaate, millel puudub spetsiaalne kiipkaardiga logimise toe atribuut (`Smart Card Logon` EKU) ja samuti peab lubatud olema ECC sertifikaatide kasutamine arvutisse logimise eesmärgil.
4648
* Domeenis peab eID kaartide autentimissertifikaat olema seotud kindla kasutajaga.
@@ -67,9 +69,9 @@ Juhul, kui ettevõttel PKI lahendus puudub, tundub mõistliku otsusena selle loo
6769

6870
eID kaartide ja nendega seotud sertifikaatide kasutamisel domeeni sisselogimisel peavad domeeni kontrollerid neid usaldama, nii kesk- kui juurtaseme sertifikaadid peavad paiknema õigetes konteinerites. Sertifikaatide kehtivuse kontrollimiseks peab olema ligipääs SK ja Zetes OCSP teenusele.
6971

70-
eID kaardiga domeeni logimise võimaldamiseks tuleb kesktaseme sertifikaadid (ESTEID2018, ESTEID2025) paigaldada ka domeeni NTAuthCertificates konteinerisse. Seda saame teha käsuga `certutil -dspublish -f 'SERDINIMI' NTAuthCA`. Samuti võime domeeni konteinerisse lisada ka juurtaseme sertifikaadi, siis on käsuks `certutil -dspublish -f 'SERDINIMI' RootCA`.
72+
eID kaardiga domeeni logimise võimaldamiseks tuleb kesktaseme sertifikaadid (`ESTEID2018`, `ESTEID2025`) paigaldada ka domeeni NTAuthCertificates konteinerisse. Seda saame teha käsuga `certutil -dspublish -f 'SERDINIMI' NTAuthCA`. Samuti võime domeeni konteinerisse lisada ka juurtaseme sertifikaadi, siis on käsuks `certutil -dspublish -f 'SERDINIMI' RootCA`.
7173

72-
Sertifikaadid on allalaetavad lehelt [https://www.skidsolutions.eu/resources/certificates/](https://www.skidsolutions.eu/resources/certificates/) ja [https://repository.eidpki.ee/crt/](https://repository.eidpki.ee/crt/). Tänase seisuga vajame järgmiseid sertifikaate:
74+
Sertifikaadid on allalaetavad lehelt <https://www.skidsolutions.eu/resources/certificates/> ja <https://repository.eidpki.ee/crt/>. Tänase seisuga vajame järgmiseid sertifikaate:
7375

7476
* [EE-GovCA2018](https://c.sk.ee/EE-GovCA2018.der.crt) - usaldusväärne juursertifikaat;
7577
* [EEGovCA2025](https://crt.eidpki.ee/EEGovCA2025.crt) - usaldusväärne juursertifikaat;
@@ -128,7 +130,7 @@ Juhul, kui eID kaartidega tahetakse logida näiteks domeenivälisest koduarvutis
128130

129131
### OCSP sertifikaadikontrolli meetodi keskne nõue
130132

131-
Hetkel kasutusel olevate eID kaartide puhul ei ole meil vajalik OCSP teed enam keskselt kirjeldada, kuna see on sertifikaadis juba sees. CRL tee neis sertifikaatides puudub, seega toimub sertifikaadi kehtivuse kontroll vaikimisi ainult vastu vaba ligipääsuga AIA OCSP teenust (http://aia.sk.ee/esteid2018, http://ocsp.eidpki.ee).
133+
Hetkel kasutusel olevate eID kaartide puhul ei ole meil vajalik OCSP teed enam keskselt kirjeldada, kuna see on sertifikaadis juba sees. CRL tee neis sertifikaatides puudub, seega toimub sertifikaadi kehtivuse kontroll vaikimisi ainult vastu vaba ligipääsuga AIA OCSP teenust (<http://aia.sk.ee/esteid2018>, <http://ocsp.eidpki.ee>).
132134

133135
> **Märkus:** OCSP nõude kehtestamise korral vii end kurssi ka mõistega OCSP maagiline number.[^3]
134136

domain/index.md

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,16 @@ This document provides a comprehensive technical overview and step-by-step guida
66

77
**Version:** 26.03/1
88

9+
**Published by:** [RIA](https://www.ria.ee/)
10+
911
**Version information**
1012

1113
| Date | Version | Changes/Notices
1214
|:-----------|:-------:|:-----------------------------------------------------------
13-
| 21.01.2019 | 19.01/1 | Public version, based on software version 18.12.
14-
| 10.03.2022 | 22.03/1 | Updated version, based on software version eID-22.1.0.1922. — Changed by: Urmas Vanem
15+
| 21.01.2019 | 19.01/1 | Public version, based on software version `18.12`.
16+
| 10.03.2022 | 22.03/1 | Updated version, based on software version `eID-22.1.0.1922`. — Changed by: Urmas Vanem
1517
| 14.09.2022 | 22.09/1 | Added description of new requirements from Microsoft for mapping user and eID card certificate. — Changed by: Urmas Vanem
16-
| 11.12.2023 | 23.12/1 | Removed ESTEID-SK 2015 chain + minor changes. — Changed by: Urmas Vanem
18+
| 11.12.2023 | 23.12/1 | Removed `ESTEID-SK 2015` chain + minor changes. — Changed by: Urmas Vanem
1719
| 31.10.2025 | 25.10/1 | Added Zetes certificates — Changed by: Raul Kaidro
1820
| 13.03.2026 | 26.03/1 | Converted to Markdown format — Changed by: Raul Metsma
1921

@@ -40,7 +42,7 @@ Configuring ID login requires a set of systemic preparations for both the domain
4042
To enable eID card logging into Windows domain following options must be enabled:
4143

4244
* Domain controllers must have a specific certificate to identify themselves, the certificate must also be trusted by clients/computers.
43-
* Domain controllers must trust root and intermediate level certificates from eID card chains.
45+
* Domain controllers must trust root and intermediate level certificates from [SK ID Solutions](https://www.skidsolutions.eu/resources/certificates/) (`EE-GovCA2018`) and [Zetes](https://repository.eidpki.ee/) (`EEGovCA2025`) eID card chains.
4446
* Client computers must have ID-software installed (today, March 2026, we recommend the most recent version 25.10.23.8403).
4547
* Client computers must support certificates that do not have a special `Smart Card Logon` EKU property and the use of ECC certificates for logging purposes into computers must also be allowed.
4648
* In the domain, the authentication certificate of the eID card must be linked to a specific user.
@@ -67,9 +69,9 @@ If PKI services are not implemented in the domain, it could be a good idea to ch
6769

6870
To use eID cards and related certificates for domain logging, domain controllers must trust those certificates. Both root and intermediate certificates form eID certificate chains must be trusted and installed into correct certificate containers. Domain controllers must also have access to the OCSP service described in certificates to check the validity of certificates.
6971

70-
To enable domain logging with an eID card, intermediate level certificates (ESTEID2018, ESTEID2025) must be installed in the NTAuthCertificates container of the domain. We can do this with the command `certutil -dspublish -f 'CERTIFICATE NAME' NTAuthCA`. We can also add a root-level certificate to the domain container with the command `certutil -dspublish -f 'CERTIFICATE NAME' RootCA`.
72+
To enable domain logging with an eID card, intermediate level certificates (`ESTEID2018`, `ESTEID2025`) must be installed in the NTAuthCertificates container of the domain. We can do this with the command `certutil -dspublish -f 'CERTIFICATE NAME' NTAuthCA`. We can also add a root-level certificate to the domain container with the command `certutil -dspublish -f 'CERTIFICATE NAME' RootCA`.
7173

72-
Certificates can be downloaded from [https://www.skidsolutions.eu/resources/certificates/](https://www.skidsolutions.eu/resources/certificates/) and [https://repository.eidpki.ee/crt/](https://repository.eidpki.ee/crt/). As of today, we need the following certificates:
74+
Certificates can be downloaded from <https://www.skidsolutions.eu/resources/certificates/> and <https://repository.eidpki.ee/crt/>. As of today, we need the following certificates:
7375

7476
* [EE-GovCA2018](https://c.sk.ee/EE-GovCA2018.der.crt) - trusted root certificate;
7577
* [EEGovCA2025](https://crt.eidpki.ee/EEGovCA2025.crt) - trusted root certificate;
@@ -128,7 +130,7 @@ If you want to support eID card to log in from a non-domain, for example from ho
128130

129131
### Requiring OCSP revocation check
130132

131-
For eID cards currently in use, it is no longer necessary for us to describe the OCSP path centrally, as it is already included in the certificate. There is no CRL path in these certificates, so by default the certificate's validity is checked only against the free access AIA OCSP service (http://aia.sk.ee/esteid2018, http://ocsp.eidpki.ee).
133+
For eID cards currently in use, it is no longer necessary for us to describe the OCSP path centrally, as it is already included in the certificate. There is no CRL path in these certificates, so by default the certificate's validity is checked only against the free access AIA OCSP service (<http://aia.sk.ee/esteid2018>, <http://ocsp.eidpki.ee>).
132134

133135
> **Note:** If using OCSP, familiarize yourself with the concept of OCSP magic number also.[^3]
134136

nginx/_config.yml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
remote_theme: just-the-docs/just-the-docs
2+
title: Estonian eID Nginx SSL Configuration
3+
description: Technical documentation for configuring two-way SSL using Estonian ID-cards in Ubuntu Nginx web server.
4+
google_analytics:
5+
layout: minimal
6+
nav_enabled: false
7+
baseurl: "/nginx"

nginx/img/image1.png

42.7 KB
Loading

nginx/img/image2.png

68.3 KB
Loading

nginx/img/image3.png

32 KB
Loading

0 commit comments

Comments
 (0)