init
This commit is contained in:
9
content/mantelzorgers/_index.nl.md
Normal file
9
content/mantelzorgers/_index.nl.md
Normal file
@@ -0,0 +1,9 @@
|
||||
---
|
||||
title: "Voor mantelzorgers"
|
||||
date: 2025-11-08
|
||||
icon: "fas fa-hospital-user"
|
||||
description: "Aanvullend advies voor u als de mantelzorger van de bewoner."
|
||||
type : "docs"
|
||||
weight: 6
|
||||
---
|
||||
|
||||
122
content/mantelzorgers/algemeen/_index.nl.md
Normal file
122
content/mantelzorgers/algemeen/_index.nl.md
Normal file
@@ -0,0 +1,122 @@
|
||||
---
|
||||
title: "Apache"
|
||||
date: 2025-11-08
|
||||
weight: 3
|
||||
feedback: true
|
||||
draft: false
|
||||
---
|
||||
|
||||
{{< notice "info" "Informatie">}}
|
||||
De instructies in dit artikel zijn uitsluitend voor de webserver, niet de site generator.
|
||||
{{< /notice >}}
|
||||
|
||||
## Benodigdheden
|
||||
- Een server met een Debian Linux installatie
|
||||
- Een domeinnaam
|
||||
- DNS ingesteld naar het IP-adres van de server
|
||||
- Rechten als `su` of `sudo` om opdrachten als root uit te voeren.
|
||||
|
||||
## Voorbereiding
|
||||
Zorg dat het systeem up-to-date is voordat je begint met installeren.
|
||||
1. Log in met SSH.
|
||||
```bash
|
||||
ssh gebruiker@server
|
||||
```
|
||||
2. Gebruik het `apt` commando om het systeem te updaten.
|
||||
```bash
|
||||
sudo apt update && sudo apt upgrade
|
||||
```
|
||||
|
||||
## Apache
|
||||
### Installatie
|
||||
Installeer Apache met het `apt` commando.
|
||||
```bash
|
||||
sudo apt install apache2
|
||||
```
|
||||
|
||||
### Configuratie
|
||||
{{< notice "info" "Informatie" >}}
|
||||
Verander in de code **voorbeeld** naar jouw domeinnaam, zonder `https://` of `www` tenzij letterlijk aangegeven zoals **voorbeeld.nl**
|
||||
{{< /notice >}}
|
||||
|
||||
1. Zorg dat Apache altijd start met de server.
|
||||
```bash
|
||||
sudo systemctl enable --now apache2
|
||||
```
|
||||
2. Maak een nieuwe site configuratie op basis van de standaard instellingen.
|
||||
```bash
|
||||
sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/voorbeeld.nl.conf
|
||||
```
|
||||
3. Pas de inhoud met het programma `nano`.
|
||||
```bash
|
||||
sudo nano /etc/apache2/sites-available/voorbeeld.nl.conf
|
||||
```
|
||||
```apache
|
||||
<VirtualHost *:80>
|
||||
ServerName voorbeeld.nl
|
||||
ServerAlias www.voorbeeld.nl
|
||||
|
||||
DocumentRoot /var/www/voorbeeld.nl/public
|
||||
|
||||
<Directory /var/www/voorbeeld.nl/public>
|
||||
Options Indexes FollowSymLinks
|
||||
AllowOverride All
|
||||
Require all granted
|
||||
</Directory>
|
||||
|
||||
ErrorLog ${APACHE_LOG_DIR}/voorbeeld.nl-error.log
|
||||
CustomLog ${APACHE_LOG_DIR}/voorbeeld.nl-access.log combined
|
||||
</VirtualHost>
|
||||
```
|
||||
{{< notice "info" "Tip" >}}
|
||||
Je kan plakken in de terminal met CTRL + SHIFT + V
|
||||
{{< /notice >}}
|
||||
4. Activeer de configuratie met het `a2ensite` commando.
|
||||
```bash
|
||||
sudo a2ensite voorbeeld.nl.conf
|
||||
```
|
||||
5. Controleer werking en herlaad Apache.
|
||||
```bash
|
||||
sudo apache2ctl configtest
|
||||
sudo systemctl reload apache2
|
||||
```
|
||||
|
||||
## CertBot
|
||||
### Installatie
|
||||
Installeer CertBot met het `apt` commando.
|
||||
```bash
|
||||
sudo apt install certbot python3-certbot-apache
|
||||
```
|
||||
|
||||
### Configuratie
|
||||
Genereer en implementeer een geldig certificaat met het volgende commando.
|
||||
```bash
|
||||
sudo certbot --apache
|
||||
```
|
||||
Volg de stappen op met logische antwoorden, zoals het opgeven van jouw e-mailadres, selectie welke sites certificering moeten krijgen en of je HTTP automatisch naar HTTPS wilt laten doorsturen.
|
||||
{{< notice "info" "Tip" >}}
|
||||
Wil je liever je configuratie testen voordat je een certificaat ophaalt, gebruik dan de parameter `--dry-run`.
|
||||
```bash
|
||||
sudo certbot --apache --dry-run
|
||||
```
|
||||
{{< /notice >}}
|
||||
|
||||
## Website activeren
|
||||
1. Maak een index.html bestand. En geef deze een vorm van vulling, zoals voorbeeld hieronder.
|
||||
```bash
|
||||
sudo mkdir -p /var/www/voorbeeld.nl/public
|
||||
sudo nano /var/www/voorbeeld.nl/public/index.html
|
||||
```
|
||||
```html
|
||||
<html>
|
||||
<body>
|
||||
<h1>Hallo wereld</h1>
|
||||
</body>
|
||||
</html>
|
||||
```
|
||||
2. Wijs de omgeving toe aan de `www-data` gebruiker en groep, stel schrijfrechten in.
|
||||
```bash
|
||||
sudo chown www-data:www-data /var/www/voorbeeld.nl -R
|
||||
sudo chmod -R g+rwX /var/www/voorbeeld.nl
|
||||
```
|
||||
3. Open de browser en ga naar je website toe, je zou nu de inhoud van de index.html moeten kunnen zien via HTTPS, met een geldig letsencrypt certificaat.
|
||||
178
content/mantelzorgers/algemeen/nextcloud/_index.nl.md
Normal file
178
content/mantelzorgers/algemeen/nextcloud/_index.nl.md
Normal file
@@ -0,0 +1,178 @@
|
||||
---
|
||||
title: "NextCloud (Apache)"
|
||||
date: 2025-11-10
|
||||
weight: 3
|
||||
feedback: true
|
||||
draft: false
|
||||
---
|
||||
|
||||
NextCloud is een open source platform voor bestandssynchronisatie en samenwerking, vergelijkbaar met diensten als Dropbox of OneDrive. In deze handleiding installeren we NextCloud _zonder_ Docker, rechtstreeks op een Debian server met Apache als webserver.
|
||||
|
||||
{{< notice "info" "Informatie" >}}
|
||||
Deze handleiding gaat uit van een Debian server met een basis Apache installatie zoals beschreven in het bovenliggende artikel **Apache**.
|
||||
{{< /notice >}}
|
||||
|
||||
## Benodigdheden
|
||||
- Een server met een Debian Linux installatie
|
||||
- Een domeinnaam
|
||||
- DNS ingesteld naar het IP-adres van de server
|
||||
- Een werkende webserver (Apache) die verzoeken voor jouw domein kan verwerken
|
||||
- Rechten als `su` of `sudo` om opdrachten als root uit te voeren
|
||||
|
||||
## Voorbereiding
|
||||
Zorg dat het systeem up-to-date is voordat je NextCloud installeert.
|
||||
|
||||
1. Log in met SSH.
|
||||
```bash
|
||||
ssh gebruiker@server
|
||||
```
|
||||
|
||||
2. Werk de pakketbron en geïnstalleerde pakketten bij.
|
||||
```bash
|
||||
sudo apt update && sudo apt upgrade
|
||||
```
|
||||
|
||||
## PHP en database installeren
|
||||
NextCloud heeft PHP en een database nodig. In dit voorbeeld gebruiken we MariaDB als database.
|
||||
|
||||
1. Installeer Apache, PHP, de benodigde modules en MariaDB.
|
||||
```bash
|
||||
sudo apt install apache2 php libapache2-mod-php php-mysql php-xml php-gd php-curl php-mbstring php-zip php-intl php-bcmath php-gmp mariadb-server unzip
|
||||
```
|
||||
|
||||
2. Beveilig de MariaDB installatie
|
||||
```bash
|
||||
sudo mysql_secure_installation
|
||||
```
|
||||
|
||||
3. Maak een database en gebruiker voor NextCloud.
|
||||
```bash
|
||||
sudo mysql
|
||||
```
|
||||
|
||||
Voer daarna in de MariaDB prompt de volgende opdrachten uit, pas wachtwoord en namen aan:
|
||||
|
||||
```sql
|
||||
CREATE DATABASE nextcloud CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
|
||||
CREATE USER 'nc_user'@'localhost' IDENTIFIED BY 'sterk-db-wachtwoord';
|
||||
GRANT ALL PRIVILEGES ON nextcloud.* TO 'nc_user'@'localhost';
|
||||
FLUSH PRIVILEGES;
|
||||
EXIT;
|
||||
```
|
||||
|
||||
## NextCloud bestanden downloaden
|
||||
We plaatsen NextCloud in `/var/www/nextcloud`.
|
||||
|
||||
1. Download en pak NextCloud uit.
|
||||
```bash
|
||||
cd /tmp
|
||||
curl -LO https://download.nextcloud.com/server/releases/latest.zip
|
||||
unzip latest.zip
|
||||
```
|
||||
|
||||
2. Maak de doelmap aan en kopieer de bestanden.
|
||||
```bash
|
||||
sudo mkdir -p /var/www/nextcloud
|
||||
sudo rsync -av nextcloud/ /var/www/nextcloud/
|
||||
```
|
||||
|
||||
3. Stel de juiste eigenaar en rechten in.
|
||||
```bash
|
||||
sudo chown -R www-data:www-data /var/www/nextcloud
|
||||
sudo find /var/www/nextcloud -type d -exec chmod 750 {} \;
|
||||
sudo find /var/www/nextcloud -type f -exec chmod 640 {} \;
|
||||
```
|
||||
|
||||
## Apache configureren voor NextCloud
|
||||
We maken een aparte site-configuratie aan voor `cloud.voorbeeld.nl`.
|
||||
|
||||
1. Maak een nieuw configuratiebestand.
|
||||
```bash
|
||||
sudo nano /etc/apache2/sites-available/cloud.voorbeeld.nl.conf
|
||||
```
|
||||
|
||||
2. Plaats de volgende configuratie in het bestand:
|
||||
|
||||
```apache
|
||||
<VirtualHost *:80>
|
||||
ServerName cloud.voorbeeld.nl
|
||||
ServerAlias www.cloud.voorbeeld.nl
|
||||
|
||||
DocumentRoot /var/www/nextcloud
|
||||
|
||||
<Directory /var/www/nextcloud>
|
||||
Require all granted
|
||||
AllowOverride All
|
||||
Options FollowSymLinks MultiViews
|
||||
</Directory>
|
||||
|
||||
# Verhoog maximale uploadgrootte
|
||||
LimitRequestBody 536870912
|
||||
|
||||
# Aanbevolen security headers
|
||||
Header always set Referrer-Policy "no-referrer"
|
||||
Header always set X-Content-Type-Options "nosniff"
|
||||
Header always set X-Frame-Options "SAMEORIGIN"
|
||||
Header always set X-XSS-Protection "1; mode=block"
|
||||
|
||||
ErrorLog ${APACHE_LOG_DIR}/cloud.voorbeeld.nl-error.log
|
||||
CustomLog ${APACHE_LOG_DIR}/cloud.voorbeeld.nl-access.log combined
|
||||
</VirtualHost>
|
||||
```
|
||||
|
||||
3. Zorg dat de benodigde modules voor NextCloud actief zijn.
|
||||
```bash
|
||||
sudo a2enmod rewrite headers env dir mime
|
||||
sudo systemctl reload apache2
|
||||
```
|
||||
|
||||
4. Activeer de site en controleer Apache.
|
||||
```bash
|
||||
sudo a2ensite cloud.voorbeeld.nl.conf
|
||||
sudo apache2ctl configtest
|
||||
sudo systemctl reload apache2
|
||||
```
|
||||
|
||||
## CertBot voor HTTPS
|
||||
Zorg voor een geldig TLS-certificaat met CertBot.
|
||||
|
||||
1. Installeer CertBot met de Apache plugin.
|
||||
```bash
|
||||
sudo apt install certbot python3-certbot-apache
|
||||
```
|
||||
|
||||
2. Vraag een certificaat aan voor jouw domein.
|
||||
```bash
|
||||
sudo certbot --apache
|
||||
```
|
||||
|
||||
Volg de stappen op met logische antwoorden, zoals het opgeven van jouw e-mailadres en de keuze om HTTP automatisch naar HTTPS om te leiden.
|
||||
|
||||
{{< notice "info" "Informatie" >}}
|
||||
Wil je liever je configuratie testen voordat je een certificaat ophaalt, gebruik dan de parameter `--dry-run`.
|
||||
```bash
|
||||
sudo certbot --apache --dry-run
|
||||
```
|
||||
{{< /notice >}}
|
||||
|
||||
## NextCloud installatie afronden
|
||||
1. Open een browser en ga naar:
|
||||
```text
|
||||
http://cloud.voorbeeld.nl
|
||||
```
|
||||
of, na het instellen van HTTPS:
|
||||
```text
|
||||
https://cloud.voorbeeld.nl
|
||||
```
|
||||
|
||||
2. Volg de stappen van de NextCloud installatie:
|
||||
- Stel een beheerdersgebruikersnaam en wachtwoord in
|
||||
- Vul de databasegegevens in:
|
||||
- Databasegebruiker: `nc_user`
|
||||
- Databasewachtwoord: `sterk-db-wachtwoord`
|
||||
- Database: `nextcloud`
|
||||
- Host: `localhost`
|
||||
|
||||
{{< notice "info" "Informatie" >}}
|
||||
Na afronden keert NextCloud terug naar de login-pagina en kun je inloggen met het beheerdersaccount.
|
||||
{{< /notice >}}
|
||||
192
content/mantelzorgers/algemeen/wordpress/_index.nl.md
Normal file
192
content/mantelzorgers/algemeen/wordpress/_index.nl.md
Normal file
@@ -0,0 +1,192 @@
|
||||
---
|
||||
title: "WordPress"
|
||||
date: 2025-11-09
|
||||
weight: 3
|
||||
feedback: true
|
||||
draft: false
|
||||
---
|
||||
|
||||
WordPress is een veelgebruikte applicatie voor het bouwen van websites en blogs. In deze handleiding installeren we WordPress op een Debian server, uitgaand van het feit dat er al een werkende webserver aanwezig is met Apache.
|
||||
|
||||
{{< notice "info" "Informatie" >}}
|
||||
Deze handleiding gaat uit van een Debian server met een basis Apache installatie zoals beschreven in het bovenliggende artikel **Apache**.
|
||||
{{< /notice >}}
|
||||
|
||||
## Benodigdheden
|
||||
- Een server met een Debian Linux installatie
|
||||
- Een domeinnaam
|
||||
- DNS ingesteld naar het IP-adres van de server
|
||||
- Een werkende webserver (Apache) die verzoeken voor jouw domein verwerkt
|
||||
- Rechten als `su` of `sudo` om opdrachten als root uit te voeren
|
||||
|
||||
## Voorbereiding
|
||||
Zorg dat het systeem up-to-date is voordat je begint met installeren.
|
||||
|
||||
1. Log in met SSH.
|
||||
```bash
|
||||
ssh gebruiker@server
|
||||
```
|
||||
|
||||
2. Gebruik het `apt` commando om het systeem te updaten.
|
||||
```bash
|
||||
sudo apt update && sudo apt upgrade
|
||||
```
|
||||
|
||||
## PHP en database installeren
|
||||
WordPress heeft PHP en een database nodig. In dit voorbeeld gebruiken we MariaDB als database.
|
||||
|
||||
1. Installeer PHP en de benodigde modules.
|
||||
```bash
|
||||
sudo apt install php libapache2-mod-php php-mysql php-xml php-gd php-curl php-mbstring php-zip
|
||||
```
|
||||
|
||||
2. Installeer MariaDB server.
|
||||
```bash
|
||||
sudo apt install mariadb-server
|
||||
```
|
||||
|
||||
3. Beveilig de MariaDB installatie (optioneel, maar aanbevolen).
|
||||
```bash
|
||||
sudo mysql_secure_installation
|
||||
```
|
||||
|
||||
4. Maak een database en gebruiker voor WordPress.
|
||||
```bash
|
||||
sudo mysql
|
||||
```
|
||||
|
||||
Voer daarna in de MariaDB prompt de volgende opdrachten uit (pas wachtwoord en namen aan):
|
||||
|
||||
```sql
|
||||
CREATE DATABASE wordpress CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
|
||||
CREATE USER 'wp_user'@'localhost' IDENTIFIED BY 'sterk-wachtwoord';
|
||||
GRANT ALL PRIVILEGES ON wordpress.* TO 'wp_user'@'localhost';
|
||||
FLUSH PRIVILEGES;
|
||||
EXIT;
|
||||
```
|
||||
|
||||
## WordPress bestanden voorbereiden
|
||||
We plaatsen WordPress in `/var/www/voorbeeld.nl/public`, zodat dit overeenkomt met de standaard webroot uit andere artikelen.
|
||||
|
||||
1. Download en pak WordPress uit.
|
||||
```bash
|
||||
cd /tmp
|
||||
curl -O https://wordpress.org/latest.tar.gz
|
||||
tar xzf latest.tar.gz
|
||||
```
|
||||
|
||||
2. Maak de doelmap aan en kopieer de bestanden.
|
||||
```bash
|
||||
sudo mkdir -p /var/www/voorbeeld.nl/public
|
||||
sudo cp -r /tmp/wordpress/* /var/www/voorbeeld.nl/public/
|
||||
```
|
||||
|
||||
3. Maak een kopie van het configuratiebestand.
|
||||
```bash
|
||||
cd /var/www/voorbeeld.nl/public
|
||||
sudo cp wp-config-sample.php wp-config.php
|
||||
```
|
||||
|
||||
4. Pas de database-instellingen aan in `wp-config.php`.
|
||||
```bash
|
||||
sudo nano /var/www/voorbeeld.nl/public/wp-config.php
|
||||
```
|
||||
|
||||
Vul bij de databasegegevens:
|
||||
|
||||
```php
|
||||
define( 'DB_NAME', 'wordpress' );
|
||||
define( 'DB_USER', 'wp_user' );
|
||||
define( 'DB_PASSWORD', 'sterk-wachtwoord' );
|
||||
define( 'DB_HOST', 'localhost' );
|
||||
```
|
||||
|
||||
{{< notice "info" "Tip" >}}
|
||||
Genereer de unieke beveiligingssleutels via de officiële WordPress salt generator en plak deze in `wp-config.php` in plaats van de standaard waardes.
|
||||
{{< /notice >}}
|
||||
|
||||
5. Stel de juiste eigenaar en rechten in.
|
||||
```bash
|
||||
sudo chown -R www-data:www-data /var/www/voorbeeld.nl
|
||||
sudo find /var/www/voorbeeld.nl -type d -exec chmod 750 {} \;
|
||||
sudo find /var/www/voorbeeld.nl -type f -exec chmod 640 {} \;
|
||||
```
|
||||
|
||||
### Apache configuratie
|
||||
|
||||
{{< notice "info" "Informatie" >}}
|
||||
Verander in de code **voorbeeld** naar jouw domeinnaam, zonder `https://` of `www` tenzij letterlijk aangegeven zoals **voorbeeld.nl**.
|
||||
{{< /notice >}}
|
||||
|
||||
1. Open de bestaande site-configuratie voor jouw domein.
|
||||
```bash
|
||||
sudo nano /etc/apache2/sites-available/voorbeeld.nl.conf
|
||||
```
|
||||
|
||||
2. Zorg ervoor dat de configuratie er ongeveer als volgt uitziet:
|
||||
|
||||
```apache
|
||||
<VirtualHost *:80>
|
||||
ServerName voorbeeld.nl
|
||||
ServerAlias www.voorbeeld.nl
|
||||
|
||||
DocumentRoot /var/www/voorbeeld.nl/public
|
||||
|
||||
<Directory /var/www/voorbeeld.nl/public>
|
||||
Options Indexes FollowSymLinks
|
||||
AllowOverride All
|
||||
Require all granted
|
||||
</Directory>
|
||||
|
||||
ErrorLog ${APACHE_LOG_DIR}/voorbeeld.nl-error.log
|
||||
CustomLog ${APACHE_LOG_DIR}/voorbeeld.nl-access.log combined
|
||||
</VirtualHost>
|
||||
```
|
||||
|
||||
3. Zorg dat de benodigde modules voor WordPress actief zijn.
|
||||
```bash
|
||||
sudo a2enmod rewrite
|
||||
sudo systemctl reload apache2
|
||||
```
|
||||
|
||||
4. Controleer de Apache configuratie en herlaad de service.
|
||||
```bash
|
||||
sudo apache2ctl configtest
|
||||
sudo systemctl reload apache2
|
||||
```
|
||||
|
||||
### CertBot voor Apache
|
||||
|
||||
Installeer CertBot met de Apache plugin (als dit nog niet eerder gedaan is).
|
||||
|
||||
```bash
|
||||
sudo apt install certbot python3-certbot-apache
|
||||
```
|
||||
|
||||
Vraag een certificaat aan voor jouw domein.
|
||||
```bash
|
||||
sudo certbot --apache
|
||||
```
|
||||
|
||||
Volg de stappen op met logische antwoorden, zoals het opgeven van jouw e-mailadres, de selectie welke sites certificering moeten krijgen en of je HTTP automatisch naar HTTPS wilt laten doorsturen.
|
||||
|
||||
{{< notice "info" "Tip" >}}
|
||||
Wil je liever je configuratie testen voordat je een certificaat ophaalt, gebruik dan de parameter `--dry-run`.
|
||||
```bash
|
||||
sudo certbot --apache --dry-run
|
||||
```
|
||||
{{< /notice >}}
|
||||
|
||||
## WordPress installatie afronden
|
||||
|
||||
1. Open de browser en ga naar jouw domein, bijvoorbeeld:
|
||||
- `http://voorbeeld.nl` of
|
||||
- `https://voorbeeld.nl` (na het instellen van letsencrypt)
|
||||
|
||||
2. Volg de stappen van de WordPress installatie:
|
||||
- Kies de taal
|
||||
- Vul de sitetitel in
|
||||
- Maak een beheerdersaccount aan
|
||||
- Bevestig en log in op het WordPress dashboard
|
||||
|
||||
Je WordPress site is nu actief en bereikbaar via het door jou ingestelde domein als je Apache als webserver gebruikt.
|
||||
92
content/mantelzorgers/docker/_index.nl.md
Normal file
92
content/mantelzorgers/docker/_index.nl.md
Normal file
@@ -0,0 +1,92 @@
|
||||
---
|
||||
title: "Docker"
|
||||
date: 2025-11-10
|
||||
weight: 2
|
||||
feedback: true
|
||||
draft: false
|
||||
---
|
||||
|
||||
Docker is een platform om applicaties geïsoleerd te draaien in containers. In deze handleiding installeren we Docker op een Debian server via de command line en controleren we of de installatie correct werkt.
|
||||
|
||||
{{< notice "info" "Informatie" >}}
|
||||
Deze handleiding gaat uit van een schone Debian installatie met internettoegang. De stappen zijn getest op recente Debian-versies (zoals Debian 12).
|
||||
{{< /notice >}}
|
||||
|
||||
## Benodigdheden
|
||||
- Een server met een ondersteunde Debian Linux installatie
|
||||
- Toegang tot de command line (bijvoorbeeld via SSH)
|
||||
- Rechten als `su` of `sudo` om opdrachten als root uit te voeren
|
||||
- Werkende internetverbinding
|
||||
|
||||
## Voorbereiding
|
||||
Zorg dat het systeem up-to-date is voordat je Docker installeert.
|
||||
|
||||
1. Log in met SSH.
|
||||
```bash
|
||||
ssh gebruiker@server
|
||||
```
|
||||
|
||||
2. Werk de pakketbron en geïnstalleerde pakketten bij.
|
||||
```bash
|
||||
sudo apt update && sudo apt upgrade
|
||||
```
|
||||
|
||||
## Docker repository toevoegen
|
||||
We installeren Docker vanaf de officiële Docker repository in plaats van de standaard Debian-pakketten.
|
||||
|
||||
1. Installeer vereiste hulppakketten.
|
||||
```bash
|
||||
sudo apt install ca-certificates curl gnupg
|
||||
```
|
||||
|
||||
2. Maak de map aan voor de Docker GPG-sleutel.
|
||||
```bash
|
||||
sudo install -m 0755 -d /etc/apt/keyrings
|
||||
```
|
||||
|
||||
3. Download en installeer de Docker GPG-sleutel.
|
||||
```bash
|
||||
curl -fsSL https://download.docker.com/linux/debian/gpg | \
|
||||
sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
|
||||
```
|
||||
|
||||
4. Stel de juiste rechten in op de sleutel.
|
||||
```bash
|
||||
sudo chmod a+r /etc/apt/keyrings/docker.gpg
|
||||
```
|
||||
|
||||
5. Voeg de Docker repository toe.
|
||||
```bash
|
||||
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian $(. /etc/os-release && echo \"$VERSION_CODENAME\") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
|
||||
```
|
||||
|
||||
6. Werk de pakketlijst bij.
|
||||
```bash
|
||||
sudo apt update
|
||||
```
|
||||
|
||||
## Docker installeren
|
||||
Installeer nu Docker Engine en de bijbehorende componenten.
|
||||
|
||||
```bash
|
||||
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
|
||||
```
|
||||
|
||||
Controleer of de Docker service actief is.
|
||||
```bash
|
||||
sudo systemctl status docker
|
||||
```
|
||||
|
||||
Als Docker niet actief is, start de service en zorg dat deze automatisch start na een reboot.
|
||||
```bash
|
||||
sudo systemctl enable --now docker
|
||||
```
|
||||
|
||||
## Docker installatie testen
|
||||
Voer de officiële testcontainer uit om te controleren of Docker goed werkt.
|
||||
|
||||
```bash
|
||||
sudo docker run hello-world
|
||||
```
|
||||
|
||||
Je zou een bericht moeten zien dat bevestigt dat Docker correct is geïnstalleerd en een testcontainer heeft uitgevoerd.
|
||||
154
content/mantelzorgers/docker/nextcloud/_index.nl.md
Normal file
154
content/mantelzorgers/docker/nextcloud/_index.nl.md
Normal file
@@ -0,0 +1,154 @@
|
||||
---
|
||||
title: "NextCloud (Docker)"
|
||||
date: 2025-11-10
|
||||
weight: 3
|
||||
feedback: true
|
||||
draft: false
|
||||
---
|
||||
|
||||
NextCloud is een open source platform voor bestandssynchronisatie en samenwerking, vergelijkbaar met diensten als Dropbox of OneDrive. In deze handleiding installeren we NextCloud op een Debian server met behulp van Docker en Docker Compose.
|
||||
|
||||
{{< notice "info" "Informatie" >}}
|
||||
Deze handleiding gaat uit van een Debian server waarop Docker en de Docker Compose plugin al zijn geïnstalleerd, zoals beschreven in het bovenliggende artikel **Docker**.
|
||||
{{< /notice >}}
|
||||
|
||||
## Benodigdheden
|
||||
- Een server met een ondersteunde Debian Linux installatie
|
||||
- Docker en Docker Compose plugin geïnstalleerd
|
||||
- Een domeinnaam
|
||||
- DNS ingesteld naar het IP-adres van de server
|
||||
- Rechten als `su` of `sudo` om opdrachten als root uit te voeren
|
||||
|
||||
## Voorbereiding
|
||||
Zorg dat het systeem up-to-date is voordat je begint.
|
||||
|
||||
1. Log in met SSH.
|
||||
```bash
|
||||
ssh gebruiker@server
|
||||
```
|
||||
|
||||
2. Werk de pakketbron en geïnstalleerde pakketten bij.
|
||||
```bash
|
||||
sudo apt update && sudo apt upgrade
|
||||
```
|
||||
|
||||
3. Controleer of Docker en Docker Compose beschikbaar zijn.
|
||||
```bash
|
||||
docker --version
|
||||
docker compose version
|
||||
```
|
||||
|
||||
## Mapstructuur aanmaken
|
||||
We plaatsen de Docker Compose configuratie en data in `/opt/nextcloud`.
|
||||
|
||||
1. Maak de basisstructuur aan.
|
||||
```bash
|
||||
sudo mkdir -p /opt/nextcloud/{db,nextcloud}
|
||||
```
|
||||
|
||||
2. Geef de huidige gebruiker toegang (optioneel, handig voor beheer).
|
||||
```bash
|
||||
sudo chown -R $USER:$USER /opt/nextcloud
|
||||
```
|
||||
|
||||
3. Ga naar de NextCloud map.
|
||||
```bash
|
||||
cd /opt/nextcloud
|
||||
```
|
||||
|
||||
## Docker Compose bestand maken
|
||||
We gebruiken een `docker-compose.yml` met NextCloud en MariaDB als database.
|
||||
|
||||
1. Maak het bestand `docker-compose.yml`.
|
||||
```bash
|
||||
nano docker-compose.yml
|
||||
```
|
||||
|
||||
2. Plaats de volgende configuratie in het bestand:
|
||||
|
||||
```yaml
|
||||
version: "3.9"
|
||||
|
||||
services:
|
||||
db:
|
||||
image: mariadb:11
|
||||
container_name: nextcloud_db
|
||||
restart: unless-stopped
|
||||
command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW
|
||||
environment:
|
||||
- MYSQL_ROOT_PASSWORD=sterk-root-wachtwoord
|
||||
- MYSQL_DATABASE=nextcloud
|
||||
- MYSQL_USER=nextcloud
|
||||
- MYSQL_PASSWORD=sterk-db-wachtwoord
|
||||
volumes:
|
||||
- ./db:/var/lib/mysql
|
||||
|
||||
app:
|
||||
image: nextcloud:stable
|
||||
container_name: nextcloud_app
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- "8080:80"
|
||||
depends_on:
|
||||
- db
|
||||
environment:
|
||||
- MYSQL_DATABASE=nextcloud
|
||||
- MYSQL_USER=nextcloud
|
||||
- MYSQL_PASSWORD=sterk-db-wachtwoord
|
||||
- MYSQL_HOST=db
|
||||
volumes:
|
||||
- ./nextcloud:/var/www/html
|
||||
```
|
||||
|
||||
{{< notice "info" "Informatie" >}}
|
||||
Vervang `sterk-root-wachtwoord` en `sterk-db-wachtwoord` door sterke, unieke wachtwoorden. Bewaar deze veilig.
|
||||
{{< /notice >}}
|
||||
|
||||
## NextCloud containers starten
|
||||
1. Download de benodigde images en start de containers in de achtergrond.
|
||||
```bash
|
||||
docker compose up -d
|
||||
```
|
||||
|
||||
2. Controleer of de containers draaien.
|
||||
```bash
|
||||
docker ps
|
||||
```
|
||||
|
||||
Je zou nu containers moeten zien met namen zoals `nextcloud_app` en `nextcloud_db`.
|
||||
|
||||
## NextCloud installatie afronden
|
||||
1. Open een browser en ga naar:
|
||||
```text
|
||||
http://server-ip:8080
|
||||
```
|
||||
of, indien je een domeinnaam en reverse proxy gebruikt:
|
||||
```text
|
||||
https://voorbeeld.nl
|
||||
```
|
||||
|
||||
2. Volg de stappen van de NextCloud installatie:
|
||||
- Stel een beheerdersgebruikersnaam en wachtwoord in
|
||||
- Controleer dat de database-instellingen overeenkomen met de waarden uit `docker-compose.yml`
|
||||
|
||||
{{< notice "info" "Informatie" >}}
|
||||
Na afronden keert NextCloud terug naar de login-pagina en kun je inloggen met het beheerdersaccount.
|
||||
{{< /notice >}}
|
||||
|
||||
## Data en back-ups
|
||||
Alle gegevens worden opgeslagen in:
|
||||
|
||||
- Database: `/opt/nextcloud/db`
|
||||
- NextCloud bestanden en configuratie: `/opt/nextcloud/nextcloud`
|
||||
|
||||
{{< notice "warning" "Waarschuwing" >}}
|
||||
Maak regelmatig back-ups van deze mappen, bij voorkeur met de containers eerst in een consistente staat (bijvoorbeeld tijdelijk stoppen)
|
||||
{{< /notice >}}
|
||||
Voer het volgende uit om een back-up te maken.
|
||||
|
||||
```bash
|
||||
cd /opt/nextcloud
|
||||
docker compose down
|
||||
tar czf nextcloud-backup-$(date +%F).tar.gz db nextcloud
|
||||
docker compose up -d
|
||||
```
|
||||
121
content/mantelzorgers/nginx/_index.nl.md
Normal file
121
content/mantelzorgers/nginx/_index.nl.md
Normal file
@@ -0,0 +1,121 @@
|
||||
---
|
||||
title: "NGINX"
|
||||
date: 2025-11-08
|
||||
weight: 1
|
||||
feedback: true
|
||||
draft: false
|
||||
---
|
||||
|
||||
{{< notice "info" "Informatie">}}
|
||||
De instructies in dit artikel zijn uitsluitend voor de webserver NGINX, niet de software die hierop geïnstalleerd gaat worden.
|
||||
{{< /notice >}}
|
||||
|
||||
## Benodigdheden
|
||||
- Een server met een Debian Linux installatie
|
||||
- Een domeinnaam
|
||||
- DNS ingesteld naar het IP-adres van de server
|
||||
- Rechten als `su` of `sudo` om opdrachten als root uit te voeren.
|
||||
|
||||
## Voorbereiding
|
||||
Zorg dat het systeem up-to-date is voordat je begint met installeren.
|
||||
1. Log in met SSH.
|
||||
```bash
|
||||
ssh gebruiker@server
|
||||
```
|
||||
2. Gebruik het `apt` commando om het systeem te updaten.
|
||||
```bash
|
||||
sudo apt update && sudo apt upgrade
|
||||
```
|
||||
## NGINX
|
||||
### Installatie
|
||||
Installeer NGINX met het `apt` commando.
|
||||
```bash
|
||||
sudo apt install nginx
|
||||
```
|
||||
|
||||
### Configuratie
|
||||
{{< notice "info" "Informatie" >}}
|
||||
Verander in de code **voorbeeld** naar jouw domeinnaam, zonder `https://` of `www` tenzij letterlijk aangegeven zoals **voorbeeld.nl**
|
||||
{{< /notice >}}
|
||||
|
||||
1. Zorg dat NGINX altijd start met de server.
|
||||
```bash
|
||||
sudo systemctl enable --now nginx
|
||||
```
|
||||
2. Kopieer de standaard site configuratie.
|
||||
```bash
|
||||
sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/voorbeeld.nl
|
||||
```
|
||||
3. Pas de inhoud met het programma `nano`.
|
||||
```bash
|
||||
sudo nano /etc/nginx/sites-available/voorbeeld.nl
|
||||
```
|
||||
```nginx
|
||||
server {
|
||||
server_name voorbeeld.nl www.voorbeeld.nl;
|
||||
|
||||
root /var/www/voorbeeld.nl/public/;
|
||||
index index.html;
|
||||
|
||||
location / {
|
||||
try_files $uri $uri/ =404;
|
||||
}
|
||||
|
||||
listen 80;
|
||||
listen [::]:80;
|
||||
|
||||
}
|
||||
```
|
||||
{{< notice "info" "Tip" >}}
|
||||
Je kan plakken in de terminal met CTRL + SHIFT + V
|
||||
{{< /notice >}}
|
||||
4. Activeer de configuratie door een link te maken met het `ln` commando.
|
||||
```bash
|
||||
sudo ln -s /etc/nginx/sites-available/voorbeeld.nl \
|
||||
/etc/nginx/sites-enabled/voorbeeld.nl
|
||||
```
|
||||
5. Controleer werking en herlaad NGINX.
|
||||
```bash
|
||||
sudo nginx -t
|
||||
sudo systemctl reload nginx
|
||||
```
|
||||
|
||||
## CertBot
|
||||
### Installatie
|
||||
Installeer CertBot met het `apt` commando.
|
||||
|
||||
```bash
|
||||
sudo apt install certbot python3-certbot-nginx
|
||||
```
|
||||
### Configuratie
|
||||
Genereer en implementeer een geldig certificaat met het volgende commando.
|
||||
```bash
|
||||
sudo certbot --nginx
|
||||
```
|
||||
Volg de stappen op met logische antwoorden, zoals het opgeven van jouw e-mailadres en selectie welke sites certificering moeten krijgen.
|
||||
{{< notice "info" "Tip" >}}
|
||||
Wil je liever je configuratie testen voordat je een certificaat ophaalt, gebruik dan de parameter `--dry-run`.
|
||||
```
|
||||
sudo certbot --nginx --dry-run
|
||||
```
|
||||
{{< /notice >}}
|
||||
|
||||
## Website activeren
|
||||
1. Maak een index.html bestand. En geef deze een vorm van vulling, zoals voorbeeld hieronder.
|
||||
```bash
|
||||
sudo mkdir -p /var/www/voorbeeld.nl/public
|
||||
sudo nano /var/www/voorbeeld.nl/public/index.html
|
||||
```
|
||||
```html
|
||||
<html>
|
||||
<body>
|
||||
<h1>Hallo wereld</h1>
|
||||
</body>
|
||||
</html>
|
||||
```
|
||||
2. Wijs de omgeving toe aan de `www-data` gebruiker en groep, stel schrijfrechten in.
|
||||
```bash
|
||||
sudo chown www-data:www-data /var/www/voorbeeld.nl -R
|
||||
sudo chmod -R g+rwX /var/www/voorbeeld.nl
|
||||
```
|
||||
3. Open de browser en ga naar je website toe, je zou nu de inhoud van de index.html moeten kunnen zien.
|
||||
204
content/mantelzorgers/nginx/nextcloud/_index.nl.md
Normal file
204
content/mantelzorgers/nginx/nextcloud/_index.nl.md
Normal file
@@ -0,0 +1,204 @@
|
||||
---
|
||||
title: "NextCloud (NGINX)"
|
||||
date: 2025-11-10
|
||||
weight: 3
|
||||
feedback: true
|
||||
draft: false
|
||||
---
|
||||
|
||||
NextCloud is een open source platform voor bestandssynchronisatie en samenwerking, vergelijkbaar met diensten als Dropbox of OneDrive. In deze handleiding installeren we NextCloud rechtstreeks op een Debian server met NGINX als webserver.
|
||||
|
||||
{{< notice "info" "Informatie" >}}
|
||||
Deze handleiding gaat uit van een Debian server met een basis NGINX installatie zoals beschreven in het bovenliggende artikel **NGINX**.
|
||||
{{< /notice >}}
|
||||
|
||||
## Benodigdheden
|
||||
- Een server met een Debian Linux installatie
|
||||
- Een domeinnaam, bijvoorbeeld `cloud.voorbeeld.nl`
|
||||
- DNS ingesteld naar het IP-adres van de server
|
||||
- Een werkende webserver (NGINX) die verzoeken voor jouw domein kan verwerken
|
||||
- Rechten als `su` of `sudo` om opdrachten als root uit te voeren
|
||||
|
||||
## Voorbereiding
|
||||
Zorg dat het systeem up-to-date is voordat je NextCloud installeert.
|
||||
|
||||
1. Log in met SSH.
|
||||
```bash
|
||||
ssh gebruiker@server
|
||||
```
|
||||
|
||||
2. Werk de pakketbron en geïnstalleerde pakketten bij.
|
||||
```bash
|
||||
sudo apt update && sudo apt upgrade
|
||||
```
|
||||
|
||||
## PHP en database installeren
|
||||
NextCloud heeft PHP en een database nodig. In dit voorbeeld gebruiken we MariaDB als database.
|
||||
|
||||
1. Installeer PHP, de benodigde modules en MariaDB.
|
||||
```bash
|
||||
sudo apt install php-fpm php-mysql php-xml php-gd php-curl php-mbstring php-zip php-intl php-bcmath php-gmp mariadb-server unzip
|
||||
```
|
||||
|
||||
2. Beveilig de MariaDB installatie
|
||||
```bash
|
||||
sudo mysql_secure_installation
|
||||
```
|
||||
|
||||
3. Maak een database en gebruiker voor NextCloud.
|
||||
```bash
|
||||
sudo mysql
|
||||
```
|
||||
|
||||
Voer daarna in de MariaDB prompt de volgende opdrachten uit, pas wachtwoord en namen aan:
|
||||
|
||||
```sql
|
||||
CREATE DATABASE nextcloud CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
|
||||
CREATE USER 'nc_user'@'localhost' IDENTIFIED BY 'sterk-db-wachtwoord';
|
||||
GRANT ALL PRIVILEGES ON nextcloud.* TO 'nc_user'@'localhost';
|
||||
FLUSH PRIVILEGES;
|
||||
EXIT;
|
||||
```
|
||||
|
||||
## NextCloud bestanden downloaden
|
||||
We plaatsen NextCloud in `/var/www/nextcloud`.
|
||||
|
||||
1. Download en pak NextCloud uit.
|
||||
```bash
|
||||
cd /tmp
|
||||
curl -LO https://download.nextcloud.com/server/releases/latest.zip
|
||||
unzip latest.zip
|
||||
```
|
||||
|
||||
2. Maak de doelmap aan en kopieer de bestanden.
|
||||
```bash
|
||||
sudo mkdir -p /var/www/nextcloud
|
||||
sudo rsync -av nextcloud/ /var/www/nextcloud/
|
||||
```
|
||||
|
||||
3. Stel de juiste eigenaar en rechten in.
|
||||
```bash
|
||||
sudo chown -R www-data:www-data /var/www/nextcloud
|
||||
sudo find /var/www/nextcloud -type d -exec chmod 750 {} \;
|
||||
sudo find /var/www/nextcloud -type f -exec chmod 640 {} \;
|
||||
```
|
||||
|
||||
## NGINX configureren voor NextCloud
|
||||
We maken een aparte server-configuratie aan voor `cloud.voorbeeld.nl`.
|
||||
|
||||
1. Maak een nieuw configuratiebestand.
|
||||
```bash
|
||||
sudo nano /etc/nginx/sites-available/cloud.voorbeeld.nl
|
||||
```
|
||||
|
||||
2. Plaats de volgende configuratie in het bestand:
|
||||
|
||||
```nginx
|
||||
server {
|
||||
server_name cloud.voorbeeld.nl;
|
||||
|
||||
root /var/www/nextcloud;
|
||||
index index.php index.html;
|
||||
|
||||
client_max_body_size 512M;
|
||||
fastcgi_buffers 64 4K;
|
||||
|
||||
add_header Referrer-Policy "no-referrer" always;
|
||||
add_header X-Content-Type-Options "nosniff" always;
|
||||
add_header X-Frame-Options "SAMEORIGIN" always;
|
||||
add_header X-XSS-Protection "1; mode=block" always;
|
||||
|
||||
location = /robots.txt { allow all; log_not_found off; access_log off; }
|
||||
|
||||
location = /.well-known/carddav { return 301 $scheme://$host/remote.php/dav; }
|
||||
location = /.well-known/caldav { return 301 $scheme://$host/remote.php/dav; }
|
||||
|
||||
location ~ ^/(?:build|tests|config|lib|3rdparty|templates|data)/ {
|
||||
deny all;
|
||||
}
|
||||
location ~ ^/(?:\.|autotest|occ|issue|indie|db_|console) {
|
||||
deny all;
|
||||
}
|
||||
|
||||
location / {
|
||||
rewrite ^ /index.php$request_uri;
|
||||
}
|
||||
|
||||
location ~ \.php(?:$|/) {
|
||||
fastcgi_split_path_info ^(.+\.php)(/.+)$;
|
||||
include snippets/fastcgi-php.conf;
|
||||
fastcgi_pass unix:/run/php/php-fpm.sock;
|
||||
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
||||
}
|
||||
|
||||
location ~ \.(?:css|js|woff2?|svg|gif|map)$ {
|
||||
try_files $uri /index.php$request_uri;
|
||||
access_log off;
|
||||
expires 6M;
|
||||
}
|
||||
|
||||
location ~ \.(?:png|html|ttf|ico|jpg|jpeg)$ {
|
||||
try_files $uri /index.php$request_uri;
|
||||
access_log off;
|
||||
expires 6M;
|
||||
}
|
||||
|
||||
listen 80;
|
||||
listen [::]:80;
|
||||
}
|
||||
```
|
||||
|
||||
{{< notice "info" "Informatie" >}}
|
||||
Controleer of het pad naar de PHP-FPM socket klopt. Op sommige Debian-versies kan dit bijvoorbeeld `/run/php/php8.2-fpm.sock` zijn. Gebruik `ls /run/php/` om het juiste bestand te vinden en pas `fastcgi_pass` zo nodig aan.
|
||||
{{< /notice >}}
|
||||
|
||||
3. Activeer de configuratie en controleer NGINX.
|
||||
```bash
|
||||
sudo ln -s /etc/nginx/sites-available/cloud.voorbeeld.nl /etc/nginx/sites-enabled/cloud.voorbeeld.nl
|
||||
sudo nginx -t
|
||||
sudo systemctl reload nginx
|
||||
```
|
||||
|
||||
## CertBot voor HTTPS
|
||||
Zorg voor een geldig TLS-certificaat met CertBot.
|
||||
|
||||
1. Installeer CertBot met de NGINX plugin.
|
||||
```bash
|
||||
sudo apt install certbot python3-certbot-nginx
|
||||
```
|
||||
|
||||
2. Vraag een certificaat aan voor jouw domein.
|
||||
```bash
|
||||
sudo certbot --nginx
|
||||
```
|
||||
|
||||
Volg de stappen op met logische antwoorden, zoals het opgeven van jouw e-mailadres en de keuze om HTTP automatisch naar HTTPS om te leiden.
|
||||
|
||||
{{< notice "info" "Informatie" >}}
|
||||
Wil je liever je configuratie testen voordat je een certificaat ophaalt, gebruik dan de parameter `--dry-run`.
|
||||
```bash
|
||||
sudo certbot --nginx --dry-run
|
||||
```
|
||||
{{< /notice >}}
|
||||
|
||||
## NextCloud installatie afronden
|
||||
1. Open een browser en ga naar:
|
||||
```text
|
||||
http://cloud.voorbeeld.nl
|
||||
```
|
||||
of, na het instellen van HTTPS:
|
||||
```text
|
||||
https://cloud.voorbeeld.nl
|
||||
```
|
||||
|
||||
2. Volg de stappen van de NextCloud installatie:
|
||||
- Stel een beheerdersgebruikersnaam en wachtwoord in
|
||||
- Vul de databasegegevens in:
|
||||
- Databasegebruiker: `nc_user`
|
||||
- Databasewachtwoord: `sterk-db-wachtwoord`
|
||||
- Database: `nextcloud`
|
||||
- Host: `localhost`
|
||||
|
||||
{{< notice "info" "Informatie" >}}
|
||||
Na afronden keert NextCloud terug naar de login-pagina en kun je inloggen met het beheerdersaccount.
|
||||
{{< /notice >}}
|
||||
Reference in New Issue
Block a user