Handleidingen

Inleiding

In deze Use Case beschrijven we hoe we bestanden beschikbaar kunnen maken op onze Synology NAS Server. Dit kan bijvoorbeeld handig zijn als een fotograaf zijn/haar foto’s wil beschikbaar maken voor klanten maar hiervoor geen gigantische webserver wil huren. We behandelen de verschillende activiteiten die hierbij komen kijken zodat alles op een veilige manier kan gedaan worden.


1. De service activeren

FTP (File Transfer Protocol) en de opvolgers FTPS (FTP over SSL) en SFTP (SSH FTP) zitten standaard in Synology DSM zitten, we moeten ze enkel activeren en configureren. Dit gebeurt in het Configuratiescherm, onder het puntje Bestandservices, waar we een tabblad FTP terug kunnen vinden.

FTP, FTPS of SFTP, welke kies ik?

  • FTP is het oorspronkelijke protocol, dat echter nog vaak gebruikt wordt. Het zorgt voor snelle en eenvoudige bestandsoverdracht (b.v. met een client als Filezilla) maar heeft geen enkele vorm van beveiliging tijdens die overdracht. Net zoals HTTP eigenlijk niet langer gebruikt zou mogen worden voor websites, geldt hetzelfde voor FTP als je een veilige verbinding wil aanbieden.
    Opmerking: Aangezien we in deze handleiding een zo veilig mogelijke oplossing nastreven, schakelen we FTP niet in. Uiteraard is ook hier de vraag wat primeert: Veiligheid of compatibiliteit (voor de mensen die de bestanden zullen afhalen), afhankelijk hiervan kun je dit eventueel alsnog activeren.

  • FTPS is net zoals HTTPS, het oorspronkelijke protocol met een SSL-schil erboven. Het maakt gebruik van de ingebouwde mogelijkheden om een SSL-certificaat (al dan niet gratis dmv Let’s Encrypt) op je Synology NAS Server te activeren, om een veilige verbinding aan te bieden. FTPS wordt door de meeste moderne FTP-clients ondersteund en is dus een perfecte opvolger van FTP.

  • SFTP is een protocol dat wel dezelfde functionaliteit biedt als FTP en FTPS maar onderliggend een totaal verschillende architectuur heeft. Het is een mechanisme dat gebruik maakt van SSH, het protocol dat gebruikt wordt om vanop afstand via commando’s Linux- of Unix-machines te beheren. SFTP wordt echter nog niet door alle FTP-clients ondersteund (al doet de populairste, Filezilla, dat wel), waardoor het best is om niet enkel op dit protocol beroep te doen. Op je Synology NAS Server kan je echter perfect SFTP naast FTPS activeren, zodat iemand die het wenst te gebruiken, dit ook kan.

Instellingen voor FTP(S)

Standaard staan een hele reeks instellingen al correct maar uiteraard zijn er een aantal zaken die we eventueel willen aanpassen:

  • Poorten: De standaard-poort voor FTP & FTPS is 21. Deze poort is bij sommige providers echter standaard niet toegelaten, waarbij we een andere poort kunnen kiezen. Uiteraard moet de partij die de verbinding met je Synology NAS Server wil maken, dan wel deze poort ook ingeven wanneer de server-details worden ingesteld, het systeem kan de alternatieve poort niet automatisch detecteren.

  • Passieve FTP: Hetzelfde geldt voor de poorten van passieve FTP, een mechanisme dat ervoor zal zorgen dat de transfers ook in door firewalls sterk gelimiteerde omgevingen kunnen worden opgezet. Het nadeel is dat er meer poorten voor moeten worden opengesteld maar dit vormt met een goede firewall-policy niet direct een probleem (Zie meer in punt 2 van deze handleiding). Wanneer je Synology NAS Server niet rechtstreeks aan het internet hangt, is het wel aan te raden om het vinkje naast Externe IP in PASV modus rapporteren aan te zetten aangezien de ervaring ons leert dat het opbouwen van connecties anders niet altijd goed werkt.

  • De vinkjes voor FXP (om bestanden rechtstreeks van één FTP-server naar een andere te laten overdragen), FIPS (om extra cryptografische algoritmes te ondersteunen) en ASCII-overdrachtsmodus (om platte tekstbestanden beter over te dragen) kunnen worden aangezet indien dit nodig is voor de setup.

  • Beperking op de verbinding: Hier kunnen eventuele beperkingen worden ingesteld om je systeem en vooral de lijn waarover wordt gedownload, niet te veel te belasten. Dit kan gebeuren op basis van aantal verbindingen of op bandbreedte. Uiteraard heeft dit wel een impact op de snelheid van de bestanden die worden afgehaald aangezien er respectievelijk minder bestanden kunnen worden afgehaald of deze bestanden minder snel verzonden of ontvangen worden.

Instellingen voor SFTP

Voor SFTP is enkel een aanpassing van de poort mogelijk. Deze staat standaard op poort 22 maar op de poort zien we vaak pogingen tot inbraak aangezien dit ook de standaard SSH-poort is. Het is aan te raden om een alternatieve poort te selecteren, al moet deze dan zeker ook worden meegegeven aan personen die in onze Synology NAS Server moeten kunnen inloggen.


2. Firewall

In onze post Hoe bouw ik een veilige Synology firewall policy op? hebben we in detail beschreven wat er allemaal moet worden aangepast om een veilige firewall policy te krijgen.
Om bestandsoverdracht via FTP mogelijk te maken, kunnen we gebruik maken van de instellingen voor ingebouwde toepassingen, waarbij we de lijnen FTP-bestandserver (voor FTP en/of FTPS) en Gecodeerde terminalservice (voor SFTP) aanzetten.


3. Rechten op de mappen

FTP, FTPS en SFTP zitten dan wel standaard ingebakken in DSM, de rechten die de gebruikers krijgen wanneer ze zijn inlogd helaas wat complexer om correct in te stellen. Er zijn 3 methodes om dit te doen:

a. Gebruikersmappen

Synology heeft een systeem ingebouwd waarbij elke gebruiker een individuele map kan toegewezen krijgen. Deze is te vinden onder de gedeelde map Homes en zal standaard enkel beschikbaar zijn voor de gebruiker zelf en voor administrators. Indien hiervan wordt gebruik gemaakt, dan hoeft er op vlak van mappen niets extra te worden ingesteld.

b. Gedeelde map per gebruiker

Aangezien de gedeelde mappen binnen Synology DSM standaard rechten hebben ingebouwd, kunnen we hiervan gebruik maken om per gebruiker een nieuwe map aan te maken en hem/haar hierop rechten te geven.

c. Gedeelde mappen

Soms is het echter makkelijker om alle bestanden die downloadbaar zijn (b.v. van alle klanten) samen in 1 gedeelde map te zetten en één niveau daaronder de mappen rechten te geven per gebruiker.
Hiervoor passen we hetzelfde principe toe als optie 2 hierboven (waarbij we alle gebruikers toegang geven tot de gedeelde hoofdmap) maar zullen we hierna de map van de klant onder deze map aparte rechten geven:

  • We gaan naar File Station en klikken door naar onze hoofdmap
  • Daar maken we een nieuwe map aan voor deze klant
  • We klikken rechts op deze map en kiezen Eigenschappen
  • In het tabblad Machtigingen klikken we op de knop Maken
  • Nu krijgen we een scherm om een specifieke machtiging aan te passen, waarin we de gebruiker kiezen en de vinkjes voor Lezen en Schrijven aanzetten

Het is nu wel belangrijk om te zorgen dat deze gebruiker geen toegang heeft tot de mappen van alle andere gebruikers, dus we voeren een gelijkaardige actie uit op de hoofdmap:

  • In File Station klikken we rechts op de hoofdmap en kiezen opnieuw Eigenschappen
  • In het tabblad Machtigingen zullen we onze gebruiker zien staan in de lijst, met rechten op de map
  • Als we hierop dubbelklikken, moeten we enkel het onderdeel Toepassen op aanpassen naar enkel Deze map (alle andere vinkjes worden afgezet)

Niet vergeten: FTP-rechten

Als laatste stap om onze gebruikers via FTP te kunnen laten inloggen, dienen we hem/haar rechten te geven om de FTP-service te gebruiken:

  • We gaan in Configuratiescherm naar Gebruikers
  • We dubbelklikken op onze gebruiker en gaan naar het tabblad Toepassingen
  • Hier klikken we het vinkje Toestaan naast FTP aan
  • Desgewenst kunnen we alle andere rechten weigeren, als deze gebruiker enkel via FTP mag kunnen inloggen

Afsluitende opmerkingen

Het beschikbaar maken van bestanden via FTP kan een extra manier zijn om klanten te bedienen. Er moet evenwel altijd rekening gehouden worden met de internet-connectie waarover deze connecties zullen lopen. Zo zijn veel thuis/kantoorconnecties ideaal om veel bestanden te downloaden maar is de uploadsnelheid een stuk lager (= downloadsnelheid voor de klant wordt bepaald door uploadsnelheid van de server). Een Synology NAS Server in een datacenter plaatsen is hiervoor een mogelijke oplossing, wat ook de betrouwbaarheid verhoogt (aangezien de snelheid en soms zelfs de uptime van niet-professionele internetverbindingen niet altijd optimaal is).

Een tweede zaak waarmee rekening moet worden gehouden is het feit dat op niet-professionele verbindingen niet altijd alle poorten door de providers worden toegelaten. Deze beperkingen verminderen gelukkig wel meer en meer maar dit wordt toch best even bekeken vooraleer deze setup uit te voeren.