Update README

This commit is contained in:
Saku Laesvuori 2023-11-01 20:34:10 +02:00
parent 4a78b6f7bf
commit 596578d286
Signed by: slaesvuo
GPG Key ID: 257D284A2A1D3A32
1 changed files with 37 additions and 23 deletions

View File

@ -1,8 +1,33 @@
# Datarekisteri Datat RY:n jäsenrekisteri # Datarekisteri Datat RY:n jäsenrekisteri
Datayhdistyksen jäsenrekisterin lähdekoodi. Tavoitteena on saada mahdollisimman Datayhdistyksen jäsenrekisterin lähdekoodi. Pitkällä aikavälillä tavoitteena on
paljon toiminnallisuudesta abstraktoitua ja siirrettyä saada mahdollisimman paljon toiminnallisuudesta abstraktoitua ja siirrettyä
[`rekisteri`](https://hub.sr.ht/~slaesvuo/rekisteri):iin. [`rekisteri`](https://hub.sr.ht/~slaesvuo/rekisteri):iin, mutta tällä hetkellä
se ei ole mahdollista.
## Kehitykseen osallistuminen
Toimivan kehitysympäristön saat helposti ajamalla komennon [`guix
shell`](https://guix.gnu.org/manual/devel/en/guix.html#Invoking-guix-shell)
tämän hakemiston sisällä. Mikäli Guix ei saa luotua ympäristöä, aja sama
komento toimivaksi tiedettyssä Guix-versiossa
((`guix time-machine -C channels.scm -- shell`)[https://guix.gnu.org/manual/devel/en/guix.html#Invoking-guix-time_002dmachine])
Vikoja ja kehitysehdotuksia voi lähettää sähköpostilla (<admin@datat.fi>) tai
[kirjata giteaan](https://git.datat.fi/ry/datarekisteri/issues). Samoin
muutoksia voi [lähettää gitean
kautta](https://git.datat.fi/ry/datarekisteri/pulls) tai sähköpostilla
käyttämällä komentoa [`git send-email`](https://git-send-email.io/).
Tähän tietovarantoon kirjoitusoikeudellisten henkilöiden pitää varmistaa, että
he puskevat vain GPG-allekirjoitettua koodia ja että allekirjoittamiseen
käytettyn avaimen julkinen osa on lisätty `keyring`-kehityshaaraan ja avaimen
sormenjälki on lisätty `.guix-authorizations`-tiedostoon. Muuten datarekisterin
Guix-kanavan lataaminen ei toimi ja julkaistua datarekisteriä ei voida
päivittää ennen kuin allekirjoittamattomat muutokset on poistettu
git-historiasta.
## Asentaminen
Datarekisterin voit asentaa helposti lisäämällä alla olevan pätkän guix:in Datarekisterin voit asentaa helposti lisäämällä alla olevan pätkän guix:in
[kanavalistaan](https://guix.gnu.org/manual/en/guix.html#Specifying-Additional-Channels). [kanavalistaan](https://guix.gnu.org/manual/en/guix.html#Specifying-Additional-Channels).
@ -19,35 +44,24 @@ Datarekisterin voit asentaa helposti lisäämällä alla olevan pätkän guix:in
"A0C9 1947 734F 076F 5F08 E9FF 257D 284A 2A1D 3A32")))) "A0C9 1947 734F 076F 5F08 E9FF 257D 284A 2A1D 3A32"))))
``` ```
## Käänteisen välityspalvelimen asetukset ### Käänteisen välityspalvelimen asetukset
Käänteisen välityspalvelimen pitäisi määritellä CSP estämään kaikkien skriptien Käänteisen välityspalvelimen pitäisi määritellä CSP estämään kaikkien skriptien
ajaminen, koska datarekisterin ei tarvitse ajaa koodia käyttäjän laitteella. ajaminen, koska datarekisterin ei tarvitse ajaa koodia käyttäjän laitteella.
Content-Type-Options estää selaimia tulkitsemasta tiedostoja virheellisesti Datarekisterin ei pitäisi myöskään lähettää koodia ajettavaksi, mutta on
skripteiksi tai tyylitiedostoiksi. parempi varmistaa. Content-Type-Options estää selaimia tulkitsemasta tiedostoja
virheellisesti skripteiksi tai tyylitiedostoiksi.
``` ```
Content-Security-Policy: default-src 'self'; scrip-src 'none'; object-src 'none' Content-Security-Policy: default-src 'self'; scrip-src 'none'; object-src 'none'
X-Content-Type-Options: nosniff X-Content-Type-Options: nosniff
``` ```
Käänteisen välityspalvelimen pitää myös pakottaa kaikki liikenne kulkemaan **Käänteisen välityspalvelimen pitää myös pakottaa kaikki liikenne kulkemaan
https:n yli uudelleenohjaamalla kaikki http-kyselyt ja asettamalla HTTPS:n yli uudelleenohjaamalla kaikki HTTP-kyselyt**. Lisäksi voi asettaa
Strict-Transport-Security otsikon. Strict-Transport-Security otsikon. Kaikki käyttäjätiedot, salasanat
mukaanlukien, ovat käytännössä julkisia, jos salaamattomat HTTP-kyselyt
## Palvelunestohyökkäyksiltä suojautuminen sallitaan.
Datarekisteri ei vielä tee itse mitään palvelunestohyökkäysten varalta. Määritä
vähintään jokin nopeusrajoitus kyselyille. Alla oleva esimerkki rajoittaa
tcp-yhteyksien avaamisnopeutta. Kannattaa lisätä jokin oikoreitti palvelimelle
itselleen, esim. `$ iptables -A INPUT -s 127.0.0.1 -j ACCEPT` ennen
nopeusrajoitusta.
```
$ iptables -A INPUT -p tcp -m tcp --syn -m hashlimit \
--hashlimit-upto 10/sec --hashlimit-burst 10 --hashlimit-mode srcip,dstport \
--hashlimit-name conn-srcip-dport-rate-limit -j ACCEPT
```
## Kopiointi ## Kopiointi