1. Overzicht
Je moet de volgende zaken opleveren:
-
Een repository server
-
Een repository client
2. De instellingen van VMWare voor je router
Je router is in feite het gateway project, wat je eerder gebouwd hebt. Gebruik deze router!
Stel op de LAN adapter geen DHCP in. Dus: deze NIC mag geen adressen uitdelen. .NIC’s (Netwerkkaarten in VMWare)
Connectie |
Type |
Ip |
WAN |
NAT |
Via DHCP VMWare |
LAN |
LAN Segment ("repo") of Host-only |
192.168.199.1 |
3. Debian Linux werkstation maken
Maak ze volgens deze procedure:
1. Maak een snel Linux werkstation
2. Maak direct een clone
van deze machine, zodat je niet steeds opnieuw de installatiestappen hoeft te doen.
4. Debian Linux werkstation configuratie
4.1. Netwerkinstellingen
-
Kloon je nieuwe VMWare Debian Linux werkstation (=VDLW)
-
Open een Terminal. (R.klik ergens op het bureaublad en kies in het menu "Terminal")
-
Controleer eerst je NIC (Netwerk adapter) naam met het commando
ip a
. Eentje heeft de standaard naamlo
en de andere heet waarschijnlijkens33
ofenp0s3
-
Tik:
nano /etc/network/interfaces
-
Neem de gegevens hieronder over en plak ze onder de
lo
declaraties -
Sluit het bestand met CTRL+X en daarna Y
-
Herstart je netwerk met het cmd
systemctl restart networking
auto ens33 iface ens33 inet static address 192.168.199.2 netmask 255.255.255.0 network 192.168.199.0 broadcast 192.168.199.255 gateway 192.168.199.1
4.2. Testen connectiviteit
We gaan kijken of je met je nieuwe machine connectiviteit hebt
-
Eerst naar je gateway pingen:
ping 192.168.199.1
-
Wanneer de test bij 1. slaagt, gaan we kijken of je buiten je LAN kunt pingen:
ping 8.8.8.8
-
Als ook deze test slaagt, weet je dat er connectiviteit met internet is.
-
Kijk nu of je DNS van PFSense goed werkt. dit kun je doen door:
ping g.cn
-
Werkt pingen op naam niet, dan kun je in het bestand
/etc/resolv.conf
, als extra nameserver de cloudflare of google resolver toevoegen.
4.2.1. Resolver in /etc/resolv.conf aanpassen
Tik nano /etc/resolv.conf
Voeg onder de laatste regel van het bestand het volgende toe:
nameserver 1.1.1.1 of nameserver 8.8.8.8
4.3. Hostname instellen
-
Open je terminal weer als
root
gebruiker -
Tik:
hostnamectl set-hostname repo
-
Sluit de terminal en open hem weer. De hostname is nu aangepast.
5. Repository server
5.1. Filmpje repo-server
5.2. Wat is het?
Zoals je waarschijnlijk wel weet, geef je met het commando apt update
de opdracht om updates te zoeken voor de pakketten, die op je systeem draaien.
Elke keer wanneer je dit commando uitvoert, moet je het internet op. Voor een paar computers is dat niet zo’n probleem, maar wanneer honderden computers dit tegelijk uitvoeren, veroorzaakt het heel veel netwerkverkeer. Daardoor kunnen de prestaties van je netwerk en je systemen verminderen.
Een repository server zorgt ervoor, dat er een server steeds updates ophaalt. Vervolgens kunnen aangesloten clients, de updates van deze server halen. Dat gaat niet alleen erg snel, maar scheelt ook heel veer belasting voor het netwerk.
5.3. Installeren van apt-cacher-ng en de webserver apache2
-
Open je terminal
-
Controleer of je
root
bent -
Tik eerst: apt update
-
Voer eventueel upgrades uit met
apt upgrade
-
Als dat klaar is tik je:
apt install apt-cacher-ng apache2
-
Tik op
Enter
wanneer je de[Y\n]
prompt ziet -
Zorg dat apache2 en apt-cacher-ng bij het opstarten direct draaien:
systemctl enable apt-cacher-ng apache2
-
Open een webbrowser en tik in:
http://localhost:3142
. Als het goed is zie je nu de startpagina van apt cacher. -
Open vanaf een client, die in hetzelfde subnet zit ook een webbrowser en tik:
http://192.168.199.2:3142
.
5.4. Server configureren
5.4.1. Proxy instellen
Bij elke client, die je contact wil laten maken met deze server, moet je het volgende configureren: |
Open nano /etc/apt/apt.conf.d/02proxy
Voeg de volgende regel aan dit bestand toe:
Acquire::http::Proxy "http://192.168.199.2:3142";
5.5. Testen
Wanneer je nu clients aansluit op deze machine, kunje statistieken van de apt-cacher bekijken door in de browser het volgende te tikken:
http://192.168.199.2:3142/acng-report.html
In de onderstaande afbeelding kun je zien dat er minder data gedownload werd, dan uitgedeeld werd aan de clients. Een bewijs dat de server zijn werk doet!
5.6. Nodejs en npm
Met nodejs en npm kun je snelheid van het cachen van de pakketen enorm opschroeven.
Installeer
apt install npm nodejs
6. Overige configuratie van apt-cacher-ng:
De directory waarin de configs van apt-cacher-ng staan, is /etc/apt-cacher-ng/
Belangrijke configs zijn:
-
acng.conf
-
backends_debian
in dit geval.
Bekijk de inhoud van deze map:
ls /etc/apt-cacher-ng/
Open het `backends-debian bestand als volgt:
nano /etc/apt-cacher-ng/backends_debian
In dit bestand kun je de remote repository servers aanpassen. Je kunt nog meer repository servers toevoegen of verwijderen.
Op dit moment gebuiken we http://ftp.nl.debian.org/debian
als repo-server, maar je kunt ook nog de officiele Amerikaanse repo-server toevoegen, http://ftp.debian.org/debian
.
In de regel kun je hier het beste servers selecteren, die dicht bij de locatie van jouw repo-server staan.
6.1. acng.conf bewerken
nano /etc/apt-cacher-ng/acng.conf
Het is een enorm lang bestand. De belangrijkste optie is CacheDir
. Dit is de locatie waar de cache opgeslagen wordt.
Mocht je de locatie van de CaheDir
directory willen wijzigen, vergeet dan niet de juiste machtigingen in die directory toe te passen:
chown -Rfv apt-cacher-ng:apt-cacher-ng /my/new/cachedirectory
systemctl restart apt-cacher-ng