Synology inrichten voor leerlingen

Als leraar is het handig om een webserver in te kunnen zetten voor leerlingen die websites moeten opleveren m.b.v. HTML, CSS, JAVASCRIPT, PHP en een MySQL database.

In dit artikel wordt uitgelegd hoe een Synology NAS ingericht kan worden.

Groep

  • Maak een nieuwe groep aan;
  • Verleen deze groep uitsluitend toegang tot de toepassing FileStation.

Autorisaties kunnen op één centrale plek worden beheerd.

Gebruiker

  • Maak per leerling of team een nieuwe gebruiker aan;
  • Koppel de gebruiker aan de eerder gemaakte groep en aan de groep [http];
  • Pas verder geen wijzigingen toe.

Autorisaties worden op groepsniveau bepaald.

Gebruiker | Geavanceerd

  • Vink aan [Dwing gebruikers om het wachtwoord te wijzigen nadat de administrator het wachtwoord opnieuw heeft ingesteld];
  • Schakel de basismapservice in.

Door het afdwingen van een nieuw wachtwoord kan vooraf één centraal wachtwoord worden ingesteld. De basismapservice zorgt er voor dat op gebruikersniveau bestanden opgeslagen kunnen worden.

Web Station | Algemene instellingen

Vink aan [Persoonlijke website inschakelen].

Binnen de basis-map van elke gebruiker wordt de map www aangemaakt.

File Station

  • Maak een nieuwe map binnen de map web aan, bijvoorbeeld school;
  • Maak onder deze map per gebruiker een nieuwe map.

Web Station | Virtuele host

  • Maak per gebruiker een virtuele host aan;
  • Selecteer per gebruiker de eerder aangemaakte map in web;
  • Verwijder nu de eerder aangemaakte gebruikers-mappen in web.

In het volgende hoofdstuk worden de gebruikersmappen opnieuw aangemaakt maar dan als symbolic link.

Putty

  • Gebruik Putty om via SSH verbinding met de Synology te maken;
  • Log in als root;
    • Log eerst in als admin;
    • Tik in: sudo -i;
    • Vul nogmaals het wachtwoord in.
  • Voer per gebruiker het volgende commando uit: sudo ln -s /volume1/homes/[gebruikersnaam]/www /volume1/web/school/[gebruikersnaam]

Via de bovenstaande commando’s worden de symbolic links gemaakt naar de www-mappen van de gebruikers. Hier komen uiteindelijk de bestanden in te staan.

 

Iconen UI gebruiker verbergen

Wanneer een gebruiker inlogt op DSM kunnen ongewenste iconen verschijnen zoals die van de Photo Station en/of WordPress (3rd party).

WordPress (3rd party)
  • Voer in Putty het commando uit: vi /usr/syno/synoman/webman/3rdparty/WordPress/config;
  • Wijzig “allUsers”: true, in “allUsers”: false;

Deze oplossing werkt voor alle 3rd party packages.

Photo Station
  • Log in op de Photo Station;
  • Ga naar instellingen;
  • Vink aan [Photo Station in het hoofdmenu van DSM verbergen].

Database

Het handigste is om in phpMyAdmin een gebruiker en database in één te maken. Kies voor localhost bij de server naam. Voor het gebruik van de onderstaande php-code is het noodzakelijk dat bij de php-instellingen van de virtual host de extensies MYSQL en PDO_MYSQL staan aangevinkt. Bij een MariaDB versie 10 wordt als host 127.0.0.1:3307 gebruikt.

<!DOCTYPE html>
<html lang="nl">
  <head>
	<meta charset="utf-8">
    <title>Virtualhost website</title>
  </head>
  <body>

    <?php $db = new PDO("mysql:host=127.0.0.1:3307;dbname=database_name","database_table", "database_password"); $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

    $sql = "SELECT achternaam FROM klanten";
    $resultaat = $db->query($sql);
 
    foreach($resultaat as $row) {
      echo $row['achternaam'].'';
    }
 
    $db = NULL;
    ?>
  </body>
</html>