Date: Thu, 2 Oct 2008 21:08:12 GMT From: Rene Ladan <rene@FreeBSD.org> To: Perforce Change Reviews <perforce@FreeBSD.org> Subject: PERFORCE change 150817 for review Message-ID: <200810022108.m92L8CYx067637@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=150817 Change 150817 by rene@rene_self on 2008/10/02 21:08:02 MFen basics/chapter.sgml 1.153 -> 1.154 Checked build, spelling (diff only), whitespace Affected files ... .. //depot/projects/docproj_nl/nl_NL.ISO8859-1/books/handbook/basics/chapter.sgml#5 edit Differences ... ==== //depot/projects/docproj_nl/nl_NL.ISO8859-1/books/handbook/basics/chapter.sgml#5 (text+ko) ==== @@ -4,7 +4,7 @@ $FreeBSD: doc/nl_NL.ISO8859-1/books/handbook/basics/chapter.sgml,v 1.17 2008/09/14 22:32:27 remko Exp $ %SOURCE% en_US.ISO8859-1/books/handbook/basics/chapter.sgml - %SRCID% 1.153 + %SRCID% 1.154 --> <chapter id="basics"> @@ -760,6 +760,150 @@ Meer informatie voor beheerders staat in &man.chflags.1; en &man.chflags.2;.</para> </sect2> + + <sect2> + <sect2info> + <authorgroup> + <author> + <firstname>Tom</firstname> + <surname>Rhodes</surname> + <contrib>Bijgedragen door </contrib> + </author> + </authorgroup> + </sect2info> + + <title>De setuid-, setgid-, en klevende toestemmingen</title> + + <para>Buiten de toestemmingen die reeds besproken zijn, zijn er + nog drie specifieke instellingen waarvan alle beheerders kennis + dienen te hebben. Dit zijn de <literal>setuid</literal>-, + <literal>setgid</literal>-, en <literal>sticky</literal> + toestemmingen.</para> + + <para>Deze instellingen zijn belangrijk voor sommige + &unix;-bewerkingen omdat ze functionaliteit bieden die + normaliter niet aan normale gebruikers wordt gegeven. Om ze te + begrijpen, dient ook het verschil tussen de echte gebruikers-ID + en de effectieve gebruikers-ID opgemerkt te worden.</para> + + <para>De echte gebruikers-ID is de <acronym>UID</acronym> die het + proces start of bezit. De effectieve <acronym>UID</acronym> is + de gebruikers-ID waaronder het proces draait. Bijvoorbeeld, het + gereedschap &man.passwd.1; draait met de echte gebruikers-ID van + de gebruiker die het wachtwoord verandert; echter, om de + database met wachtwoorden te manipuleren, draait het met de + effectieve ID van de gebruiker <username>root</username>. Dit + is wat normale gebruikers in staat stelt om hun wachtwoorden te + veranderen zonder een fout <errorname>Permission + Denied</errorname> te zien.</para> + + <note> + <para>De &man.mount.8;-optie <literal>nosuid</literal> zorgt + ervoor dat deze binairen zwijgend falen. Dit houdt in dat ze + niet worden uitgevoerd zonder ooit de gebruiker op de hoogte + te stellen. Deze optie is ook niet geheel betrouwbaar + aangezien een <literal>nosuid</literal>-wrapper dit volgens de + handleidingpagina &man.mount.8; kan omzeilen.</para> + </note> + + <para>De setuid-toestemming kan aangezet worden door het cijfer + vier (4) voor een toestemmingenverzameling te plaatsen zoals te + zien is in het volgende voorbeeld:</para> + + <screen>&prompt.root; <userinput>chmod 4755 suidvoorbeeld.sh</userinput></screen> + + <para>De toestemmingen op het bestand + <filename>suidvoorbeeld.sh</filename> dienen er nu als volgt uit + te zien:</para> + + <programlisting>-rwsr-xr-x 1 trhodes trhodes 63 Aug 29 06:36 suidvoorbeeld.sh</programlisting> + + <para>Het zou in dit voorbeeld te zien moeten zijn dat een + <literal>s</literal> nu deel is van de toestemmingenverzameling + bestemd voor de bestandseigenaar, en de uitvoerbare bit + vervangt. Dit staat gereedschappen toe die verhoogde + toestemmingen nodig hebben, zoals <command>passwd</command>.</para> + + <para>Open twee terminals om dit in real-time te zien. Start op + het ene het proces <command>passwd</command> als een normale + gebruiker. Controleer de procestabel terwijl het op een nieuw + wachtwoord wacht en kijk naar de gebruikersinformatie van het + commando <command>passwd</command>.</para> + + <para>In terminal A:</para> + + <screen>Changing local password for trhodes +Old Password:</screen> + + <para>In terminal B:</para> + + <screen>&prompt.root; <userinput>ps aux | grep passwd</userinput></screen> + + <screen>trhodes 5232 0.0 0.2 3420 1608 0 R+ 2:10AM 0:00.00 grep passwd +root 5211 0.0 0.2 3620 1724 2 I+ 2:09AM 0:00.01</screen> + + <para>Zoals boven vermeld, wordt <command>passwd</command> door + een normale gebruiker gedraaid, maar gebruikt het de effectieve + <acronym>UID</acronym> van <username>root</username>.</para> + + <para>De <literal>setgid</literal>-toestemming voert dezelfde + functie uit als de <literal>setuid</literal>-toestemming; + behalve dat het de groepsinstellingen verandert. Wanneer een + applicatie of gereedschap met deze instelling wordt gedraaid, + krijgt het de toestemmingen gebaseerd op de groep die het + bestand bezit, niet op de gebruiker die het proces startte.</para> + + <para>Om de <literal>setgid</literal>-toestemming op een bestand + aan te zetten, dient een voorlopende twee (2) aan het commando + <command>chmod</command> gegeven te worden zoals in het volgende + voorbeeld:</para> + + <screen>&prompt.root; <userinput>chmod 2755 suidvoorbeeld.sh</userinput></screen><!--(rene) sgidvoorbeeld.sh ? 1.154--> + + <para>De nieuwe instelling kan zoals hierboven bekeken worden, + merk op dat de <literal>s</literal> nu in het veld bestemd voor + de instellingen van de groepstoestemmingen staat:</para> + + <programlisting>-rwxr-sr-x 1 trhodes trhodes 44 Aug 31 01:49 suidvoorbeeld.sh</programlisting><!--(rene) sgidvoorbeeld.sh ? 1.154--> + + <note> + <para>In deze voorbeelden zal het shellscript niet met een + andere <acronym>EUID</acronym> of effectief gebruikers-ID + draaien, zelfs al is het shellscript uitvoerbaar. Dit is + omdat shellscripts geen toegang hebben tot de + &man.setuid.2;-systeemaanroepen.</para> + </note> + + <para>De eerste twee speciale toestemmingsbits die we besproken + hebben (de toestemmingsbits <literal>setuid</literal> en + <literal>setgid</literal>) kunnen de systeemveiligheid verlagen, + door verhoogde toestemmingen toe te staan. Er is een derde bit + voor speciale toestemmingen die de veiligheid van een systeem + kan verhogen: de <literal>klevende bit</literal>.</para> + + <para>De <literal>klevende bit</literal>, wanneer deze op een map + is ingesteld, staat alleen het verwijderen van bestanden toe + door de eigenaar van die bestanden. Deze + toestemmingenverzameling is nuttig om het verwijderen van + bestanden in publieke mappen, zoals <filename + class="directory">/tmp</filename>, door gebruikers die het + bestand niet bezitten te voorkomen. Zet een één + (1) voor de toestemming om deze toestemming te gebruiken. + Bijvoorbeeld:</para> + + <screen>&prompt.root; <userinput>chmod 1777 /tmp</userinput></screen> + + <para>Het effect kan nu met het commando <command>ls</command> + bekeken worden:</para> + + <screen>&prompt.root; <userinput>ls -al / | grep tmp</userinput></screen> + + <screen>drwxrwxrwt 10 root wheel 512 Aug 31 01:49 tmp</screen> + + <para>De toestemming <literal>klevende bit</literal> is te + onderscheiden met de <literal>t</literal> aan het einde van de + verzameling.</para> + </sect2> </sect1> <sect1 id="dirstructure"> @@ -1400,7 +1544,7 @@ <entry><literal>d</literal></entry> <entry>Partitie <literal>d</literal> had vroeger een - speciale betekenis, maar die is verdwenen. + speciale betekenis, maar die is verdwenen. <literal>d</literal> zou nu kunnen werken als een normale partitie.</entry> </row>
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200810022108.m92L8CYx067637>