| Fedora 12 is vrij oud en wordt niet langer ondersteund. De onderstaande instructies werken ook op nieuwere Fedora versies, maar pakketnamen en exacte bestandslocaties kunnen enigszins variëren. Controleer altijd de pakketbeheerder van uw systeem voor de meest actuele informatie.
Het configureren van vsftpd in Fedora (en de meeste andere Linux-distributies) omvat het bewerken van het configuratiebestand en het vervolgens herstarten van de service. Hier is een overzicht:
1. Installatie:
Zorg er eerst voor dat vsftpd is geïnstalleerd. Open een terminal en gebruik `dnf`:
``` bash
sudo dnf installeer vsftpd
```
2. Configuratiebestand:
Het hoofdconfiguratiebestand bevindt zich doorgaans op `/etc/vsftpd/vsftpd.conf`. Je hebt rootrechten nodig om het te bewerken:
``` bash
sudo vi /etc/vsftpd/vsftpd.conf
```
3. Belangrijkste configuratieopties:
Het bestand `vsftpd.conf` bevat talloze opties. Hier zijn enkele cruciale en hoe u deze kunt aanpassen voor verschillende configuraties:
* `anonymous_enable=NEE`: Schakelt anonieme FTP-toegang uit (ten zeerste aanbevolen voor de veiligheid). Verander 'JA' in 'NEE'.
* `local_enable=JA`: Maakt inloggen van lokale gebruikers mogelijk. Dit is meestal wat u wilt als gebruikers op uw systeem toegang moeten hebben tot bestanden via FTP.
* `write_enable=NO`: Schakelt standaard schrijfmogelijkheden uit voor alle gebruikers. Wees uiterst voorzichtig voordat u dit inschakelt. Het inschakelen ervan brengt aanzienlijke veiligheidsrisico's met zich mee als het niet correct wordt geconfigureerd met chroot en andere beveiligingsmaatregelen. Schakel het alleen in als u absoluut wilt dat gebruikers bestanden uploaden en de implicaties begrijpt.
* `local_umask=022`: Hiermee wordt het umask ingesteld voor lokale gebruikers. De waarde `022` betekent dat nieuw gemaakte bestanden de machtigingen 0755 (voor mappen) en 0644 (voor bestanden) zullen hebben. Pas dit aan naar jouw wensen.
* `chroot_local_user=JA`: Dit is een cruciale beveiligingsinstelling. Het beperkt elke gebruiker tot zijn thuismap, waardoor hij geen toegang heeft tot andere delen van het systeem. Sterk aanbevolen.
* `userlist_enable=JA`: Hiermee kunt u opgeven welke gebruikers verbinding mogen maken. Vereist een `/etc/vsftpd/user_list` bestand.
* `userlist_deny=NO`: Als `userlist_enable=YES`, betekent dit dat het `/etc/vsftpd/user_list` bestand toegestane gebruikers bevat (ingesteld op `YES` om de genoemde gebruikers te weigeren).
* `pasv_min_port=40000` en `pasv_max_port=50000`: Geef het poortbereik op voor passieve FTP. Uw firewall moet verkeer op deze poorten toestaan. Denk na over uw netwerkconfiguratie.
* `luister=JA` en `luister_ipv6=JA`: Schakel luisteren op IPv4 en IPv6 in. U kunt deze aanpassen op basis van uw netwerkconfiguratie.
* `secure_chroot_dir=/var/run/vsftpd/empty`: Dit is cruciaal bij het gebruik van `chroot_local_user=YES`. Het zorgt ervoor dat gebruikers effectief worden gechroot, zelfs als ze rechten hebben om uit de map `chroot` te ontsnappen. Hiervoor moet de map bestaan:`sudo mkdir -p /var/run/vsftpd/empty &&sudo chown root:root /var/run/vsftpd/empty`
4. Gebruikers- en groepsbeheer:
* Gebruikers aanmaken: Gebruik het `useradd` commando om gebruikers aan te maken. Bijvoorbeeld:`sudo useradd -m ftpuser` maakt een gebruiker met de naam `ftpuser` met een thuismap. Stel een wachtwoord in met `sudo passwd ftpuser`.
* Gebruikerslijst (optioneel): Als u `userlist_enable=YES` gebruikt, maak dan een bestand `/etc/vsftpd/user_list` aan met elke toegestane gebruikersnaam op een nieuwe regel.
5. Start vsftpd opnieuw:
Nadat u wijzigingen in het configuratiebestand hebt aangebracht, start u de vsftpd-service opnieuw op:
``` bash
sudo systemctl herstart vsftpd
```
6. Firewallconfiguratie:
Zorg ervoor dat uw firewall (zoals `firewalld`) verkeer toestaat op de poorten die door vsftpd worden gebruikt (poort 21 voor FTP-controleverbinding en het passieve poortbereik dat u hebt geconfigureerd). Bijvoorbeeld (met `firewalld`):
``` bash
sudo firewall-cmd --permanent --add-port=21/tcp
sudo firewall-cmd --permanent --add-port=40000-50000/tcp
sudo firewall-cmd --reload
```
Voorbeeld `vsftpd.conf` (Beveiligde configuratie):
```
anoniem_enable=NEE
local_enable=JA
write_enable=NEE
local_umask=022
chroot_local_user=JA
secure_chroot_dir=/var/run/vsftpd/empty
userlist_enable=JA
userlist_deny=NEE
pasv_min_port=40000
pasv_max_port=50000
luister=JA
luister_ipv6=JA
```
Vergeet niet om het voorbeeld van het passieve poortbereik te vervangen door het door u gekozen bereik en indien nodig andere instellingen aan te passen. Geef altijd prioriteit aan best practices op het gebied van beveiliging. Test uw configuratie grondig na elke wijziging. Als u problemen ondervindt, controleer dan de vsftpd-logboeken op foutmeldingen (`/var/log/vsftpd.log`). Overweeg een modernere distributie te gebruiken voor betere beveiligingsupdates en ondersteuning. |