Ontwerpverslag
Ontwerpverslag
Geentronics Enschede, 7 mei 2003 Opdrachtgever: Jan Mulder Scholengemeenschap Versie 1.15
Toelichting Bij het ontwerpdocument dat voor u ligt, valt ´e´en zeer belangrijke opmerking te maken. Bij het beschrijven van het ontwerp is uitgegaan van het volledige systeem met alle mogelijke opties. Door de opbouw in verschillende paragrafen is het echter mogelijk om alleen de onderdelen die aantrekkelijk lijken te lezen. Het is echter wel aan te raden om alle paragrafen even door te nemen, want veel uitbreidingen leveren aanzienlijke voordelen op.
1
Management summary Alvorens de technische details van het ontworpen systeem te beschrijven, wordt er eerst een algemeen overzicht van het ontwerp gegeven. Voordat een keuze gemaakt kan worden tussen de diverse mogelijkheden dient er nagedacht te worden over een groot aantal aspecten. De belangrijkste aspecten hierbij zijn: veiligheid, onderhoudbaarheid en de kosten. Waar deze aspecten met elkaar in conflict staan zal in eerste instantie voor de veiligheid gekozen worden. Veiligheid is iets waar niet op bezuinigd dient te worden! Het systeem maakt gebruik van meerdere computers. Hoewel dit in eerste instantie misschien niet nodig is voor de capaciteit, wordt het systeem hierdoor wel minder kwetsbaar. Wanneer er een computer uitvalt, werken de andere computers immers nog gewoon door en is het systeem nog (gedeeltelijk) bruikbaar. Het aanbod van functies van het systeem bevat onder meer het delen van bestanden en het toegankelijk maken van informatie. In dit verslag worden alle functies in detail beschreven. Het aspect onderhoud bestaat voornamelijk uit het beheren van het systeem. Zolang er niets mis gaat met het systeem, bestaat dit uit het aanmaken van de accounts van de gebruikers. Door het aanhouden van een centrale database met daarin alle noodzakelijke informatie over de gebruikers van het systeem is dit zo eenvoudig mogelijk gebleven. Doordat het systeem contact maakt met het internet via een gateway computer kan het netwerk eenvoudig beschermd worden. Dit gebeurt met een firewall die zo kan worden afgesteld dat ongewenste bezoekers het systeem niet binnen kunnen komen. Het hebben van een gateway computer heeft als bijkomend voordeel dat het onmogelijk is om vanaf het internet de samenstelling van het systeem te bekijken. Om te voorkomen dat (een gedeelte van) het systeem voor langere tijd onbruikbaar is indien er toch ‘iets’ gebeurt met het systeem worden er back-ups gemaakt. Hiermee kan het systeem razendsnel weer in de oorspronkelijke staat worden terug gebracht.
2
Inhoudsopgave 1 Inleiding
4
2 Technische details ontwerp 2.1 Domein administratie . . . . . . . . . . . . . 2.2 De webserver . . . . . . . . . . . . . . . . . . 2.3 FTP . . . . . . . . . . . . . . . . . . . . . . . 2.4 E-mail . . . . . . . . . . . . . . . . . . . . . . 2.5 Firewall . . . . . . . . . . . . . . . . . . . . . 2.5.1 Proxyserver . . . . . . . . . . . . . . . 2.5.2 Pakket filter . . . . . . . . . . . . . . . 2.6 Reservekopie¨en . . . . . . . . . . . . . . . . . 2.6.1 Back-upmedium . . . . . . . . . . . . 2.6.2 Back-upfrequentie . . . . . . . . . . . 2.6.3 Protocol . . . . . . . . . . . . . . . . . 2.7 Gebruikersaccounts . . . . . . . . . . . . . . . 2.8 Database . . . . . . . . . . . . . . . . . . . . 2.9 Besturingssystemen . . . . . . . . . . . . . . . 2.10 Hardware . . . . . . . . . . . . . . . . . . . . 2.10.1 Leverancierskeuze . . . . . . . . . . . 2.10.2 Gateway . . . . . . . . . . . . . . . . . 2.10.3 Webserver en accountbeheer . . . . . . 2.10.4 Domain controller en overige diensten
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . .
5 5 5 6 6 7 8 8 8 9 9 10 10 11 11 12 12 13 13 14
3 Samenvatting
15
A Verklarende woordenlijst
16
B Systeemoverzicht
18
Lijst van figuren 1 2
Het databaseschema . . . . . . . . . . . . . . . . . . . . . . . Impressie onderlinge verbondenheid systemen . . . . . . . . .
3
12 18
1
Inleiding
Naar aanleiding van het Call-for-Proposals document is er een specificatie analyse uitgevoerd. De uitkomst van deze analyse is vastgelegd in het ’Our Understanding of your Problem’ document. De specificatie analyse heeft een serie vraagstukken opgeleverd. Deze vraagstukken worden allen in dit document behandeld. Voor ieder vraagstuk worden de voor- en nadelen van de mogelijke alternatieven tegen elkaar afgewogen en een oplossing geboden. Na het doorlezen van dit document is men op de hoogte gebracht van de door Geentroniks gemaakte ontwerpkeuzes. Hiernaast is dit document een aan te raden naslagwerk voor iedereen binnen het Geentroniks team.
4
2
Technische details ontwerp
In dit hoofdstuk worden alle ontwerpbeslissingen besproken. Zo wordt er uitgelegd welke programma’s gebruikt worden om de school te benaderen via het internet en via een FTP-server. Ook wordt uitgelegd wat voor programma’s er worden gebruikt om de leerlingen en leraren te kunnen laten mailen en hoe hun accountgegevens worden bijgehouden.
2.1
Domein administratie
Door middel van domein administratie kan iedere gebruiker beschikken over zijn eigen gegevens. Een leerling kan bijvoorbeeld inloggen op een computer en daar een verslag opslaan. Wanneer hij even later inlogt op een andere computer, kan hij daar over hetzelfde verslag beschikken. Voor de domein administratie hebben wij voor Samba gekozen. Hoewel het systeem van Novell ongeveer hetzelfde doet, is het wel veel duurder dan Samba; Samba is zelfs gratis. Andere gratis domein administratie systemen zijn minder uitgewerkt en stabiel dan Samba. Met Samba is het mogelijk om aan iedere gebruiker eigen bevoegdheden en instellingen te geven. Wanneer iemand op een willekeurig systeem met zijn naam en wachtwoord inlogt, worden deze instellingen actief. Ook is het mogelijk om iedere gebruiker een eigen stukje schijfruimte toe te kennen. Hierop kunnen leerlingen bijvoorbeeld hun verslagen bewaren. Dit is ´e´en van de aangeboden optionele modules.
2.2
De webserver
Op de webserver staan de internetpagina’s van de school. Deze pagina’s kunnen door zowel leerlingen en studenten als wel door onbekenden worden bekeken. Maar niet alle informatie mag voor iedereen beschikbaar zijn. De webserver zal gebruik maken van Apache met PHP ondersteuning. Apache is snel, stabiel en veilig en is hiermee voor een UNIX server eigenlijk de enige realistische optie. Standaard zal de webserver gebruik maken van HTTP (HyperText Transfer Protocol). Omdat het echter mogelijk is, de met HTTP verzonden informatie te onderscheppen, zal er ook gebruik gemaakt worden van HTTPS (Secure HTTP). Gevoelige informatie zoals wachtwoorden en leerlinggegevens kunnen via HTTPS verzonden worden. HTTPS versleutelt de te verzenden gegevens met een 128bit encryptie, welke op het moment nog praktisch onkraakbaar is. Hierdoor wordt de informatie veilig verzonden. De toegangsrechten van de pagina’s op de webserver zullen beschermd worden met htaccess. Hiermee kan er per directory, of zelfs per bestand, worden vastgelegd wie er wel en geen toegang tot heeft. Op deze manier 5
kunnen gedeelten van de webserver afgesloten worden voor onbevoegden en bijvoorbeeld pagina’s alleen voor docenten of leerlingen toegankelijk gemaakt worden.
2.3
FTP
FTP (File Transfer Protocol) wordt gebruikt voor het versturen en ontvangen van bestanden over internet. In het nieuwe systeem van de school wordt ook een FTP-server opgenomen, waar alle gebruikers bestanden heen kunnen sturen en vanaf kunnen halen. Voor het opzetten van een dergelijke server zijn er diverse oplossingen te bedenken. Wij hebben gekozen voor het gratis programma ProFTPD. Dit pakket kent een aantal voordelen ten opzichte van andere pakketten. Een voordeel is dat dit pakket de gebruikersnamen en wachtwoorden van alle gebruikers uit een centrale database kan halen. Dit is erg handig, aangezien zo ook andere programma’s gebruik kunnen maken van deze gegevensbank. Op deze manier kan het beheer van gebruikersgegevens centraal gebeuren. Het andere voordeel is dat ProFTPD erg veilig is. Er is al lange tijd niet meer ingebroken op servers waar ProFTPD op ge¨ınstalleerd staat. Er komt ook een versleutelde variant van FTP op de server, om op een veilige manier bestanden te kunnen verzenden. Hier gebruiken wij een via de browser te benaderen programma voor, dat met behulp van versleutelde HTTP werkt. Op deze manier kan iedereen via de browser bestanden uploaden via een beveiligde lijn. Dit heeft als voordeel dat er niet aparte accounts aangemaakt hoeven te worden voor elke gebruiker. Dat kan namelijk niet via de centrale database.
2.4
E-mail
Via e-mail kan er heel handig gecommuniceerd worden via internet. Ook is het mogelijk op een eenvoudige manier bestanden, zoals verslagen en dergelijke, te versturen. Het plan is om elke scholier en elke docent een eigen e-mailadres van de school te geven. Op deze wijze kunnen zij makkelijk gebruik maken van deze functionaliteit. Voor het verwerken van de e-mail zijn er twee oplossingen mogelijk. Beide oplossingen zijn gebaseerd op een verschillend protocol, respectievelijk POP (Post Office Protocol) en IMAP (Internet Message Access Protocol). Deze protocollen verschillen op een aantal punten. Hoewel POP het meest gangbare protocol van de twee is, is er in dit geval toch gekozen voor IMAP. Er zijn een tweetal belangrijke argumenten aan te voeren die deze keuze ondersteunen. 6
Het eerste voordeel van IMAP is dat alle mail standaard op de server blijft staan. Op deze manier hebben leerlingen en docenten overal toegang tot dezelfde mail. Het risico dat ze mail die ze op school ophalen, thuis niet meer kunnen bekijken wordt op deze manier weggenomen. Bij het gebruik van POP wordt de mail wel automatisch verwijderd bij het ophalen. Deze functie is uit te schakelen, dit moet iedere gebruiker echter handmatig doen. Het tweede voordeel is dat IMAP de mogelijkheid kent om de mail op de server in mappen in te delen. Deze functionaliteit is erg handig in combinatie met het feit dat alle mail op de server blijft staan. De meeste mensen zullen deze mogelijkheid kennen uit hun eigen e-mail pakket waar ze alle e-mails op hun eigen harde schijf indelen in mappen. Met IMAP bestaat de mogelijkheid om overal vandaan toegang te krijgen tot deze ingedeelde mail. Het nadeel van IMAP is dat het meer schrijfruimte verbruikt. Dit komt natuurlijk doordat alle mail op de server achterblijft. Daarom krijgt iedereen maar een beperkte hoeveelheid ruimte voor e-mail. Na verloop van tijd zullen oude e-mails verwijderd moeten worden om binnen de gestelde limiet te blijven. Als programma voor de afhandeling van e-mail is gekozen voor Courier IMAP. Dit pakket ondersteunt het uitlezen van alle gebruikersgegevens vanuit een MySQL database. Dat is een belangrijke voorwaarde voor een makkelijk te onderhouden systeem. Het andere mogelijke pakket, UW-IMAP, ondersteunt dit ook wel, maar er dient toch voor elke gebruiker een apart Linux gebruikersaccount aangemaakt te worden. Wij hebben juist besloten dit te voorkomen, omdat het beveiligingsproblemen kan veroorzaken. Voor het verzenden is gekozen voor het pakket Postfix. Dit is een veilig en eenvoudig te gebruiken programma. Bovendien is het een klein en effici¨ent pakket. Dit in tegenstelling tot Sendmail, dat weliswaar erg veel kan maar daardoor ook erg ingewikkeld is. Om de mail op elke plaats met een internetverbinding te kunnen lezen, hebben wij gekozen om een webmail functie toe te voegen. Deze functie stelt de gebruiker in staat om via een webpagina haar mail te lezen. Als oplossing voor webmail hebben wij gekozen voor het veelgebruikte pakket IMP. Deze gratis software heeft een zeer goede betrouwbaarheid. Bovendien wordt het al gebruikt door diverse grote instellingen, waaronder bijvoorbeeld de Universiteit Twente.
2.5
Firewall
Een firewall is een programma dat het binnenkomend en uitgaand verkeer tussen het interne netwerk en het wereldwijde web controleert. Dit programma neemt dus de beveiliging van het netwerk voor zijn rekening. Er zijn twee soorten programma’s die gebruikt kunnen worden voor de beveiliging: een proxyserver en een pakket filter. 7
2.5.1
Proxyserver
Een proxyserver zorgt ervoor dat internetbestanden lokaal worden opgeslagen. Voor een volgende keer dat de pagina opgevraagd wordt, kan deze heel snel worden binnengehaald. Een bijkomend voordeel van proxyservers, is het feit dat het traceren van computers in het netwerk vrijwel onmogelijk is. Er kleven echter ook een aantal nadelen aan het systeem. Proxyservers vereisen dure en snelle hardware, veel harde schijfruimte en het is in dit geval overbodig omdat er een 100 MBit/s verbinding is. Ook moeten andere onderdelen van de beveiliging, zoals indringers buiten houden, door andere programma’s geregeld worden. Wij menen dus dat een proxyserver voor de door u gewenste toepassing niet een goede oplossing is. 2.5.2
Pakket filter
Een pakket filter kan wel de gehele beveiliging voor zijn rekening nemen. Dit programma analyseert elke datapakketje dat via de gateway naar een willekeurige bestemming gaat. Een veelgebruikt pakket is iptables, dat kan zorgen voor een aantal belangrijke punten: • Gezag: Websites met kindonvriendelijke inhoud kunnen ermee geblokkeerd worden. • Veiligheid: Kwaadwillende mensen kunnen buiten het netwerk gehouden worden. • Controle: Wanneer er vreemde dingen gebeuren vanaf computers binnen het netwerk, kan de oorzaak geanalyseerd worden en het probleem worden opgelost. Iptables is tegenwoordig het pakket met de beste prijs/functionaliteit verhouding. Tevens is dit voor Linux het enige serieuze alternatief. Verder kan iptables kan zorgen voor ’masquerading’ en NAT (Network Address Translation). Masquerading en NAT zorgen ervoor dat de clients niet door hebben dat ze niet direct aan het internet hangen. Dit heeft als belangrijk voordeel dat internet-afhankelijke toepassingen gemakkelijk geconfigureerd kunnen worden. Al deze functies hebben er toe geleid dat wij voor iptables hebben gekozen.
2.6
Reservekopie¨ en
Zoals bij elk geautomatiseerd systeem is het ten zeerste aanbevolen met regelmaat reservekopie¨en, oftewel back-ups, te maken van de gegevens die zijn opgeslagen in het systeem, zeker als het gaat om vitale informatie waarvan de school afhankelijk is. Om deze vitale informatie bescherming te bieden, is er in ons systeem rekening gehouden met het maken van back-ups. 8
2.6.1
Back-upmedium
Er zijn tegenwoordig 1001 media om back-ups op op te slaan, zoals beschrijfbare CD’s, diskettes en het is ook mogelijk om kopien van gegevens op een andere computer te plaatsen door middel van internet. In ons systeem hebben wij echter gekozen voor een oud medium: de tapestreamer. Waarom is de keuze gevallen op dit misschien toch wat verouderde medium? Hiervoor zijn verschillende redenen te bedenken, waaronder betrouwbaarheid, opslaghoeveelheid en prijs. Omdat de tapestreamer al een tijdje bestaat is de betrouwbaarheid ondertussen wel bewezen in de praktijk. Het komt maar weinig voor dat op het ongelukkige moment dat de back-ups nodig zijn, er na uren zonder succes proberen gefrustreerd het medium in de hoek wordt gesmeten. Andere media hebben nog maar te bewijzen dat ze aan deze betrouwbaarheid kunnen tippen of, erger nog, hebben al aangetoond onbetrouwbaar te zijn. De tapestreamer is dus wat betrouwbaarheid betreft een solide keuze. Verder is de hoeveelheid gegevens die op een tape kan worden opgeslagen nog altijd erg groot, zeker in vergelijking met bijvoorbeeld diskettes of zelfs vergeleken met beschrijfbare CD’s. Dit drukt de hoeveelheid benodigde tapes aanzienlijk en daarmee ook de kosten. De kosten zijn in ieder geval al laag, omdat dit back-upmedium veel gebruikt wordt, wat de prijzen in het verleden erg heeft doen dalen. Het grootste nadeel van een tapestreamer, is dat het een erg traag medium is. Dit nadeel weegt echter niet op tegen de voordelen, vooral omdat snelheid bij het maken en terugzetten van back-ups niet zo’n issue is. En wat heb je aan snelheid, als het niet eens mogelijk is de back-up foutloos uit te lezen? 2.6.2
Back-upfrequentie
Om de veiligheid van de gegevens te waarborgen is het belangrijk dat er met regelmaat back-ups worden gemaakt. Aan de andere kant vergt het maken van back-ups toch een bepaalde hoeveelheid tijd en het zou fijn zijn als dat zo weinig mogelijk zou kunnen zijn. In het systeem zullen gegevens opgeslagen zijn die vaak veranderen, maar daarnaast zal er ook informatie in staan, die bijna nooit zal veranderen. Het lijkt dan ook een beetje overdreven om elke dag reservekopien te maken van deze laatste categorie. Het door ons ontworpen back-upsysteem speelt hierop in. Het back-upsysteem zal in principe dagelijks back-ups maken. Om niet alle gegevens onnodig op te slaan, zullen steeds alleen de gewijzigde gegevens worden opgeslagen. Zo wordt niet meer opgeslagen dan strikt noodzakelijk is: de ongewijzigde gegevens zijn immers op een eerdere tape te vinden. Dit 9
zal uiteindelijk uitmonden in een situatie die niet bruikbaar is: als er na een jaar een back-up teruggezet zou moeten worden, dan zijn daarvoor 365 verschillende tapes nodig. Om dit probleem tegen te gaan wordt elke week een complete back-up gemaakt. Hierdoor zijn er maximaal zeven back-ups nodig om het systeem te herstellen. Het kan zijn dat er een probleem is ontstaan, dat pas na een paar weken aan het licht komt. Daarom is het verstandiger om meerdere volledige backups te bewaren. Hierbij is het niet nodig om de incrementele backups te bewaren. Het is hierbij verstandig om vijf volledige backups te bewaren. Wanneer de zesde backup gemaakt moet worden, wordt daarvoor de eerste tape gebruikt. Met deze oplossing hebben wij gedacht zo veel mogelijk het beste van deze twee uitersten te combineren. 2.6.3
Protocol
Voor het maken van back-ups wordt gebruik gemaakt van het TAR protocol: een bewezen betrouwbaar protocol dat bekend is op bijna alle systemen, zodat het ook mogelijk is om op andere systemen back-ups in te lezen, mocht dat nodig zijn.
2.7
Gebruikersaccounts
Sommige onderdelen van het systeem moeten alleen toegankelijk zijn voor mensen die hiervoor de rechten hebben. Een duidelijk voorbeeld is e-mail: deze mag alleen gelezen worden door mensen aan wie de e-mail is gestuurd. Zo zijn er nog meer modules die beschermd moeten worden tegen mensen die er niets te zoeken hebben. In principe is het mogelijk dat elke module apart zijn gebruikers en hun rechten bijhoudt. Dit is om twee redenen niet aan te raden: het is niet gebruikersvriendelijk, omdat gebruikers dan voor elke module apart een wachtwoord moeten onthouden of veel moeite moeten doen om het wachtwoord overal hetzelfde te krijgen. Verder wordt er op deze manier veel gegevens dubbel opgeslagen, wat niet effici¨ent is. Om dit probleem te voorkomen hebben wij een alternatief systeem ontwikkeld waarin alle gebruikersgegevens centraal worden bewaard. In het systeem zal een aparte module worden opgenomen waarin in een database alle gebruikers, hun wachtwoord en hun rechten worden opgeslagen. Vervolgens kunnen andere modules, zoals de e-mailserver, gebruik maken van deze module om gebruikers te verifi¨eren. Het wachtwoord zal gecodeerd worden opgeslagen. Op deze manier blijft de veiligheid gewaarborgd, mede omdat alleen andere modules toegang krijgen tot deze module; er is geen rechtstreeks contact met de buitenwereld mogelijk. Het gebruikersbeheer wordt hierdoor ook veel eenvoudiger. Met een webomgeving, die alleen toegankelijk is voor mensen met de rechten hier10
toe, kunnen er eenvoudig gebruikers worden aangemaakt, verwijderd of gewijzigd. Verder kunnen alle gebruikers hun wachtwoord wijzigen op deze website, nadat zij hun oude wachtwoord hebben laten verifi¨eren door deze module. Het wachtwoord zal dan direct op alle systemen zijn gewijzigd in het door hen gewenste nieuwe wachtwoord.
2.8
Database
Op twee centrale servers komt de database te draaien. De database zal op beide servers volkomen gelijk zijn. Het grote voordeel van een dergelijk redundant systeem is dat op het moment dat er een van de beide systemen uitvalt de database nog steeds bereikbaar is. Er zijn veel systemen mogelijk hiervoor. MySQL is een relatief eenvoudige uitvoering van een databasesysteem. Het heeft een groot voordeel ten opzichte van de uitgebreidere uitvoeringen, namelijk dat de belasting voor de server waarop het draait aanzienlijk minder is dan andere databases. Dit is vooral terug te vinden in de gebruikte processortijd. Het feit dat MySQL niet zo heel erg uitgebreid is ten opzichte van de concurrentie is geen bezwaar om het niet te gebruiken. Het gebruik dat de school zal hebben van de database is relatief beperkt, er hoeven namelijk alleen accountgegevens in. Een mogelijke uitbreiding is de cijferdatabase.De functionaliteit die er in zit is dan ook groot genoeg voor het gebruik wat er van gemaakt wordt. Uitbreidingen in de toekomst zijn ook geen enkel probleem. Figuur 1 geeft precies aan op welke wijze alle gegevens opgeslagen worden. Uiteraard worden ook alle onderlinge relaties duidelijk.
2.9
Besturingssystemen
De keuze van besturingsystemen voor de werk-pc’s is vrij eenvoudig te maken. Gezien het feit dat bijna elke Nederlandse instelling gebruikt maakt van de besturingssystemen van Microsoft, lijkt het ons verstandig dit vanwege de goede compatibiliteit ook te doen. Bovenstaande is uiteraard wel een erg gemakkelijk argument om voor Microsoft te kiezen. Echter zijn er wel degelijk meerdere motieven om hiervoor te kiezen. Zo is het gebruik van deze besturingssystemen uitermate simpel, zodat de leerlingen en docenten zich hoofdzakelijk bezig kunnen houden met studiezaken, zonder zich druk te hoeven maken over allerlei technische bijkomstigheden. Verder is er voor Microsoft een breed scala aan toepassingen verkrijgbaar. Het is zelfs zo dat bijna elke toepassing die interessant zou kunnen zijn voor deze school, geschikt is voor Microsoft. 11
Figuur 1: Het databaseschema Er rest ons nu alleen nog de keuze over de te gebruiken versie. Er zijn twee mogelijkheden te benoemen die interessant kunnen zijn, namelijk Windows 2000 en Windows XP. Onze voorkeur gaat uit naar de laatste om de volgende reden. Windows 2000 is alweer een tijdje op de markt, zelfs zolang dat Microsoft heeft besloten geen support meer te leveren op dit product. Dit houdt hoofdzakelijk in dat er geen nieuwe updates en bugfixes meer komen voor Windows 2000. Mochten er dus grote problemen optreden, dan kan Microsoft geen ondersteuning meer leveren. Windows XP is een stuk jonger en heeft deze ondersteuning nog wel degelijk. Met dit systeem zal verreweg het langst gewerkt kunnen worden.
2.10
Hardware
Alle bovenstaande diensten zijn te draaien op een drietal verschillende servers. Wij hebben als leverancier gekozen voor Dell. In dit hoofdstuk wordt beschreven hoe de verschillende systemen er hardwarematig uit gaan zien.
2.10.1
Leverancierskeuze
Bij de keuze voor het merk van alle apparatuur hebben wij ons beperkt tot de merken Compaq, HP en Dell. Deze drie merken beheersen de markt. 12
Hierdoor hebben we zekerheid dat er goede apparatuur geleverd wordt. Bovendien bieden deze merken aantoonbaar goede service. Compaq viel als eerste af omdat dit merk veel te veel geld vraagt voor de producten die ze bieden. Bij beide andere merken liggen de prijzen lager bij een vergelijkbare kwaliteit en vergelijkbaar serviceniveau. HP biedt erg goede kwaliteit en service, maar is nog steeds duurder dan Dell. Dit laatste merk heeft duidelijk de beste verhouding tussen prijs en kwaliteit. Vandaar dat wij voor Dell gekozen hebben als leverancier voor alle hardware. Voor de realisering van deze diensten hebben wij gekozen voor drie verschillende systemen, waarop alle diensten zullen gaan draaien. Een overzicht van deze drie systemen volgt nu, waarbij er ter verduidelijking nog een figuur met de verschillende systemen is bijgevoegd. Deze is te vinden in bijlage B: Systeemoverzicht. 2.10.2
Gateway
Er zal ´e´en systeem zijn dat als zogenaamde gateway fungeert. Dit is de enige computer die verbonden is met internet. Hierdoor loopt alle informatie tussen het internet en het netwerk. Daarom heeft deze een redelijke processor nodig. Het systeem hoeft echter niet overdreven snel te zijn. Vandaar dat wij de volgende specificatie in gedachten hebben. • Intel Celeron 1,8 GHz processor • 256 MB ECC intern geheugen • 36 GB SCSI harde schijf Alle systemen krijgen, zoals dit systeem, een SCSI harde schijf. Deze harde schijven zijn speciaal ontworpen om altijd aan te staan en veel data te verwerken. Bijkomend voordeel is dat ze zeer snel zijn. Deze gateway-pc heeft een harde schijf van redelijke omvang. Mocht dit gewenst zijn, kan op deze pc nog een extra dienst draaien. Ook zou al het internet-verkeer in speciale logbestanden bijgehouden kunnen worden. 2.10.3
Webserver en accountbeheer
Het tweede systeem zal vooral dienst doen als server voor de internetpagina’s van de school. Bovendien zullen daar alle login-gegevens van iedereen die het netwerk gaat gebruiken opgeslagen staan. Omdat er bij het opvragen van deze gegevens geen vertraging dient te ontstaan, zal een redelijk snelle processor ook hier vereist zijn. Voor de login-gegevens en de website zal een redelijk grote harde schijf voldoende zijn. Zodoende zijn wij gekomen tot de volgende specificatie. 13
• Intel Pentium 4 2,4 GHz processor • 512 MB ECC intern geheugen • 36 GB SCSI harde schijf 2.10.4
Domain controller en overige diensten
Op het laatste systeem draait onder andere de domain controller. Mocht de school dit willen, dan kan elke leerling op deze pc een stukje eigen ruimte krijgen. Dit zal ook gebruikt worden voor mail. Elke leerling zou dan 20-25 MB eigen schijfruimte krijgen. Mede daarom heeft deze computer een grote harde schijf nodig. Bovendien draaien op dit systeem het grootste gedeelte van alle diensten die benodigd zijn in het netwerk van de school. Vandaar dat wij hebben gekozen voor de volgende specificatie, met een zwaardere processor en extra geheugen. • Intel Pentium 4 2,4 GHz processor • 1 GB ECC intern geheugen • 73 GB SCSI harde schijf
14
3
Samenvatting
In dit verslag staan alle ontwerpkeuze’s die gemaakt zijn om tot een goed eindresultaat te komen. Hier volgt een kleine samenvatting van de te gebruiken technieken. Er komt een Samba domaincontroller, deze is goedkoop en stabiel. De webserver zal een Apache zijn vanwege de snelheid, stabiliteit en veiligheid. Voor FTP hebben we een gratis programma uitgekozen, namelijk ProFTPD. Dit is, ondanks het feit dat het gratis is, een veilige oplossing met de mogelijkheid om accountgegevens uit een database te halen. Emailondersteuning wordt ingebouwd door middel van IMAP. Dit type mail blijft op de server staan, zodat hij overal uitgelezen kan worden. Verder biedt dit systeem een uitgebreide mogelijkheid tot structurering door middel van mappen. De beveiliging wordt verzorgt door iptables. Dit systeem controleert elk verzonden pakketje en filtert de ongewenste. Een combinatie van masquerading en NAT zorgen voor een vloeiend verloop. Het maken van reservekopie¨en zal gebeuren op een tapestreamer. Dit ietwat verouderde medium zorgt voor een goede betrouwbaarheid, een grote opslagcapaciteit en een lage prijs. Van veranderingen worden dagelijks backups gemaakt, elke week wordt er ´e´en keer een volledige reservekopie gemaakt. Er worden maximaal vijf volledige reservekopie¨en bewaard. Dit alles gebeurt met het TAR-protocol. Alle accountgegevens worden centraal bijgehouden in een MySQL-database. Dit is een simpele, snelle database, welke uitgebreid genoeg is om de school te kunnen dienen. Op alle werkstations zal Windows XP worden ge¨ınstalleerd. Dit Microsoftproduct is zeer compatibel en wordt nog steeds ondersteund.
15
A
Verklarende woordenlijst
Apache Apache is een webserver: een programma dat er voor zorgt dat webpagina’s kunnen worden opgestuurd naar computers die ze hebben opgevraagd. Database Een programma dat verschillende gegevens in een logische structuur kan opslaan. Op een later moment kunnen deze gegevens worden opgevraagd, gewijzigd of verwijderd. Domaincontroller Met een domaincontroller kan een gebruiker inloggen en vervolgens zijn of haar persoonlijke instellingen gebruiken. Domein administratie Zie domaincontroller. Firewall Een firewall is een verzameling van hard- en softwaremiddelen voor het leggen van restricties tussen het beveiligde netwerk en het internet. FTP (File Transfer Protocol) FTP is een protocol, dat er voor zorgt dat gebruikers bestanden over een netwerk kunnen sturen naar een server. Ook het ontvangen van bestanden is mogelijk met dit protocol. Gateway Een gateway verbindt verschillende netwerken met elkaar en zorgt ervoor dat er communicatie mogelijk is tussen die twee netwerken. IMAP (Internet Message Access Protocol) IMAP staat voor Internet Messaging Access Protocol en is een methode voor het verkrijgen van toegang tot e-mail die wordt bewaard op een server. Met IMAP is het mogelijk e-mail te bewerken via een locale computer zonder dat een mailbestand daadwerkelijk naar de locale computer verzonden hoeft te worden. Iptables Een pakket filter; analyseert elk datapakketje dat via de gateway naar een willekeurige bestemming gaat en bepaalt of dit pakketje doorgestuurd mag worden. Masquerading Aangezien er maar ´e´en computer verbinding met het internet zal hebben, moet deze computer de verbinding voor de rest van het netwerk regelen. Op deze manier verbergt de computer als het ware dat er nog meer computers van de verbinding gebruik maken. MySQL Een populaire, kwalitatief goede en gratis database met voldoende mogelijkheden voor het systeem. NAT (Network Address Translation) NAT is een techniek dat het mogelijk maakt om meerdere computers gebruik te laten maken van ´e´en internetverbinding. Dit gebeurt in dit geval met een gateway. 16
POP (Post Office Protocol) POP is een protocol waarmee mail wordt ontvangen en bewaard op een server. De gebruiker kan periodiek inloggen op de server, mail controleren en downloaden. Nadat mail is opgehaald van de server, wordt het in principe van de server verwijderd. ProFTPD ProFTPD is een veilige en goed te configureren FTP-server. Proxyserver Een proxyserver is een programma dat het surfen op het internet kan versnellen. Samba Samba is een verzameling van programma’s, voor een Unix-systeem, waarmee verschillende besturingssystemen bestanden kunnen uitwisselen. In dit geval gaat het om de besturingssystemen Linux en Windows. Tapestreamer Een bewezen betrouwbaar backup-medium, waarop reservekopie¨en op een soort van cassette-bandje kunnen worden opgeslagen. TAR-protocol TAR is een betrouwbaar systeem om bestanden op te kunnen slaan en uit te kunnen pakken. Het archief kan op een harde schijf gemaakt worden, maar het kan ook naar een tapestreamer worden weggeschreven.
17
B
Systeemoverzicht
Figuur 2: Impressie onderlinge verbondenheid systemen
18