Slackware 7.0 deel II: Configuratiegids

ArticleCategory: []

System Administration

AuthorImage:[Hier komt een kleine foto van jou]

[Jeffry Degrande]

TranslationInfo:[Info over schrijver(s) en vertaler(s)]

original in nl Jeffry Degrande

AboutTheAuthor:[een korte biografie over de auteur]

(nog niet beschikbaar)

Abstract:[een kleine samenvatting/beschrijving van het artikel]

Dit is het tweede deel in de serie. Na de installatie in deel I, geeft de auteur nu uitleg over een paar basis configuratie taken in zijn favoriete distributie. Hij heeft het over de configuratie van X, beheer van de gebruikers, kernels compileren, lilo gebruiken, en een basis systeemveiligheid.

Het is zeker de moeite voor niet-ervaren Linux gebruikers die meer willen leren over hun systeem.

ArticleIllustration:[Titel-illustratie van het Artikel]

[Illustratie]

ArticleBody:[Het eigenlijke artikel: zet hier tekst en HTML codes]

Configuratie van Linux

Net als in deel I probeer ik zo duidelijk mogelijk uit te leggen hoe je een aantal zaken gedaan krijgt onder slackware 7.0. Dit is nu namelijk mijn favoriete distro en dus diegene die ik gebruik.

Volgende zaken zou ik es willen (proberen) uit te leggen.

Deze informatie vind je op erg veel andere plekken ook terug, maar ik probeer het aan te tonen aan de hand van de tools die slackware daarvoor voorziet.

X configuratie

We nemen aan dat je bij de installatie de packages voor een X gebaseerd systeem hebt geinstalleerd... We nemen ook aan dat we geluk hebben en bv. de muis werkt met de instellingen die we bij de installatie opgegeven hebben. 'k bedoel maar, kleine probleempjes die kunnen voorkomen kan ik echt nie behandelen want die kan ik ten eerste nie allemaal voorzien en ten tweede er zijn er teveel (je mag me er natuurlijk over mailen en als je vind dat jouw probleem zeker te vermelden waard is dan word dat natuurlijk bekeken). Nuja, we gaan verder :) Om X in te stellen kun je kiezen uit twee programma's onder slackware. XF86Setup en XF86Config. Het verschil tussen beide is dat het ene onder je console werkt en het andere reeds de grafische toer opgaat. Aan jou de keus :)

Voor het gemak gaan we aan het werk met XF86Setup (das het grafische). Eerst stellen we onze muis in. Daar is het meestal voldoende het juiste protocol te kiezen en /dev/mouse te selecteren als device. Ik raad wel aan de optie "Emulate3buttons" aan te zetten als je over een tweeknopsmuis beschikt. (Met deze optie word het klikken van beide muisknoppen terzelfdertijd gezien als een derde muisknop).

In het volgende scherm kies je je toetsenbordlayout. Hier kies je best voor "belgian" en natuurlijk ook het type waarover je beschikt. Klikje op "apply" en we gaan naar het volgende scherm.

Nu stellen we onze videokaart in. Klik op "card list" en zoek jouw videokaart. Klik terug op "detailed setup" en kijk of alles een beetje goed staat. Meestal is het voldoende alles op "probed" in te stellen. Een beetje zoeken is misschien noodzakelijk. Als alles goed staat gaan we naar het volgende scherm waar je monitor behandeld wordt.

Hier moet je de maximale resoluties aangeven wat je monitor aankan. Bij twijfel kan de handleiding van je monitor wel uitkomst bieden. Het volgende scherm kies je je resolutie en het aantal kleuren wat je videokaart aankan.

In het laatste scherm kun je nog algemene instellingen meegeven (Die leggen zichzelf zowat uit, dus besteed ik er ook geen aandacht aan) Klik op "done" om terug te keren naar console.

Le moment suprême, als alles goed is tenminste. Geef het commando "startx" Als alles goed is word de grafische omgeving nu opgestart.

Als je een andere windowmanager wilt instellen doe je dat in het bestandje .xinitrc wat je vind in je homedir. (om KDE te gebruiken zet je bijvoorbeeld "startkde" daarin. Dit verschilt wel van windowmanager tot windowmanager maar meer informatie vind je wel terug in de documentatie van je windowmanager.)

Opmerking: Meer informatie over het configureren van je X vind je in de XFree86-HOWTO

Kernelcompilatie + lilo

Eerst en vooral is het noodzakelijk dat de kernelsources geïnstalleerd staan op je systeem. De sources van 2.2.13 vind je terug op de cd. Deze kun je installeren met "installpkg packagex.tgz" (zorg ook dat je de include files meehebt, die vind je in dezelfde directory terug). De sources worden geinstalleerd onder /usr/src/linux-2.2.13. Je vindt ook /usr/src/linux terug. Dit is slechts een een link naar linux-2.2.13 maar het is wel handig deze te hebben (Indien je hem om de een of andere reden kwijt bent, door een upgrade bijv., kun je hem terug aanmaken met

    ln -s /usr/src/linux-2.2.13 /usr/src/linux )
Om je kernel te configureren ga je naar /usr/src/linux. Nu kun je kiezen uit drie mogelijkheden. Ofwel gebruik je de X interface (make Xconfig), ofwel gebruik je de console interface (make menuconfig) ofwel ben je stoer en typ je gewoon "make config". Je typt dus een van de drie voorgaande: make Xconfig, make menuconfig of make config.

Nu komt het instellen een beetje op jezelf aan, ik heb namelijk niet hetzelfde systeem als jij hebt (jij hebt misschien scsi, en ik niet :( ) Dus is het voor mij onmogelijk om te gaan zeggen wat je nodig hebt en wat niet. Er is natuurlijk altijd de helpfunctie die meer informatie geeft over een bepaalde optie. Maar ik vertrouw erop dat je je eigen systeem zo kent dat dit eigenlijk niet echt een probleem mag zijn :)

Sluit alles netjes af als je klaar bent en terug aan de prompt typ je achtereenvolgens:

    make dep
    make clean           <- Dit vind ik zelf een beetje overbodig, maar in de boekjes staat dat het moet,
                            je doet natuurlijk wat je zelf wilt
    make bzlilo          <- Hier zijn natuurlijk ook andere mogelijkheden, maar zo doe ik het altijd, op
                            deze manier wordt een gecomprimeerde kernel gemaakt en word ie meteen door
                            lilo geinstalleerd.
    make modules         <- Als je zaken als een module hebt geconfigureerd
    make modules_install <- als je die modules ook geinstalleerd wil zien :)
Als het je eerste keer is doe je best alles apart, dan zie je meteen als het fout loopt waar dat precies gebeurt. Als je wat meer vertrouwen hebt kun je
    make dep bzlilo modules modules_install
doen en ondertussen een lekker kopje koffie gaan drinken ;)

Meer houdt het configureren en compileren van je kernel echt niet in.

Als je make bzlilo gebruikt worden twee nieuwe bestanden aangemaakt: vmlinuz en System.map , als hij deze bestanden reeds aantreft worden deze "oude" bestanden hernoemd naar vmlinuz.old en System.old . Deze kun je dan bijvoorbeeld als volgt gaan gebruiken als reserve:

(in je /etc/lilo.conf)

    image = /boot/vmlinuz.old
    root=/dev/hda5
    label = stable
Opmerking: de volgorde waarin je gelijkaardige configuraties zoals deze plaats in /etc/lilo.conf bepalen ook de bootvolgorde (Zet deze dus niet als eerst ...)

Een probleem waar ik al een paar keer tegengelopen ben, is dat make bzlilo de vmlinuz en de System.map in je / plaatst terwijl lilo.conf verwijst naar /boot/vmlinuz (zoals je ziet in deze configuratie bijv. image=...) Nu heb je twee mogelijkheden, ofwel verplaats je /vmlinuz naar /boot/vmlinuz ofwel pas je lilo.conf aan. Allebei moeten ze wel gevolgd worden door het opnieuw runnen van lilo (typ: lilo).

Een reboot en je kernel zou moeten geladen worden. (Kun je nagaan met uname -a )

Opmerking: Meer informatie vind je in de kernel-HOWTO.

Users aanmaken, verwijderen, ...

Daar linux een multiuser systeem is en het constant werken met je rootaccount door iedereen, dus ook door mij word afgeraden (stel je voor dat we als root iets stukmaken, dan is ons werk voor niks geweest, terwijl een gewone gebruiker minder kans heeft op brokken doordat hij er simpelweg niet bijkan) gaan we gebruikers aanmaken op ons systeem. Voor deze taak heeft slackware een erg leuk werkend scriptje meegeleverd, typ:

    # adduser

    Login name for new user (8 characters or less) []: <-   Hier typ je een nieuwe loginnaam
    User id for blaat [ defaults to next available]:   <-   Mag je gewoon enter geven
    Initial group for blaat [users]:                   <-   De group van je nieuwe user
    Additional groups for blaat (seperated with commas, no spaces) []: <-   extra groepen waartoe hij behoort
    blaat's home directory [/home/blaat]:              <-   De homedir (meestal is dit /home/username)
    blaat's shell [/bin/bash]:                         <-   Zijn shell
    blaat's account expiry date (YYYY-MM-DD) []:       <-   Wanneer zijn account vervalt (niks ingeven
                                                            betekent, het account vervalt nooit)
Dan krijg je wat samenvattende uitvoer waar je kunt beslissen of je doorgaat (ENTER) of je ermee stopt (CTRL-C)
    Changing the user information for blaat 
    Enter the new value, or press return for the default 
        Full Name []:                                  <-  Zijn naam
        Room Number []:                	               <-  Het kantoor waar hij zit
        Work Phone []:                                 <-  Telefoonnummer
        Home Phone []:                	               <-  ja, duh, het moet maar ;)
Ten slotte moet je de nieuwe user nog een passwoord geven en de user kan inloggen.
    Changing password for blaat 
    Enter the new password (minimum of 5, maximum of 127 characters)
    Please use a combination of upper and lower case letters and numbers.
    New password:
    Re-enter new password:
    Password changed.
    Done...

    buffy login: blaat
    Password:
    Linux 2.2.14.
    No mail.
    I have seen the future and it is just like the present, only longer.
                -- Kehlog Albran

    buffy:~$ whoami
    blaat
Voila , we hebben een gebruiker erbij.

Het verwijderen van een user kun je met "userdel". Daarvoor moet de gebruiker wel uitgelogd zijn!

    buffy:/var/log# userdel blaat
    userdel: user blaat is currently logged in
(Blaat is weg ... we hebben hem een handje geholpen)
    buffy:/var/log# userdel blaat
    buffy:/var/log#
Voila , het account is weg !

PPP/Internetconnectie opzetten

Ik richt me in dit onderdeel op diegenen die nog het Internet opgaan met een traditionele modem. Kabel en ISDN heb ik zelf nog niet mogen configureren (~!@$# kabelmaatschappij~!@#$%^ telefoonmmaatchappij !)
Ook ga ik er vanuit dat je over een modem beschikt die met linux compatibel is. (TIP: www.altavista.com "+type van modem +linux").

Voor het opzetten van je ppp-verbinding heeft slackware ook een scriptje meegeleverd.

    # pppsetup
In het eerste scherm moet je het telefoonnummer van je ISP invullen, voorafgegaan door atdt of atpt (voorbeeldje staat iets hoger).

Vervolgens wordt je gevraagd op welke poort je modem zit (vergelijk met ms-dos staat ernaast).

Dan wordt je om de snelheid gevraagd, We scrollen heel eventjes helemaal tot boven maar vervolgens kiezen we toch de meest realistische waarde ;).

Dan stel je in of je callback gebruikt. Dit zet je op NO want voorzover ik weet doet geen enkel belgische ISP dit? (hoewel ze van mij natuurlijk wel mogen ;).

Als je een andere initstring wilt instellen kun je dit in het volgende scherm doen. Vervolgens de domeinnaam van je provider (bv. uunet.be voor uunet, planetinternet.be voor planet ...)

Vervolgens het IP adres van de DNS server van je provider. Dit moet je wel ergens terug kunnen vinden (instellingen van windhoos eventueel?)

Vervolgens kies je het authenticatietype (PAP is het proberen waard, meeste ISP's ondersteunen dit wel, en je wilt echt niet met SCRIPT aan de slag als het niet nodig is).

Vervolgens username

En tenslotte nog het passwoord.

Dan krijg je een overzicht wat er gebeurd is en welke files er veranderd zijn.

Het starten van de verbinding kun je door

    # ppp-go
Sluiten doe je dan weer met
    # ppp-off

Basisbeveiliging

Het is natuurlijk noodzakelijk dat je ook naast het zorgen dat het werkt, er ook voor zorgt dat het een beetje veilig werkt. Hier ga ik niet erg diep op ingaan, want het is gewoon te uitgebreid. Ik verwijs wel door naar de security-HOWTO (verplichte leesvoer!)

Wat ik wel ga zeggen is hoe je ervoor zorgt dat je er van buitenaf niet meer inkomt.

Alle services worden gedraaid vanuit een "Superserver" nl. inetd. Met volgend commando kun je zien welke services openstaan op jouw systeem:

    # netstat -tua | grep LISTEN
Deze inetd haalt zijn instellingen uit het bestand /etc/inetd.conf . Open dus dit bestand met je favoriete editor en je ziet regels zoals
    telnet stream  tcp     nowait  root    /usr/sbin/tcpd  in.telnetd
Het # aan het begin van de lijn betekent dat de service ofwel gesloten, ofwel open is. Staat het er, dan is hij dicht. Staat het er niet, dan is het open.

Dus voorgaande regel (de telnet daemon) is afgesloten, had er nu gestaan

    telnet stream  tcp     nowait  root    /usr/sbin/tcpd  in.telnetd
Dan was hij open. Doe maar es
    # telnet localhost 23
en je ziet wat er gebeurt.

Plaats dus voor alle regels een # (als je zeker bent dat je de service wilt mag je hem natuurlijk openlaten).

start inetd opnieuw als volgt:

    # killall -HUP inetd
Doe nogmaals
    # netstat -tua |grep LISTEN
om te kijken of je veranderingen effectief doorgevoerd zijn.

Twee bestanden die je ook nog moet aanpassen zijn de bestanden /etc/hosts.allow en /etc/hosts.deny .

Als er een connectie gemaakt word, word er eerst gecontroleerd of die beschreven staat in hosts.allow (zoja, dan word de connectie aanvaard), vervolgens word hosts.deny gecontroleerd. Staat daar niks in dan word de connectie aanvaard. Dat is natuurlijk niet handig.

Beter zou zijn: staat het in hosts.allow? ja? goed, aanvaard maar. Nee? sorry, maar dan aanvaarden we niet want het staat in hosts.deny.

Dit kan je bekomen door in /etc/hosts.allow volgende regel toe te voegen:

    ALL : 127.0.0.1    <-  127.0.0.1 is de loopback interface, gewoon jezelf eigenlijk
                           (we sluiten onszelf natuurlijk niet uit)
in /etc/hosts.deny plaatsen we dan
    ALL : ALL
Noot: het formaat van het bestand is als volgt:
<type service>  : <adres>
ALL : ALL betekent zoveel als "alle connecties vanaf overal"

Nu worden connecties niet meer zomaar aanvaard.

Dit is natuurlijk allemaal erg basis! Er is heel wat meer voor nodig om je systeem werkelijk beveiligd te krijgen. Maar zoals ik in het begin van dit onderdeel al opmerkte neem je best de security-HOWTO es door.