Date: Fri, 17 Jun 2016 17:01:38 +0000 (UTC) From: Bjoern Heidotting <bhd@FreeBSD.org> To: doc-committers@freebsd.org, svn-doc-all@freebsd.org, svn-doc-head@freebsd.org Subject: svn commit: r48938 - head/de_DE.ISO8859-1/books/handbook/security Message-ID: <201606171701.u5HH1cHU091655@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: bhd Date: Fri Jun 17 17:01:37 2016 New Revision: 48938 URL: https://svnweb.freebsd.org/changeset/doc/48938 Log: Update to r44719: Editorial review of Login Classes section. Modified: head/de_DE.ISO8859-1/books/handbook/security/chapter.xml Modified: head/de_DE.ISO8859-1/books/handbook/security/chapter.xml ============================================================================== --- head/de_DE.ISO8859-1/books/handbook/security/chapter.xml Fri Jun 17 16:39:18 2016 (r48937) +++ head/de_DE.ISO8859-1/books/handbook/security/chapter.xml Fri Jun 17 17:01:37 2016 (r48938) @@ -5,7 +5,7 @@ $FreeBSD$ $FreeBSDde: de-docproj/books/handbook/security/chapter.xml,v 1.178 2012/04/30 17:07:41 bcr Exp $ - basiert auf: r44718 + basiert auf: r44719 --> <chapter xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0" xml:id="security"> <info><title>Sicherheit</title> @@ -3768,94 +3768,73 @@ UWWemqWuz3lAZuORQ9KX <primary>Ressourcen einschränken</primary> </indexterm> - <para>&os; benutzt die Datenbank - <filename>/etc/login.conf</filename> um Ressourcen zu - beschränken. Obwohl dies immer noch unterstützt wird, ist es - nicht die optimale Methode um die Beschränkung von Ressourcen zu - steuern, da Benutzer in verschiedene Gruppen (Login-Klassen) - aufgeteilt werden müssen und bei Änderungen immer die Datei und - die Passwortdatenbank bearbeitet werden muss. Möglicherweise - benötigt ein eingeschränkter Benutzer eine zusätzliche Klasse, - dann müsste die Datenbank mit <command>cap_mkdb</command> neu - gebaut werden und <filename>/etc/master.passwd</filename> müsste - ebenfalls bearbeitet werden. Zusätzlich müsste die - Passwortdatenbank mit <command>pwd_mkdb</command> neu gebaut - werden. Dieser Prozess kann sehr zeitaufwendig sein, abhängig - davon, wie viele Benutzer bearbeitet werden müssen.</para> - - <para>Beginnend mit &os; 9.0-RELEASE können mit &man.rctl.8; - Ressourcen für Benutzer sehr detailliert gesteuert werden. - Dieser Befehl unterstützt nicht nur die Kontrolle der Ressourcen - für Benutzer, sondern auch die Beschränkung auf Prozesse, Jails - und den ursprünglichen Login-Klassen. Diese erweiterten - Funktionen bieten Administratoren und Benutzern die Möglichkeit, - Ressourcen über die Kommandozeile oder über eine - Konfigurationsdatei zu steuern.</para> + <para>&os; bietet dem Systemadministrator mehrere + Möglichkeiten die System-Ressourcen, die ein einzelner + Benutzer verwenden kann, einzuschränken. + Festplatten-Kontingente schränken den Plattenplatz, der + einem Benutzer zur Verfügung steht, ein. Kontingente werden + im <xref linkend="quotas"/> diskutiert.</para> + + <indexterm><primary>Quotas</primary></indexterm> + <indexterm> + <primary>Benutzer einschränken</primary> + <secondary>Quotas</secondary> + </indexterm> + + <para>Einschränkungen auf andere Ressourcen, wie + <acronym>CPU</acronym> und Speicher, können über eine + Konfigurationsdatei oder über die Kommandozeile konfiguriert + werden. Traditionell werden Login-Klassen in + <filename>/etc/login.conf</filename> definiert. Obwohl diese + Methode immer noch untersützt wird, muss nach jeder Änderung + an dieser Datei die Ressourcen-Datenbank neu gebaut werden. + Zudem müssen Sie die notwendigen Änderungen in + <filename>/etc/master.passwd</filename> vornehmen und die + Passwort-Datenbnak neu bauen. Dieser Prozess kann, abhängig + davon, wie viele Benutzer bearbeitet werden müssen, sehr + zeitaufwändig sein.</para> + + <para>Beginnend mit &os; 9.0-RELEASE können mit + <command>rctl</command> Ressourcen für Benutzer sehr + detailliert gesteuert werden. Dieser Befehl unterstützt nicht + nur die Kontrolle der Ressourcen für Benutzer, sondern auch die + Beschränkung auf Prozesse und Jails.</para> <para>In diesem Abschnitt werden beide Methoden - vorgestellt.</para> + vorgestellt. Angefangen wird mit der traditionellen + Methode.</para> <sect2 xml:id="users-limiting"> - <title>Login-Klassen</title> + <title>Login-Klassen konfigurieren</title> <indexterm><primary>Benutzer einschränken</primary></indexterm> <indexterm> <primary>Accounts</primary> <secondary>einschränken</secondary> </indexterm> - - <para>&os; bietet dem Systemadministrator mehrere - Möglichkeiten die System-Ressourcen, die ein einzelner - Benutzer verwenden kann, einzuschränken. Diese Limitierungen - sind in zwei Kategorien eingeteilt: Festplattenkontingente und - andere Ressourcenbeschränkungen.</para> - - <indexterm><primary>Quotas</primary></indexterm> - <indexterm> - <primary>Benutzer einschränken</primary> - <secondary>Quotas</secondary> - </indexterm> - <indexterm><primary>Festplatten Quotas</primary></indexterm> - - <para>Festplatten-Kontingente schränken den Plattenplatz, der - einem Benutzer zur Verfügung steht, ein. Sie bieten zudem, - ohne aufwändige Berechnung, einen schnellen Überblick - über den verbrauchten Plattenplatz. Kontingente werden im - <xref linkend="quotas"/> diskutiert.</para> - - <para>Die anderen Ressourcenbeschränkungen umfassen die - Begrenzung von CPU, Speicher und weitere Ressourcen, die ein - Benutzer verbrauchen kann.</para> - <indexterm> <primary><filename>/etc/login.conf</filename></primary> </indexterm> - <para>Login-Klassen werden in - <filename>/etc/login.conf</filename> und sind in - &man.login.conf.5; im Detail beschrieben.n. Jeder Benutzer - wird einer Login-Klasse zugewiesen (standardmäßig - <literal>default</literal>) und jede Login-Klasse ist mit - einem Satz von Login-Fähigkeiten verbunden. Eine - Login-Fähigkeit ist ein + <para>Bei der traditionellen Methode werden Login-Klassen und + Ressourcenbeschränkungen in + <filename>/etc/login.conf</filename> definiert. Jeder + Benutzer kann einer Login-Klasse zugewiesen werden + (standardmäßig <literal>default</literal>) und jede + Login-Klasse ist mit einem Satz von Login-Fähigkeiten + verbunden. Eine Login-Fähigkeit ist ein <literal><replaceable>Name</replaceable>=<replaceable>Wert</replaceable></literal> Paar, in dem <replaceable>Name</replaceable> die Fähigkeit bezeichnet und <replaceable>Wert</replaceable> ein beliebiger Text ist, der in Abhänigkeit von - <replaceable>Name</replaceable> entsprechend verarbeitet wird. - Login-Klassen und -Fähigkeiten zu definieren ist ziemlich - einfach und wird auch in &man.login.conf.5; - beschrieben.</para> + <replaceable>Name</replaceable> entsprechend verarbeitet + wird.</para> <note> - <para>&os; liest die Konfiguration aus - <filename>/etc/login.conf</filename> normalerweise nicht - direkt, sondern nur über die Datenbank - <filename>/etc/login.conf.db</filename>, da diese eine - schnellere Abfrage erlaubt. Wenn - <filename>/etc/login.conf</filename> verändert wurde, muss - die <filename>/etc/login.conf.db</filename> mit dem - folgenden Kommando aktualisiert werden:</para> + <para>Immer wenn <filename>/etc/login.conf</filename> + verändert wurde, muss die + <filename>/etc/login.conf.db</filename> mit dem folgenden + Kommando aktualisiert werden:</para> <screen>&prompt.root; <userinput>cap_mkdb /etc/login.conf</userinput></screen> </note> @@ -3867,212 +3846,168 @@ UWWemqWuz3lAZuORQ9KX bis zum maximalen Limit verändert werden. Letzteres kann der Benutzer nur heruntersetzen. Zweitens gelten die meisten Ressourcenbeschränkungen für jeden vom Benutzer gestarteten - Prozess, nicht für den Benutzer selbst. Beachten Sie jedoch, - dass diese Unterschiede durch das spezifische Einlesen der - Limits und nicht durch das System der Login-Fähigkeiten - entstehen (das heißt, Ressourcenbeschränkungen sind - <emphasis>keine</emphasis> Login-Fähigkeiten).</para> - - <para>Hier befinden sich die am häufigsten benutzten - Ressourcenbeschränkungen. Der Rest kann zusammen mit den - anderen Login-Fähigkeiten in &man.login.conf.5; gefunden - werden:</para> - - <variablelist> - <varlistentry> - <term><literal>coredumpsize</literal></term> - - <listitem> - <indexterm><primary>coredumpsize</primary></indexterm> - <indexterm> - <primary>Benutzer einschränken</primary> - <secondary>coredumpsize</secondary> - </indexterm> - - <para>Das Limit der Größe einer core-Datei, die von einem - Programm generiert wird, unterliegt aus offensichtlichen - Gründen anderen Limits der Festplattenbenutzung, zum - Beispiel <literal>filesize</literal> oder - Festplattenkontingenten. Es wird aber trotzdem oft als - weniger harte Methode zur Kontrolle des - Festplattenplatz-Verbrauchs verwendet: Da Benutzer die - core-Dateien nicht selbst erstellen und sie oft nicht - löschen, kann sie diese Option davor retten, dass kein - Festplattenspeicher mehr zur Verfügung steht, sollte ein - großes Programm abstürzen.</para> - </listitem> - </varlistentry> + Prozess.</para> - <varlistentry> - <term><literal>cputime</literal></term> + <para><xref linkend="resource-limits"/> listet die + gebräuchlichen Ressourcenbeschränkungen auf. Alle verfügbaren + Ressourcenbeschränkungen und Fähigkeiten sind im Detail in + &man.login.conf.5; beschrieben.</para> - <listitem> - <indexterm><primary>cputime</primary></indexterm> - <indexterm> - <primary>Benutzer einschränken</primary> - <secondary>cputime</secondary> - </indexterm> - - <para>Die maximale Rechenzeit, die ein Prozess eines - Benutzers verbrauchen darf. Überschreitet der Prozess - diesen Wert, wird er vom Kernel beendet.</para> - - <note> - <para>Die Rechen<emphasis>zeit</emphasis> wird - limitiert, nicht die prozentuale Prozessorenbenutzung, - wie es in einigen Feldern in &man.top.1; und - &man.ps.1; dargestellt wird.</para> - </note> - </listitem> - </varlistentry> - - <varlistentry> - <term><literal>filesize</literal></term> - - <listitem> - <indexterm><primary>filesize</primary></indexterm> - <indexterm> - <primary>Benutzer einschränken</primary> - <secondary>filesize</secondary> - </indexterm> - - <para>Hiermit lässt sich die maximale Größe einer Datei - bestimmen, die der Benutzer besitzen darf. Im Gegensatz - zu <link linkend="quotas">Festplattenkontingenten</link> - ist diese Beschränkung nur für jede einzelne Datei - gültig und nicht für den Platz, den alle Dateien eines - Benutzers verwenden.</para> - </listitem> - </varlistentry> - - <varlistentry> - <term><literal>maxproc</literal></term> - - <listitem> - <indexterm><primary>maxproc</primary></indexterm> - <indexterm> - <primary>Benutzer einschränken</primary> - <secondary>maxproc</secondary> - </indexterm> - - <para>Das ist die maximale Anzahl von Prozessen, die ein - Benutzer starten darf, und beinhaltet sowohl - Vordergrund- als auch Hintergrundprozesse. Natürlich - darf dieser Wert nicht höher sein als das System-Limit, - das in <varname>kern.maxproc</varname> angegeben ist. - Vergessen Sie auch nicht, dass ein zu kleiner Wert den - Benutzer in seiner Produktivität einschränken könnte; es - ist oft nützlich, mehrfach eingeloggt zu sein, oder - <foreignphrase>Pipelines</foreignphrase> - <footnote> - <para><foreignphrase>Pipeline</foreignphrase> = - <emphasis>Leitung</emphasis>. - Mit <foreignphrase>Pipes</foreignphrase> sind - Verbindungen zwischen zwei Sockets in meistens - zwei verschiedenen Prozessen gemeint.</para> - </footnote> - zu verwenden. Ein paar Aufgaben, wie die Kompilierung - eines großen Programms, starten mehrere Prozesse.</para> - </listitem> - </varlistentry> - - <varlistentry> - <term><literal>memorylocked</literal></term> - - <listitem> - <indexterm><primary>memorylocked</primary></indexterm> - <indexterm> - <primary>Benutzer einschränken</primary> - <secondary>memorylocked</secondary> - </indexterm> - - <para>Dieses Limit gibt an, wie viel virtueller Speicher - von einem Prozess maximal im Arbeitsspeicher festgesetzt - werden kann (siehe auch &man.mlock.2;). Ein paar - systemkritische Programme, wie &man.amd.8;, verhindern - damit einen Systemzusammenbruch, der auftreten könnte, - wenn sie aus dem Speicher genommen werden.</para> - </listitem> - </varlistentry> - - <varlistentry> - <term><literal>memoryuse</literal></term> - - <listitem> - <indexterm><primary>memoryuse</primary></indexterm> - <indexterm> - <primary>Benutzer einschränken</primary> - <secondary>memoryuse</secondary> - </indexterm> - - <para>Bezeichnet den maximalen Speicher, den ein Prozess - benutzen darf und beinhaltet sowohl Arbeitsspeicher-, - als auch Swap- Benutzung. Es ist kein allübergreifendes - Limit für den Speicherverbrauch, aber ein guter - Anfang.</para> - </listitem> - </varlistentry> - - <varlistentry> - <term><literal>openfiles</literal></term> - - <listitem> - <indexterm><primary>openfiles</primary></indexterm> - <indexterm> - <primary>Benutzer einschränken</primary> - <secondary>openfiles</secondary> - </indexterm> - - <para>Mit diesem Limit lässt sich die maximale Anzahl - der von einem Prozess des Benutzers geöffneten Dateien - festlegen. In &os; werden Dateien auch verwendet, um - Sockets und <foreignphrase>IPC</foreignphrase>-Kanäle - <footnote> - <para><foreignphrase>IPC</foreignphrase> steht für - <foreignphrase>Interprocess - Communication</foreignphrase>.</para> - </footnote> - darzustellen. Setzen Sie es deshalb nicht zu niedrig. - Das System-Limit ist im <varname>kern.maxfiles</varname> - &man.sysctl.8; definiert.</para> - </listitem> - </varlistentry> - - <varlistentry> - <term><literal>sbsize</literal></term> - - <listitem> - <indexterm><primary>sbsize</primary></indexterm> - <indexterm> - <primary>Benutzer einschränken</primary> - <secondary>sbsize</secondary> - </indexterm> - - <para>Dieses Limit beschränkt den Netzwerk-Speicher und - damit die mbufs, die ein Benutzer verbrauchen darf. Es - stammt aus einer Antwort auf einen DoS-Angriff, bei dem - viele Netzwerk-Sockets geöffnet wurden, kann aber - generell dazu benutzt werden Netzwerk-Verbindungen zu - beschränken.</para> - </listitem> - </varlistentry> + <indexterm> + <primary>Benutzer einschränken</primary> + <secondary>coredumpsize</secondary> + </indexterm> + <indexterm> + <primary>Benutzer einschränken</primary> + <secondary>cputime</secondary> + </indexterm> + <indexterm> + <primary>Benutzer einschränken</primary> + <secondary>filesize</secondary> + </indexterm> + <indexterm> + <primary>Benutzer einschränken</primary> + <secondary>maxproc</secondary> + </indexterm> + <indexterm> + <primary>Benutzer einschränken</primary> + <secondary>memorylocked</secondary> + </indexterm> + <indexterm> + <primary>Benutzer einschränken</primary> + <secondary>memoryuse</secondary> + </indexterm> + <indexterm> + <primary>Benutzer einschränken</primary> + <secondary>openfiles</secondary> + </indexterm> + <indexterm> + <primary>Benutzer einschränken</primary> + <secondary>sbsize</secondary> + </indexterm> + <indexterm> + <primary>Benutzer einschränken</primary> + <secondary>stacksize</secondary> + </indexterm> - <varlistentry> - <term><literal>stacksize</literal></term> + <table xml:id="resource-limits" frame="none" pgwide="1"> + <title>Ressourcenbeschränkungen für Login-Klassen</title> - <listitem> - <para>Das ist die maximale Größe, auf die der Stack eines - Prozesses heranwachsen darf. Das allein ist natürlich - nicht genug, um den Speicher zu beschränken, den ein - Programm verwenden darf. Es sollte deshalb in - Verbindung mit anderen Limits gesetzt werden.</para> - </listitem> - </varlistentry> - </variablelist> + <tgroup cols="2"> + <thead> + <row> + <entry>Ressourcenbeschränkung</entry> + <entry>Beschreibung</entry> + </row> + </thead> + + <tbody> + <row> + <entry>coredumpsize</entry> + <entry>Das Limit der Größe einer core-Datei, die von + einem Programm generiert wird, unterliegt aus + offensichtlichen Gründen anderen Limits der + Festplattenbenutzung, zum Beispiel + <literal>filesize</literal> oder + Festplattenkontingenten. Es wird oft als weniger + harte Methode zur Kontrolle des + Festplattenplatz-Verbrauchs verwendet. Da Benutzer + die core-Dateien selbst nicht erstellen und sie oft + nicht löschen, kann diese Option davor schützen, dass + kein Festplattenspeicher mehr zur Verfügung steht, + sollte ein großes Programm abstürzen.</entry> + </row> + + <row> + <entry>cputime</entry> + <entry>Die maximale Rechenzeit, die ein Prozess eines + Benutzers verbrauchen darf. Überschreitet ein Prozess + diesen Wert, wird er vom Kernel beendet. Beachten + Sie, dass die Rechen<emphasis>zeit</emphasis> + limitiert wird, nicht die prozentuale + Prozessorenbenutzung, wie es in einigen Feldern von + <command>top</command> und <command>ps</command> + dargestellt wird.</entry> + </row> + + <row> + <entry>filesize</entry> + <entry>Hiermit lässt sich die maximale Größe einer Datei + bestimmen, die der Benutzer besitzen darf. Im + Gegensatz zu <link + linkend="quotas">Festplattenkontingenten</link> ist + diese Beschränkung nur für jede einzelne Datei gültig + und nicht für den Platz, den alle Dateien eines + Benutzers verwenden.</entry> + </row> + + <row> + <entry>maxproc</entry> + <entry>Das ist die maximale Anzahl von Prozessen, die + ein Benutzer starten darf, und beinhaltet sowohl + Vordergrund- als auch Hintergrundprozesse. Dieser + Wert nicht höher sein als das System-Limit, das in + <varname>kern.maxproc</varname> angegeben ist. + Vergessen Sie nicht, dass ein zu kleiner Wert den + Benutzer in seiner Produktivität einschränken könnte, + wenn beispielsweise ein großes Programm übersetzt wird + oder viele Prozesse gestartet sind.</entry> + </row> + + <row> + <entry>memorylocked</entry> + <entry>Dieses Limit gibt an, wie viel virtueller + Speicher von einem Prozess maximal im Arbeitsspeicher + festgesetzt werden kann (siehe auch &man.mlock.2;). + Ein paar systemkritische Programme, wie &man.amd.8;, + verhindern damit einen Systemzusammenbruch, der + auftreten könnte, wenn sie aus dem Speicher genommen + werden.</entry> + </row> + + <row> + <entry>memoryuse</entry> + <entry>Bezeichnet den maximalen Speicher, den ein + Prozess benutzen darf und beinhaltet sowohl + Arbeitsspeicher-, als auch Swap-Benutzung. Es ist + kein allübergreifendes Limit für den + Speicherverbrauch, aber ein guter Anfang.</entry> + </row> + + <row> + <entry>openfiles</entry> + <entry>Mit diesem Limit lässt sich die maximale Anzahl + der von einem Prozess des Benutzers geöffneten Dateien + festlegen. In &os; werden Dateien auch verwendet, um + Sockets und <acronym>>IPC</acronym>>-Kanäle + darzustellen. Setzen Sie es deshalb nicht zu niedrig. + Das System-Limit ist in + <varname>kern.maxfiles</varname> definiert.</entry> + </row> + + <row> + <entry>sbsize</entry> + <entry>Dieses Limit beschränkt den Netzwerk-Speicher, + den ein Benutzer verbrauchen darf. Es kann generell + dazu benutzt werden Netzwerk-Verbindungen zu + beschränken.</entry> + </row> + + <row> + <entry>stacksize</entry> + <entry>Das ist die maximale Größe, auf die der Stack + eines Prozesses heranwachsen darf. Das allein ist + natürlich nicht genug, um den Speicher zu beschränken, + den ein Programm verwenden darf. Es sollte deshalb in + Verbindung mit anderen Limits verwendet + werden.</entry> + </row> + </tbody> + </tgroup> + </table> <para>Beim Setzen von Ressourcenbeschränkungen sind noch andere - Dinge zu beachten. Nachfolgend ein paar generelle Tipps, - Empfehlungen und verschiedene Kommentare.</para> + Dinge zu beachten:</para> <itemizedlist> <listitem> @@ -4082,29 +4017,26 @@ UWWemqWuz3lAZuORQ9KX </listitem> <listitem> - <para>Obwohl das mitgelieferte - <filename>/etc/login.conf</filename> eine Quelle von - vernünftigen Limits darstellt, können nur Sie, der - Administrator, wissen, was für Ihr System angebracht ist. - Ein Limit zu hoch anzusetzen könnte Ihr System für - Missbrauch öffnen, und ein zu niedriges Limit der - Produktivität einen Riegel vorschieben.</para> + <para>Obwohl die voreingestellte + <filename>/etc/login.conf</filename> sinnvolle Limits + enthält, sind sie evtl. nicht für jedes System geeignet. + Ein zu hohes Limit kann das System für Missbrauch anfällig + machen, und ein zu niedriges Limit kann der Produktivität + schaden.</para> </listitem> <listitem> - <para>Benutzer von <application>&xorg;</application> sollten - wahrscheinlich mehr Ressourcen zugeteilt bekommen als - andere Benutzer. <application>&xorg;</application> - beansprucht selbst schon eine Menge Ressourcen, verleitet - die Benutzer aber auch, mehrere Programme gleichzeitig - laufen zu lassen.</para> + <para><application>&xorg;</application> beansprucht selbst + eine Menge Ressourcen und verleitet die Benutzer dazu, + mehrere Programme gleichzeitig laufen zu lassen.</para> </listitem> <listitem> <para>Bedenken Sie, dass viele Limits für einzelne Prozesse gelten und nicht für den Benutzer selbst. Setzt man zum - Beispiel <varname>openfiles</varname> auf 50, kann jeder - Prozess des Benutzers bis zu 50 Dateien öffnen. Dadurch + Beispiel <varname>openfiles</varname> auf + <literal>50</literal>, kann jeder Prozess des Benutzers + bis zu <literal>50</literal> Dateien öffnen. Dadurch ist die maximale Anzahl von Dateien, die von einem Benutzer geöffnet werden können, <literal>openfiles</literal> mal
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201606171701.u5HH1cHU091655>