1833 |
\end{verbatim} |
\end{verbatim} |
1834 |
doen, waardoor elke vorm van firewalling en masquerading uitgeschakeld wordt. |
doen, waardoor elke vorm van firewalling en masquerading uitgeschakeld wordt. |
1835 |
|
|
1836 |
|
Een voorbeeld: we blokkeren alle WWW-trafiek van ons lokaal netwerkje dat op 10.1.1.x |
1837 |
|
zit naar buiten: |
1838 |
|
\begin{verbatim} |
1839 |
|
ipchains -A input -j REJECT -p tcp -s 10.1.1.0/24 -d 0.0.0.0/0 80 |
1840 |
|
\end{verbatim} |
1841 |
|
We weigeren hier binnenkomende (\texttt{input}) pakketten die komen van |
1842 |
|
\texttt{10.1.1.0/24} en die als doel gelijk welk adres hebben (\texttt{0.0.0.0/0}) maar |
1843 |
|
gericht zijn naar poort \texttt{80}, hetgeen de poort is die voor WWW-trafiek gebruikt wordt. |
1844 |
|
We hadden ook een poortnummer kunnen opgeven bij het bronadres (we schreven enkel |
1845 |
|
\texttt{10.1.1.0/24}, zonder poortnummer erachter); in dit geval zou dat niet zo verstandig |
1846 |
|
zijn omdat poortnummers van de webbrowser geen vast nummer gebruiken. |
1847 |
|
|
1848 |
|
Met \commando{ipchains -L} krijgen we een lijst van alle instellingen die we gemaakt hebben. |
1849 |
|
\begin{verbatim} |
1850 |
|
Chain input (policy ACCEPT): |
1851 |
|
target prot opt source destination ports |
1852 |
|
REJECT tcp ------ 10.1.1.0/24 anywhere www -> any |
1853 |
|
Chain forward (policy DENY): |
1854 |
|
target prot opt source destination ports |
1855 |
|
MASQ all ------ 10.1.1.0/24 anywhere n/a |
1856 |
|
Chain output (policy ACCEPT): |
1857 |
|
\end{verbatim} |
1858 |
|
We zien dat we binnenkomende pakketten filteren op WWW-pakketten, die we weigeren |
1859 |
|
(\texttt{REJECT}), we doen aan \texttt{MASQ}erading, en bij het verlaten van |
1860 |
|
de computer (\texttt{output}) filteren we niets speciaals. |
1861 |
|
|
1862 |
\subsection{Masquerading gateway onder Linux 2.4.x} |
\subsection{Masquerading gateway onder Linux 2.4.x} |
1863 |
Voor wie de 2.4 kernel zou ge\"\i nstalleerd hebben, is alles hetzelfde maar net iets anders: |
Voor wie de 2.4 kernel zou ge\"\i nstalleerd hebben, is alles hetzelfde maar net iets anders: |
1864 |
het \commando{ipchains} is hier vervangen door \commando{iptables}. |
het \commando{ipchains} is hier vervangen door \commando{iptables}. |
2585 |
\end{figure} |
\end{figure} |
2586 |
|
|
2587 |
\chapter{Elementair systeembeheer} |
\chapter{Elementair systeembeheer} |
2588 |
|
Als superuser hebben we de volledige macht over het systeem: |
2589 |
|
de superuser kan elk bestand lezen en schrijven, wat een gewone gebruiker ook mag |
2590 |
|
proberen. Het spreekt vanzelf dat we als systeembeheerder zo weinig mogelijk |
2591 |
|
onze toevlucht nemen tot dergelijke maatregelen: iemands anders mail meelezen |
2592 |
|
is technisch perfect mogelijk maar is gewoon \textit{not done}. |
2593 |
|
Dit in het achterhoofd houdend, volgen hier enkele handige commando's om |
2594 |
|
ons systeem onder controle te houden. |
2595 |
Uiteraard kunnen we binnen het bestek van deze cursus onmogelijk een complete |
Uiteraard kunnen we binnen het bestek van deze cursus onmogelijk een complete |
2596 |
cursus systeembeheer aanbieden. Wat volgt dient dan ook eerder als het tipje |
cursus systeembeheer aanbieden. Wat volgt dient dan ook eerder als het tipje |
2597 |
van de sluier te worden beschouwd. |
van de sluier te worden beschouwd. |
2649 |
bepaalde gebeurtenis (een gebruiker die op een toets drukt, een bepaalde tijd die verstreken is) |
bepaalde gebeurtenis (een gebruiker die op een toets drukt, een bepaalde tijd die verstreken is) |
2650 |
en het besturingssysteem regelt alles zo dat zulke programma's geen rekentijd verbruiken. |
en het besturingssysteem regelt alles zo dat zulke programma's geen rekentijd verbruiken. |
2651 |
|
|
2652 |
|
Er werden drie load averages getoond, die de gemiddelde belasting aangeven |
2653 |
|
gedurende de laatste 1, 5 en 15 minuten. |
2654 |
|
|
2655 |
Als de load average hoog is, dan willen we natuurlijk wel weten welke programma's er |
Als de load average hoog is, dan willen we natuurlijk wel weten welke programma's er |
2656 |
aan het draaien zijn. Met \commando{top} krijgen we een interactief overzicht van |
aan het draaien zijn. Met \commando{top} krijgen we een interactief overzicht van |
2657 |
alle draaiende programma's (figuur \label{topfiguur}). |
alle draaiende programma's (figuur~\ref{topfiguur}). |
2658 |
De programma's die het meeste rekentijd aan het verbruiken zijn staan bovenaan. |
De programma's die het meeste rekentijd aan het verbruiken zijn staan bovenaan. |
2659 |
\begin{figure}[!h] |
\begin{figure}[!h] |
2660 |
\begin{center} |
\begin{center} |
2661 |
\includegraphics[width=0.8\textwidth]{server/topfiguur.png} |
\includegraphics[width=0.8\textwidth]{server/top.png} |
2662 |
\caption{\commando{top} in actie} |
\caption{\commando{top} in actie} |
2663 |
\label{topfiguur} |
\label{topfiguur} |
2664 |
\end{center} |
\end{center} |
2745 |
verwijdert alle bestanden in de \commando{/tmp} directory die ouder zijn dan 7 dagen. |
verwijdert alle bestanden in de \commando{/tmp} directory die ouder zijn dan 7 dagen. |
2746 |
Handig om in een cron job te stoppen dus! |
Handig om in een cron job te stoppen dus! |
2747 |
|
|
2748 |
|
Willen we weten wie voor het ogenblik een bepaald bestand gebruikt, dan kunnen |
2749 |
|
we \commando{lsof} gebruiken. Dit geeft een lange lijst; |
2750 |
|
\commando{grep} is hier ook handig om de grote hoeveelheid uitvoer wat in |
2751 |
|
te snoeien, zoals in \commando{lsof $|$ grep /etc/dhcpd.conf}. |
2752 |
|
|
2753 |
Met \commando{vmstat} krijgen we informatie over schijven en processor te zien: |
Met \commando{vmstat} krijgen we informatie over schijven en processor te zien: |
2754 |
\begin{verbatim} |
{\small\begin{verbatim} |
2755 |
procs memory swap io system cpu |
procs memory swap io system cpu |
2756 |
r b w swpd free buff cache si so bi bo in cs us sy id |
r b w swpd free buff cache si so bi bo in cs us sy id |
2757 |
0 0 0 3004 564 408 6140 0 0 0 0 102 3 0 0 100 |
0 0 0 3004 564 408 6140 0 0 0 0 102 3 0 0 100 |
2758 |
\end{verbatim} |
\end{verbatim} |
2759 |
|
} |
2760 |
We zien dat er geen enkel proces draait (\texttt{r}unning); ze slapen dus allemaal |
We zien dat er geen enkel proces draait (\texttt{r}unning); ze slapen dus allemaal |
2761 |
(ze wachten tot er op een toets gedrukt wordt of iets dergelijks). |
(ze wachten tot er op een toets gedrukt wordt of iets dergelijks). |
2762 |
|
|
2788 |
iets interessanter is \file{/var/log/syslog} waar vaak wat meer in |
iets interessanter is \file{/var/log/syslog} waar vaak wat meer in |
2789 |
staat (de DHCP daemon bijvoorbeeld schrijft er telkens een regel bij als hij aan |
staat (de DHCP daemon bijvoorbeeld schrijft er telkens een regel bij als hij aan |
2790 |
een computer netwerkinstellingen heeft uitgedeeld). |
een computer netwerkinstellingen heeft uitgedeeld). |
2791 |
|
Interessante toetsen binnen \commando{less}: |
2792 |
|
\begin{itemize} |
2793 |
|
\item \textit{cursor omhoog/omlaag} om regel per regel te bewegen |
2794 |
|
\item \textit{PgUp/PgDn} om scherm per scherm te bewegen; ook met \textit{spatie} kan je een scherm omlaag |
2795 |
|
\item \textit{/} en \textit{?} om voorwaarts en achterwaarts te zoeken |
2796 |
|
\item $<$ en $>$ om naar het begin of einde van het bestand te gaan. |
2797 |
|
\end{itemize} |
2798 |
|
|
2799 |
Met \commando{tail /var/log/messages} krijg je enkel de tien laatste (en dus recentste) |
Met \commando{tail /var/log/messages} krijg je enkel de tien laatste (en dus recentste) |
2800 |
regels te zien. |
regels te zien. |
2801 |
Soms is het handig een logbestand constant in de gaten te houden; dat kan |
Soms is het handig een logbestand constant in de gaten te houden; dat kan |
2803 |
laatste regels te zien, en telkens als er iets wordt bijgeschreven in het |
laatste regels te zien, en telkens als er iets wordt bijgeschreven in het |
2804 |
bestand in kwestie, zal dat ook op het scherm verschijnen. |
bestand in kwestie, zal dat ook op het scherm verschijnen. |
2805 |
|
|
2806 |
|
Een ander interessant commando is \commando{grep}: het zoekt naar een reeks letters |
2807 |
|
binnen een of meerdere bestanden. Zo geeft \commando{grep cups /var/log/messages} |
2808 |
|
als resultaat iets in de trant van |
2809 |
|
{\small\begin{verbatim} |
2810 |
|
Mar 9 23:20:23 schroot cups-lpd[5820]: Connection from unknown (10.1.1.101) |
2811 |
|
Mar 9 23:20:23 schroot cups-lpd[5820]: Receive print job for laserjet |
2812 |
|
Mar 9 23:20:30 schroot cups-lpd[5820]: Print file - job ID = 5 |
2813 |
|
Mar 9 23:20:30 schroot cups-lpd[5820]: Closing connection |
2814 |
|
Mar 9 23:21:41 schroot cups-lpd[5828]: Connection from unknown (10.1.1.101) |
2815 |
|
Mar 9 23:21:41 schroot cups-lpd[5828]: Send queue state (short) for laserjet |
2816 |
|
Mar 9 23:21:43 schroot cups-lpd[5828]: Closing connection |
2817 |
|
\end{verbatim} |
2818 |
|
} |
2819 |
|
Met andere woorden: alle regels van het bestand \file{/var/log/messages} waar het woord |
2820 |
|
\commando{cups} in voorkomt, worden getoond. Je kan ook \commando{grep -i cups /var/log/messages} |
2821 |
|
doen, waardoor \commando{grep} hoofd- en kleine letters gelijkwaardig behandelt |
2822 |
|
(zodat ook lijnen waar ``CUPS'' of ``Cups'' in voorkomt getoond worden). |
2823 |
|
Je kan zoals gezegd ook meerdere bestanden doorzoeken: \commando{grep -i cups /var/log/*} |
2824 |
|
doorzoekt alle bestanden binnen \file{/var/log} (maar niet binnen subdirectories). |
2825 |
|
Met \commando{grep -i cups /var/log/* 2$>$/dev/null} tenslotte |
2826 |
|
leid je vervelende ``grep: /var/log/news: Is a directory'' foutboodschappen af naar |
2827 |
|
\file{/dev/null}. |
2828 |
|
|
2829 |
|
\section{Netwerk in de gaten houden} |
2830 |
|
Met \commando{netstat} krijg je een overzicht van alle openstaande verbindingen. |
2831 |
|
Het interessantste is meestal het onderdeel ``Active Internet connections''; |
2832 |
|
``Active UNIX domain sockets'' is wat cryptischer. Een typisch resultaat |
2833 |
|
zou er zo uit kunnen zien: |
2834 |
|
{\small\begin{verbatim} |
2835 |
|
Active Internet connections (w/o servers) |
2836 |
|
Proto Recv-Q Send-Q Local Address Foreign Address State |
2837 |
|
tcp 0 0 157.193.53.222:1028 157.193.41.38:www TIME_WAIT |
2838 |
|
tcp 0 0 157.193.53.222:ssh ergens.be:43981 ESTABLISHED |
2839 |
|
tcp 0 0 157.193.53.222:ssh ergens.be:43614 ESTABLISHED |
2840 |
|
tcp 0 0 157.193.53.222:ssh ergens.be:58616 ESTABLISHED |
2841 |
|
tcp 0 0 157.193.53.222:ssh ergensanders.be:58537 ESTABLISHED |
2842 |
|
\end{verbatim} |
2843 |
|
} |
2844 |
|
Er komt meestal nog veel meer uitvoer achter; met \commando{netstat $|$ less} |
2845 |
|
kan je het resultaat met \commando{less} bekijken. We zien dat er vier |
2846 |
|
SSH-verbindingen openstaan van onze computer (157.193.53.222) naar |
2847 |
|
``ergens.be'' en ``ergensanders.be''. Verder zien we dat er iemand onlangs |
2848 |
|
een WWW-connectie heeft gelegd met ``157.193.41.38'' (er staat TIME\_WAIT, |
2849 |
|
hetgeen betekent dat de verbinding onlangs be\"eindigd geweest is). |
2850 |
|
|
2851 |
|
Met \commando{host 157.193.41.38} kunnen we de naam van ``157.193.41.38'' achterhalen: |
2852 |
|
\begin{verbatim} |
2853 |
|
Name: zeus.rug.ac.be |
2854 |
|
Address: 157.193.41.38 |
2855 |
|
\end{verbatim} |
2856 |
|
|
2857 |
|
Eens de verbinding gesloten is, kunnen we er natuurlijk niet al te veel aan doen. |
2858 |
|
Een verbinding waar ``ESTABLISHED'' bij staat, kunnen we nader onderzoeken. |
2859 |
|
We kunnen bijvoorbeeld uitzoeken welk programma die verbinding heeft geopend; |
2860 |
|
als voorbeeld zoeken we uit wie de verbinding naar ``ergensanders.be:58537'' opende. |
2861 |
|
Met \commando{lsof -i} krijgen we een lijst van alle openstaande netwerkverbindingen, |
2862 |
|
samen met het programma dat die verbinding opende. De lijst kan lang zijn |
2863 |
|
en zelf zoeken is lastig, dus typen we \commando{lsof -i $|$ grep 58537} en bekomen: |
2864 |
|
{\small\begin{verbatim} |
2865 |
|
sshd 1950 root 4u IPv4 6517 TCP 157.193.53.222:ssh->ergensanders.be:58537 (ESTABLISHED) |
2866 |
|
\end{verbatim} |
2867 |
|
} |
2868 |
|
We zien dat process met PID 1950 deze verbinding opende. Een fragment uit |
2869 |
|
\commando{pstree -p} levert |
2870 |
|
\begin{verbatim} |
2871 |
|
|-smbd(284) |
2872 |
|
|-sshd(290)-+-sshd(1950)---bash(1952) |
2873 |
|
| |-sshd(1984)---bash(1986) |
2874 |
|
\end{verbatim} |
2875 |
|
We zien dat process 1950 als kind het \commando{bash} proces met PID 1952 heeft. |
2876 |
|
Met \commando{ps 1952} krijgen we meer info over dit proces: |
2877 |
|
\begin{verbatim} |
2878 |
|
1952 pts/0 S 0:01 -bash |
2879 |
|
\end{verbatim} |
2880 |
|
Nog interessanter is \commando{ps u 1952}: |
2881 |
|
\begin{verbatim} |
2882 |
|
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND |
2883 |
|
geert 1952 0.0 6.9 2220 1224 pts/3 S 11:30 0:00 -bash |
2884 |
|
\end{verbatim} |
2885 |
|
We zien dus dat dit de SSH-verbinding is die door \textit{root} voor gebruiker |
2886 |
|
\textit{geert} is gestart (het blijkt dat de \commando{sshd} processen altijd |
2887 |
|
van \textit{root} zijn). |
2888 |
|
|
2889 |
|
\section{Handige kleine commandotjes} |
2890 |
|
Deze sectie is gebaseerd op wat weer te vinden is onder \com{info |
2891 |
|
coreutils}. Het is niet de bedoeling om hier een uitgebreide uitleg te |
2892 |
|
geven. De commano's worden kort opgesomd zodat de lezer weet wat er |
2893 |
|
bestaat. Voor een langere en volledige (bruikbare) uitleg wordt verwezen |
2894 |
|
naar \com{info coreutils} \com{man commandonaam} en \com{info |
2895 |
|
commandonaam}. |
2896 |
|
|
2897 |
|
\subsection{Inhoud van bestanden bekijken} |
2898 |
|
\begin{itemize} |
2899 |
|
\item \begrip{cat} Met \com{cat bestandsnaam} kunnen we de inhoud van een |
2900 |
|
bestand over ons scherm laten rollen. Als we tegendraads zijn, en graag |
2901 |
|
eerst de laatste lijn zien, dan de voorlaatste, etc. gebruiken we \com{tac |
2902 |
|
bestandsnaam}. |
2903 |
|
\item \begrip{nl} (Number Lines) plakt voor elke lijn een lijnnummer. |
2904 |
|
\item \begrip{head} Met \com{head bestandsnaam} bekijken we de eerste tien |
2905 |
|
lijnen van een bestand. |
2906 |
|
\item \begrip{tail} toont de laatste tien lijnen. |
2907 |
|
\item \begrip{split} splitst een bestand op in meerdere bestanden van 1000 |
2908 |
|
lijnen. Bij \com{csplit} gebeurt het splitsen na bepaalde sleutelwoorden. |
2909 |
|
\end{itemize} |
2910 |
|
|
2911 |
|
\subsection{Bewerkingen op bestanden} |
2912 |
|
\begin{itemize} |
2913 |
|
\item \begrip{wc} Om te weten te komen hoeveel bytes, woorden of lijnen |
2914 |
|
ons bestand bevat, gebruiken we \com{wc bestandsnaam}. Dit geeft een lijn |
2915 |
|
met daarop het aantal regels, het aantal woorden en het aantal bytes in |
2916 |
|
het bestand. |
2917 |
|
\item \begrip{sort} Met \com{sort bestandnaam} kunnen we de lijnen van een |
2918 |
|
bestand sorteren op alfabetische volgorde. |
2919 |
|
\item \begrip{uniq} Om dubbele lijnen uit een bestand te halen, gebruiken |
2920 |
|
we \com{uniq bestandsnaam}. |
2921 |
|
\item \begrip{comm} Met \com{comm bestand1 bestand2} kijken we welke |
2922 |
|
lijnen hetzelfde zijn en welke niet. De output bestaat uit drie kolommen. |
2923 |
|
In de eerste komen alle lijnen de in bestand1 voorkomen en niet in |
2924 |
|
bestand2. In de tweede kolom vinden we de lijnen die in bestand2 voorkomen |
2925 |
|
en niet in bestand1 en in de derde kolom komen de gemeenschappelijke |
2926 |
|
lijnen. De twee bestanden moeten voorafgaand wel gesorteerd worden met |
2927 |
|
\com{sort}. |
2928 |
|
\item \begrip{cut} Hiermee kunnen we bepaalde delen (velden) van lijnen in |
2929 |
|
een bestand bekijken. Bijvoorbeeld \com{cut --delimiter=: --f=5 |
2930 |
|
/etc/passwd} betekent dat de we ervan uitgaan dat elke kolom in de |
2931 |
|
paswoordfile gescheiden wordt door een dubbel punt (:). De optie |
2932 |
|
\com{--f=5} geeft weer dat we alleen de vijfde kolom willen zien. Op die |
2933 |
|
manier krijgen we een lijst van de gebruikers op ons systeem. |
2934 |
|
\item \begrip{paste} Met \com{paste bestand1 bestand2} worden de lijnen |
2935 |
|
van bestand2 lijn voor lijn na de lijnen van bestand1 geplakt (zie |
2936 |
|
voorbeeld met \com{info paste}). Analoog maar net iets anders is |
2937 |
|
\com{join}. |
2938 |
|
\item \begrip{tr} (translate) Laat toe om \'e\'en karakter in een ander te |
2939 |
|
vertalen. Bijvoorbeeld om alles te kapitaliseren: \com{tr |
2940 |
|
abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ}\footnote{Luiheid is |
2941 |
|
de moeder van de vooruitgang. Hetzelfde wordt met veel minder moeite |
2942 |
|
bereikt door tr a-z A-Z}. Doordat \com{tr} geen bestandsnaam als argument |
2943 |
|
ontvang moeten we met standaardinput werken. Dit doen we door het |
2944 |
|
resultaat van een vorige bewerking door te sturen naar \com{tr} (met het |
2945 |
|
zogenaamde pijpsymbool): \com{cat /etc/passwd $|$ tr a-z A-Z} wat onze |
2946 |
|
paswoordfile in hoofletters laat zien. |
2947 |
|
\item \begrip{expand}. Om tabs te converteren naar spaties. Om groepen van |
2948 |
|
spaties te converteren naar tabs, gebruiken we \com{unexpand}. |
2949 |
|
\end{itemize} |
2950 |
|
|
2951 |
|
\chapter{WWW proxy} |
2952 |
|
Een proxyserver is een server die clients gebruiken om verbinding te leggen met |
2953 |
|
een andere computer, in plaats van rechtstreeks een verbinding met de bestemmeling |
2954 |
|
te leggen. De proxyserver zelf zal dan de bestemmeling contacteren. |
2955 |
|
Een proxyserver werkt dus altijd voor \'e\'en bepaald protocol; |
2956 |
|
in dit geval zullen we de WWW-proxyserver \begrip{squid} bespreken. |
2957 |
|
|
2958 |
|
Het gebruik van een proxyserver lijkt nogal een overbodige bedoening: waarom niet |
2959 |
|
gewoon rechtstreeks een verbinding leggen met de bestemmeling, in plaats van |
2960 |
|
rond te gaan via de proxy? Er zijn twee voordelen aan de proxy-aanpak: |
2961 |
|
\begin{itemize} |
2962 |
|
\item Beveiliging: we kunnen onze firewall zo instellen dat er geen WWW-trafiek |
2963 |
|
van binnen ons netwerk naar buiten wordt toegelaten, tenzij vanop de proxyserver. |
2964 |
|
De proxyserver zelf moet uiteraard wel WWW-verbindingen kunnen opzetten naar buiten. |
2965 |
|
Op die manier kunnen we binnen de proxyserver instellen wie welke WWW-pagina's |
2966 |
|
wel of niet te zien mag krijgen. |
2967 |
|
\item Efficientie: de proxyserver heeft ook een \begrip{cache} aan boord van recent |
2968 |
|
opgevraagde webpagina's. Pagina's die in de cache zitten, zal de proxyserver niet meer |
2969 |
|
opnieuw bij de originele webserver opvragen, maar rechtstreeks uit de cache halen. |
2970 |
|
Op die manier sparen we heel wat netwerktrafiek uit als bijvoorbeeld een hele |
2971 |
|
PC-klas naar dezelfde site aan het surfen is. |
2972 |
|
\end{itemize} |
2973 |
|
Het nadeel van de proxy-aanpak is dat de software van de client (in ons geval: de webbrowser) |
2974 |
|
in staat moet zijn met een proxy server om te gaan. Gelukkig is dat voor de meeste |
2975 |
|
moderne webbrowsers het geval. |
2976 |
|
|
2977 |
|
\subsection{Installatie en configuratie} |
2978 |
|
De installatie is zoals we dat van Debian gewoon zijn eenvoudig: |
2979 |
|
\begin{center}\commando{apt-get install squid}\end{center} |
2980 |
|
|
2981 |
|
De configuratie is ook niet zo moeilijk: we bewerken het omvangrijke bestand |
2982 |
|
\file{/etc/squid.conf}. We zullen twee regels toevoegen: de regel |
2983 |
|
\begin{verbatim} |
2984 |
|
acl mijnclients src 10.1.1.0/24 |
2985 |
|
\end{verbatim} |
2986 |
|
die een nieuwe `Access Control List' genaamd ``mijnclients'' aanmaakt |
2987 |
|
(waarin iedereen zit met een IP adres van de vorm 10.1.1.x), |
2988 |
|
en een regel |
2989 |
|
\begin{verbatim} |
2990 |
|
http_access allow mijnclients |
2991 |
|
\end{verbatim} |
2992 |
|
die aangeeft dat iedereen in de lijst ``mijnclients'' toegang heeft tot onze proxyserver. |
2993 |
|
Deze regel moet komen v\'o\'or de regel met |
2994 |
|
\begin{verbatim} |
2995 |
|
http_access deny all |
2996 |
|
\end{verbatim} |
2997 |
|
Alle computers op ons eigen netwerkje, met IP adres 10.1.1.x dus, kunnen dus |
2998 |
|
toegang krijgen tot onze proxyserver. Eventueel kan je meerdere ACL's opstellen |
2999 |
|
(bijvoorbeeld PC-zalen, sekretariaatscomputers,~\ldots) die dan allemaal een |
3000 |
|
aparte configuratie kunnen krijgen. |
3001 |
|
|
3002 |
|
Er is nog veel meer mogelijk, bijvoorbeeld bepaalde (stukken van) websites blokkeren; |
3003 |
|
zie bijvoorbeeld \url{http://www.squid-cache.org/Doc/FAQ/FAQ.html} voor meer informatie. |
3004 |
|
|
3005 |
|
We kunnen de configuratie snel uittesten door vanop \'e\'en van de toegelaten computers |
3006 |
|
eens \commando{lynx http://mijn.favoriete/website} te doen, waarbij we eerst |
3007 |
|
met |
3008 |
|
\begin{verbatim} |
3009 |
|
export http_proxy="http://debianserver:3128" |
3010 |
|
\end{verbatim} |
3011 |
|
aangeven dat \commando{lynx} onze proxyserver (die draait op de computer |
3012 |
|
\texttt{debianserver}) moet gebruiken. Als het goed is krijgen we de gevraagde pagina te zien. |