Linux Manual
Bron: man pages / linux.die.net / tldr.sh Auteur: Johan Beysen | Fox & Fish Cybersecurity
1. Filesystem Structuur
/
├── bin/ → Essentiële binaries (ls, cp, bash)
├── boot/ → Bootloader, kernel, initrd
├── dev/ → Apparaatbestanden (sda, tty, null, random)
├── etc/ → Systeemconfiguratie
├── home/ → Gebruikersmappen (/home/johan)
├── lib/ → Gedeelde libraries voor /bin en /sbin
├── media/ → Mount points voor verwijderbare media
├── mnt/ → Tijdelijke mount points
├── opt/ → Optionele software (handmatig geïnstalleerd)
├── proc/ → Virtueel fs: kernel & process info
├── root/ → Homemap van root
├── run/ → Runtime data (PIDs, sockets)
├── sbin/ → Systeem-binaries (voor root)
├── srv/ → Data voor services (http, ftp)
├── sys/ → Virtueel fs: kernel device info
├── tmp/ → Tijdelijke bestanden (gewist bij reboot)
├── usr/ → Gebruikersprogramma's en data
│ ├── bin/ → Gebruikersbinaries
│ ├── lib/ → Libraries
│ ├── local/ → Lokaal geïnstalleerde software
│ └── share/ → Architectuuronafhankelijke data
└── var/ → Variabele data (logs, mail, databases)
├── log/ → Logbestanden
└── www/ → Webserver bestanden
Alles is een bestand
In Linux is alles een bestand — inclusief hardware, processen en netwerksockets. Dat is de fundamentele filosofie van het systeem.
2. Navigatie & Basiscommando's
2.1 Navigatie
pwd # Huidige map tonen
ls # Inhoud van map
ls -la # Uitgebreide lijst incl. verborgen bestanden
ls -lh # Human-readable bestandsgroottes
ls -lt # Gesorteerd op tijd (nieuwste eerst)
cd /etc # Naar absolute map
cd ~ # Naar homemap
cd .. # Eén map omhoog
cd - # Vorige map
tree # Boomstructuur (installeer indien nodig)
tree -L 2 # Max 2 niveaus diep
2.2 Bestanden & Mappen
# Aanmaken
touch bestand.txt # Leeg bestand aanmaken / timestamp updaten
mkdir map # Map aanmaken
mkdir -p a/b/c # Geneste mappen aanmaken
# Kopiëren & verplaatsen
cp bron.txt doel.txt # Kopiëren
cp -r bronmap/ doelmap/ # Map recursief kopiëren
mv oud.txt nieuw.txt # Hernoemen of verplaatsen
mv bestand.txt /tmp/ # Verplaatsen naar andere map
# Verwijderen
rm bestand.txt # Bestand verwijderen
rm -r map/ # Map recursief verwijderen
rm -rf map/ # Forceer (geen bevestiging)
rmdir lege-map/ # Enkel lege mappen
# Bekijken
cat bestand.txt # Volledige inhoud
less bestand.txt # Pagina per pagina (q = afsluiten)
head -20 bestand.txt # Eerste 20 lijnen
tail -20 bestand.txt # Laatste 20 lijnen
tail -f /var/log/syslog # Live meevolgen
2.3 Zoeken
# Bestanden zoeken
find / -name "passwd" # Zoek op naam
find /home -name "*.md" # Wildcards
find /tmp -mtime -1 # Gewijzigd in laatste 24u
find / -size +100M # Groter dan 100MB
find / -perm /4000 # SUID bestanden (security check)
find /etc -type f -name "*.conf" # Enkel bestanden
# Inhoud zoeken
grep "zoekterm" bestand.txt # In bestand
grep -r "zoekterm" /etc/ # Recursief in map
grep -i "zoekterm" bestand.txt # Case-insensitive
grep -n "zoekterm" bestand.txt # Met regelnummers
grep -v "zoekterm" bestand.txt # Omgekeerd (toon niet-matchende)
grep -E "regex" bestand.txt # Extended regex
grep -A 3 -B 3 "zoekterm" bestand.txt # 3 lijnen context
# Locatie van binaries
which python3 # Pad van binary in PATH
whereis bash # Zoekt binary, source en man page
type ls # Wat is dit commando? (alias, builtin, binary)
3. Bestandspermissies
3.1 Permissiesysteem
-rwxr-xr-- 1 johan staff 4096 Mar 13 bestand.sh
│└──┬───┘ └──┬─┘
│ │ └── Eigenaar : Groep
│ └── Permissies: eigenaar | groep | anderen
└── Type: - = bestand, d = map, l = symlink
| Symbool | Getal | Betekenis |
|---|---|---|
r |
4 | Lezen |
w |
2 | Schrijven |
x |
1 | Uitvoeren |
- |
0 | Geen permissie |
3.2 Permissies Wijzigen
# Symbolisch
chmod u+x bestand.sh # Eigenaar: voeg uitvoeren toe
chmod g-w bestand.txt # Groep: verwijder schrijven
chmod o=r bestand.txt # Anderen: enkel lezen
chmod a+r bestand.txt # Iedereen: lezen toevoegen
chmod -R 755 map/ # Recursief
# Octaal
chmod 755 bestand.sh # rwxr-xr-x
chmod 644 bestand.txt # rw-r--r--
chmod 600 ~/.ssh/id_rsa # rw------- (private key vereiste!)
chmod 700 ~/.ssh/ # rwx------ (ssh map)
# Eigenaar wijzigen
chown johan bestand.txt
chown johan:staff bestand.txt
chown -R johan:staff map/
# Groep wijzigen
chgrp staff bestand.txt
3.3 Speciale Permissies
# SUID (Set User ID) — voert uit als eigenaar, niet als caller
chmod u+s /usr/bin/passwd # 4755
# ls: -rwsr-xr-x
# SGID (Set Group ID) — voert uit als groep van bestand
chmod g+s map/ # 2755
# ls: drwxr-sr-x
# Sticky Bit — enkel eigenaar kan verwijderen (bijv. /tmp)
chmod +t /tmp # 1777
# ls: drwxrwxrwt
# Vind SUID bestanden (pentest check!)
find / -perm -4000 -type f 2>/dev/null
find / -perm -2000 -type f 2>/dev/null
4. Gebruikers & Groepen
# Huidige gebruiker
whoami
id # uid, gid, groups
# Gebruikers beheren
useradd -m -s /bin/bash johan # Gebruiker aanmaken met homemap
useradd -G sudo,docker johan # Met groepslidmaatschap
passwd johan # Wachtwoord instellen
usermod -aG docker johan # Toevoegen aan groep (zonder -a = vervangen!)
userdel -r johan # Verwijderen incl. homemap
# Groepen beheren
groupadd developers
groupdel developers
groups johan # Groepen van gebruiker
# Switchn
su - johan # Switch naar andere gebruiker
sudo commando # Uitvoeren als root
sudo -i # Root shell
sudo -u www-data commando # Als specifieke gebruiker
# Gebruikersinfo
cat /etc/passwd # Alle gebruikers
cat /etc/group # Alle groepen
cat /etc/shadow # Wachtwoord hashes (enkel root)
last # Inloggeschiedenis
lastlog # Laatste login per gebruiker
who # Wie is er ingelogd?
w # Wie + wat doen ze?
5. Processen
# Overzicht
ps aux # Alle processen
ps aux | grep nginx # Filteren
top # Live procesoverzicht
htop # Betere versie van top
pgrep nginx # PID van proces op naam
pidof nginx # Alternatief
# Beheren
kill 1234 # Stuur SIGTERM (netjes afsluiten)
kill -9 1234 # Stuur SIGKILL (forceer)
killall nginx # Kill op naam
pkill nginx # Alternatief
kill -SIGHUP 1234 # Reload configuratie (vaak gebruikt voor daemons)
# Achtergrond
sleep 60 & # Start in achtergrond
jobs # Toon achtergrondtaken
fg %1 # Breng taak naar voorgrond
bg %1 # Stuur naar achtergrond
nohup commando & # Blijft draaien na logout
disown %1 # Ontkoppel van terminal
# Nice & priority
nice -n 10 commando # Start met lagere prioriteit (-20 tot 19)
renice -n 5 -p 1234 # Prioriteit van draaiend proces aanpassen
# Systeembelasting
uptime # Load average
free -h # RAM gebruik
vmstat 1 # Statistieken per seconde
iostat # Disk I/O statistieken
6. Package Management
# pacman
sudo pacman -Syu # Update systeem
sudo pacman -S pakket # Installeren
sudo pacman -R pakket # Verwijderen
sudo pacman -Rs pakket # + ongebruikte dependencies
sudo pacman -Ss zoekterm # Zoeken in repositories
sudo pacman -Qi pakket # Info over geïnstalleerd pakket
sudo pacman -Ql pakket # Bestanden van pakket
sudo pacman -Qo /usr/bin/vim # Welk pakket levert dit bestand?
sudo pacman -Qdt # Verweesde packages
# yay (AUR helper)
yay -Syu # Update incl. AUR
yay -S pakket # Installeren uit AUR
yay -Ss zoekterm # Zoeken incl. AUR
sudo apt update # Repository lijst updaten
sudo apt upgrade # Pakketten updaten
sudo apt install pakket # Installeren
sudo apt remove pakket # Verwijderen
sudo apt purge pakket # + configuratiebestanden
sudo apt autoremove # Verweesde pakketten
apt search zoekterm # Zoeken
apt show pakket # Info
dpkg -l # Alle geïnstalleerde pakketten
dpkg -L pakket # Bestanden van pakket
sudo dnf update # Update systeem
sudo dnf install pakket # Installeren
sudo dnf remove pakket # Verwijderen
sudo dnf search zoekterm # Zoeken
sudo dnf info pakket # Info
rpm -qa # Alle geïnstalleerde pakketten
rpm -ql pakket # Bestanden van pakket
7. Netwerken
# Interfaces
ip addr # IP-adressen (vervangt ifconfig)
ip addr show eth0 # Specifieke interface
ip link # Interface status
ip route # Routetabel
ip route add default via 192.168.1.1 # Default gateway
# Connectiviteit
ping -c 4 8.8.8.8 # 4 pings sturen
traceroute 8.8.8.8 # Route naar host
mtr 8.8.8.8 # Combinatie van ping + traceroute
dig google.com # DNS lookup
dig @8.8.8.8 google.com # DNS via specifieke resolver
nslookup google.com # Alternatief
host google.com # Eenvoudige DNS lookup
# Poorten & verbindingen
ss -tulpn # Luisterende poorten + processen
ss -antp # Alle TCP verbindingen
netstat -tulpn # Ouder alternatief
lsof -i :80 # Welk proces gebruikt poort 80?
lsof -i tcp # Alle TCP verbindingen
# Verkeer
curl -I https://example.com # Enkel headers ophalen
curl -X POST -d "data" https://url # POST request
curl -o bestand.zip https://url # Downloaden
wget https://url/bestand.zip # Alternatief
tcpdump -i eth0 # Packet capture
tcpdump -i eth0 port 80 # Filter op poort
tcpdump -i eth0 -w capture.pcap # Opslaan naar bestand
# Firewall (iptables / nftables)
sudo iptables -L # Regels bekijken
sudo ufw status # UFW status (Ubuntu)
sudo ufw allow 22 # Poort toelaten
sudo ufw deny 23 # Poort blokkeren
sudo firewall-cmd --list-all # Firewalld (RHEL/Fedora)
8. SSH
# Verbinden
ssh johan@192.168.1.10
ssh -p 2222 johan@server.com # Andere poort
ssh -i ~/.ssh/mijn_key johan@server # Specifieke key
ssh -L 8080:localhost:80 server # Local port forwarding
ssh -R 9090:localhost:3000 server # Remote port forwarding
ssh -D 1080 server # SOCKS proxy (dynamic forwarding)
ssh -J jumphost doelserver # Via jump host
# SCP — bestanden kopiëren
scp bestand.txt johan@server:/tmp/
scp -r map/ johan@server:/home/johan/
scp johan@server:/var/log/syslog /tmp/
# Rsync — synchroniseren
rsync -avz lokaal/ johan@server:/remote/
rsync -avz --delete lokaal/ server:/remote/ # Verwijder ook op remote
rsync -avz -e "ssh -p 2222" lokaal/ server:/remote/
# SSH config (~/.ssh/config)
Host mijnserver
HostName 192.168.1.10
User johan
Port 2222
IdentityFile ~/.ssh/id_ed25519
ServerAliveInterval 60
# Dan gewoon: ssh mijnserver
SSH hardening
Pas /etc/ssh/sshd_config aan:
PermitRootLogin no
PasswordAuthentication no
PubkeyAuthentication yes
Port 2222 # Niet de standaard poort
AllowUsers johan
9. systemd & Services
# Service beheer
sudo systemctl start nginx
sudo systemctl stop nginx
sudo systemctl restart nginx
sudo systemctl reload nginx # Herladen config zonder onderbreking
sudo systemctl enable nginx # Autostart bij boot
sudo systemctl disable nginx
sudo systemctl status nginx
# Systeem
sudo systemctl reboot
sudo systemctl poweroff
sudo systemctl suspend
# Overzicht
systemctl list-units # Alle actieve units
systemctl list-units --failed # Gefaalde units
systemctl list-unit-files # Alle unit bestanden
# Logs (journald)
journalctl # Alle logs
journalctl -u nginx # Logs van specifieke service
journalctl -u nginx -f # Live meevolgen
journalctl -u nginx --since today
journalctl -u nginx --since "2026-03-01"
journalctl -p err # Enkel errors
journalctl -b # Logs van huidige boot
journalctl -b -1 # Vorige boot
journalctl --disk-usage # Schijfgebruik logs
# Eigen service aanmaken
# /etc/systemd/system/mijnapp.service
[Unit]
Description=Mijn Applicatie
After=network.target
[Service]
Type=simple
User=johan
WorkingDirectory=/opt/mijnapp
ExecStart=/opt/mijnapp/start.sh
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable --now mijnapp
10. Tekst Verwerken
10.1 grep
grep "pattern" bestand.txt
grep -r "pattern" /etc/
grep -i "pattern" bestand.txt # Case-insensitive
grep -v "pattern" bestand.txt # Omgekeerd
grep -n "pattern" bestand.txt # Regelnummers
grep -c "pattern" bestand.txt # Aantal matches
grep -l "pattern" *.txt # Enkel bestandsnamen
grep -E "regex|pattern" bestand.txt # Extended regex
grep -P "\d{4}" bestand.txt # Perl regex
10.2 sed — Stream Editor
# Vervangen
sed 's/oud/nieuw/' bestand.txt # Eerste match per lijn
sed 's/oud/nieuw/g' bestand.txt # Alle matches
sed -i 's/oud/nieuw/g' bestand.txt # In-place (wijzigt bestand)
sed -i.bak 's/oud/nieuw/g' bestand.txt # Met backup
# Lijnen
sed -n '5,10p' bestand.txt # Lijnen 5 t/m 10 tonen
sed '5,10d' bestand.txt # Lijnen 5 t/m 10 verwijderen
sed '/pattern/d' bestand.txt # Lijnen met patroon verwijderen
sed '1d' bestand.txt # Eerste lijn verwijderen
sed '$d' bestand.txt # Laatste lijn verwijderen
# Invoegen
sed '3a\Nieuwe lijn' bestand.txt # Na lijn 3 invoegen
sed '3i\Nieuwe lijn' bestand.txt # Voor lijn 3 invoegen
10.3 awk
# Kolommen
awk '{print $1}' bestand.txt # Eerste kolom
awk '{print $1, $3}' bestand.txt # Eerste en derde kolom
awk -F: '{print $1}' /etc/passwd # Delimiter instellen (: i.p.v. spatie)
awk 'NR==5' bestand.txt # Lijn 5
awk 'NR>=5 && NR<=10' bestand.txt # Lijnen 5 t/m 10
# Condities
awk '$3 > 1000' bestand.txt # Kolom 3 groter dan 1000
awk '/pattern/ {print $2}' bestand # Patroon + kolom
awk '{sum += $1} END {print sum}' f # Optellen
# Praktisch
ps aux | awk '{print $1, $11}' # Gebruiker + commando
df -h | awk 'NR>1 {print $5, $6}' # Schijfgebruik
10.4 Overige Tekst Tools
sort bestand.txt # Sorteren
sort -r bestand.txt # Omgekeerd
sort -n getallen.txt # Numeriek sorteren
sort -k2 bestand.txt # Op tweede kolom
sort -u bestand.txt # Uniek (duplicaten verwijderen)
uniq bestand.txt # Verwijder aangrenzende duplicaten
uniq -c bestand.txt # Tel occurrences
sort bestand.txt | uniq -d # Enkel duplicaten tonen
cut -d: -f1 /etc/passwd # Delimiter + kolom uitsnijden
cut -c1-10 bestand.txt # Karakters 1 t/m 10
wc bestand.txt # Lijnen, woorden, bytes
wc -l bestand.txt # Enkel lijnen
wc -w bestand.txt # Enkel woorden
tr 'a-z' 'A-Z' < bestand.txt # Lowercase → uppercase
tr -d '\n' < bestand.txt # Newlines verwijderen
tr -s ' ' < bestand.txt # Meerdere spaties samenvoegen
tee bestand.txt # Naar stdout én bestand tegelijk
11. Disk & Opslag
# Overzicht
df -h # Schijfgebruik per partitie
df -ih # Inode gebruik
du -sh /var/log/ # Grootte van map
du -sh /* | sort -h # Gesorteerd op grootte
du -sh /var/* | sort -rh | head -10 # Top 10 grootste mappen
# Partities & blokdevices
lsblk # Boomstructuur van schijven
lsblk -f # Met filesystems
fdisk -l # Partitietabel bekijken
blkid # UUID en type van partities
# Mounten
mount /dev/sdb1 /mnt/usb
mount -t ext4 /dev/sdb1 /mnt
umount /mnt/usb
mount -a # Mount alles in /etc/fstab
# /etc/fstab formaat:
# <device> <mountpoint> <fstype> <options> <dump> <pass>
# UUID=xxx /home ext4 defaults 0 2
# Filesystem aanmaken
mkfs.ext4 /dev/sdb1
mkfs.xfs /dev/sdb2
mkfs.fat -F32 /dev/sdc1 # FAT32 voor USB
# Disk health
smartctl -a /dev/sda # SMART status (install smartmontools)
12. Bash Scripting
12.1 Basis Structuur
#!/bin/bash
# Beschrijving van het script
set -e # Stop bij error
set -u # Stop bij ongedefinieerde variabele
set -o pipefail # Stop bij pipe error
VARIABELE="waarde"
GETAL=42
echo "Hallo $VARIABELE"
echo "Getal: ${GETAL}"
12.2 Variabelen & Input
# Variabelen
naam="Johan"
leeftijd=25
readonly CONSTANTE="onveranderbaar"
# Commandosubstitutie
datum=$(date +%Y-%m-%d)
bestanden=$(ls /tmp)
# Gebruikersinput
read -p "Voer naam in: " naam
read -sp "Wachtwoord: " wachtwoord # -s = silent
# Argumenten
$0 # Scriptnaam
$1 # Eerste argument
$2 # Tweede argument
$@ # Alle argumenten
$# # Aantal argumenten
$? # Exit code van vorig commando
$$ # PID van huidig script
12.3 Conditioneel
# if/else
if [ "$naam" == "Johan" ]; then
echo "Hallo Johan!"
elif [ "$naam" == "root" ]; then
echo "Hallo root!"
else
echo "Onbekende gebruiker"
fi
# Bestandstests
if [ -f "/etc/passwd" ]; then echo "Bestand bestaat"; fi
if [ -d "/tmp" ]; then echo "Map bestaat"; fi
if [ -r "bestand" ]; then echo "Leesbaar"; fi
if [ -x "script.sh" ]; then echo "Uitvoerbaar"; fi
if [ -z "$var" ]; then echo "Leeg"; fi
if [ -n "$var" ]; then echo "Niet leeg"; fi
# Getallen vergelijken
if [ $a -eq $b ]; then echo "Gelijk"; fi
if [ $a -ne $b ]; then echo "Niet gelijk"; fi
if [ $a -gt $b ]; then echo "Groter"; fi
if [ $a -lt $b ]; then echo "Kleiner"; fi
if [ $a -ge $b ]; then echo "Groter of gelijk"; fi
# Moderne syntax (dubbele haken)
if [[ "$string" =~ ^[0-9]+$ ]]; then echo "Getal"; fi
if [[ -f "$bestand" && -r "$bestand" ]]; then echo "Leesbaar bestand"; fi
12.4 Loops
# for loop
for i in 1 2 3 4 5; do
echo "Nummer: $i"
done
for bestand in /etc/*.conf; do
echo "Configuratie: $bestand"
done
for i in {1..10}; do
echo $i
done
# while loop
teller=0
while [ $teller -lt 5 ]; do
echo "Teller: $teller"
((teller++))
done
# until loop
until [ "$antwoord" == "ja" ]; do
read -p "Doorgaan? " antwoord
done
# Loop over bestandslijnen
while IFS= read -r lijn; do
echo "Lijn: $lijn"
done < bestand.txt
12.5 Functies
# Definitie
groet() {
local naam="$1" # local = enkel in functie
echo "Hallo $naam!"
return 0
}
# Aanroepen
groet "Johan"
# Return value via echo (niet return)
tel_op() {
echo $(( $1 + $2 ))
}
resultaat=$(tel_op 3 4)
12.6 Error Handling
# Exit codes
commando || { echo "Mislukt!"; exit 1; }
commando && echo "Geslaagd!"
# Trap — cleanup bij exit/error
cleanup() {
rm -f /tmp/tijdelijk_bestand
echo "Opgeruimd"
}
trap cleanup EXIT
trap cleanup ERR
# Logging
log() {
echo "[$(date '+%Y-%m-%d %H:%M:%S')] $1" | tee -a /var/log/mijnscript.log
}
log "Script gestart"
13. Cron Jobs
# Crontab bewerken
crontab -e # Eigen crontab
sudo crontab -e # Root crontab
crontab -l # Tonen
crontab -r # Verwijderen
# Systeem crontab
/etc/crontab
/etc/cron.d/
/etc/cron.daily/
/etc/cron.weekly/
/etc/cron.monthly/
Cron syntax:
# ┌─────── Minuut (0-59)
# │ ┌───── Uur (0-23)
# │ │ ┌─── Dag v/d mnd (1-31)
# │ │ │ ┌─ Maand (1-12)
# │ │ │ │ ┌ Dag v/d week (0-7, 0=7=zondag)
# │ │ │ │ │
# * * * * * commando
0 2 * * * /opt/backup.sh # Elke dag om 02:00
*/15 * * * * /opt/check.sh # Elke 15 minuten
0 9 * * 1 /opt/rapport.sh # Elke maandag om 09:00
0 0 1 * * /opt/maandrapport.sh # Eerste van elke maand
@reboot /opt/start.sh # Bij elke opstart
@daily /opt/dagelijks.sh # Elke dag (alias voor 0 0 * * *)
14. Handige One-Liners
# Grootste bestanden vinden
find / -type f -printf '%s %p\n' 2>/dev/null | sort -rn | head -20
# Alle luisterende services
ss -tulpn | grep LISTEN
# Schijfgebruik gesorteerd
du -ah / 2>/dev/null | sort -rh | head -20
# Actueel netverkeer per interface
watch -n 1 'cat /proc/net/dev'
# CPU top processen
ps aux --sort=-%cpu | head -10
# RAM top processen
ps aux --sort=-%mem | head -10
# Laatste foutmeldingen in logs
journalctl -p err --since today
# Alle SUID bestanden (privilege escalation check)
find / -perm /4000 -type f 2>/dev/null
# Alle writable mappen van world
find / -type d -perm -o+w 2>/dev/null
# Snel archief aanmaken
tar -czf archief.tar.gz map/
# Archief uitpakken
tar -xzf archief.tar.gz
# Base64 encode/decode
echo "tekst" | base64
echo "dGVrc3Q=" | base64 -d
# Hash van bestand
md5sum bestand.txt
sha256sum bestand.txt
# Poort snel testen
nc -zv 192.168.1.1 80
15. Cheat Sheet
# Navigatie
pwd | ls -la | cd ~ | cd - | tree
# Bestanden
touch | mkdir -p | cp -r | mv | rm -rf | cat | less | head | tail -f
# Zoeken
find / -name | grep -r -i -n | which | locate
# Permissies
chmod 755 | chown user:group | find / -perm /4000
# Processen
ps aux | top | htop | kill -9 | pgrep | nohup &
# Netwerk
ip addr | ss -tulpn | ping | traceroute | dig | curl | tcpdump
# Tekst
grep | sed 's/oud/nieuw/g' | awk -F: '{print $1}' | sort | uniq -c | wc -l
# Systeem
df -h | du -sh | free -h | uptime | journalctl -u service -f
# SSH
ssh user@host | scp bron doel | rsync -avz lokaal/ remote:
Fox & Fish Cybersecurity | Intern gebruik