[svnbook] r4129 committed - Translation of "Tunneling over SSH". Closes ticket #314 (cf....
svnbook at googlecode.com
svnbook at googlecode.com
Tue Nov 1 08:05:32 CDT 2011
Revision: 4129
Author: jmfelderhoff at gmx.eu
Date: Tue Nov 1 06:04:29 2011
Log: Translation of "Tunneling over SSH". Closes ticket #314 (cf.
http://www.svnbook.de/ticket/314).
http://code.google.com/p/svnbook/source/detail?r=4129
Modified:
/branches/1.5/de/book/ch06-server-configuration.xml
=======================================
--- /branches/1.5/de/book/ch06-server-configuration.xml Fri Oct 14 05:34:21
2011
+++ /branches/1.5/de/book/ch06-server-configuration.xml Tue Nov 1 06:04:29
2011
@@ -2283,7 +2283,7 @@
of the project's users already have system accounts and the
ability to <quote>SSH into</quote> the server machine.</para>
-->
- <para>Die Eingebaute Authentifizierung (und die
+ <para>Die eingebaute Authentifizierung (und die
SASL-Unterstützung) von <command>svnserve</command> kann sehr
praktisch sein, da es die Notwendigkeit echter Systemkonten
vermeidet. Andererseits haben einige Administratoren bereits
@@ -2332,21 +2332,22 @@
of the new revision.</para>
-->
<para>In diesem Beispiel ruft der Subversion-Client einen
- lokalen
- <command>ssh</command> process, connecting to
- <literal>host.example.com</literal>, authenticating as the
- user <literal>harryssh</literal> (according to SSH user
- configuration), then spawning a private
- <command>svnserve</command> process on the remote machine
- running as the user <literal>harryssh</literal>. The
- <command>svnserve</command> command is being invoked in tunnel
- mode (<option>-t</option>), and its network protocol is being
- <quote>tunneled</quote> over the encrypted connection by
- <command>ssh</command>, the tunnel agent.
- If the client performs a commit, the authenticated username
- <literal>harryssh</literal> will be used as the author
- of the new revision.</para>
-
+ lokalen <command>ssh</command>-Prozess auf, der sich mit
+ <literal>host.example.com</literal> verbindet, sich (gemäß der
+ SSH-Benutzerkonfiguration) als Benutzer
+ <literal>harryssh</literal> authentifiziert und dann auf dem
+ entfernten Rechner einen privaten
+ <command>svnserve</command>-Prozess unter der Benutzerkennung
+ <literal>harryssh</literal> startet. Der Befehl
+ <command>svnserve</command> wird im Tunnelmodus
+ (<option>-t</option>) aufgerufen und dessen Netzprotokoll wird
+ über die durch den Tunnelagenten <command>ssh</command>
+ verschlüsselte Verbindung <quote>getunnelt</quote>. Falls der
+ Client eine Übergabe macht, wird der authentifizierte
+ Benutzername <literal>harryssh</literal> als Autor der neuen
+ Revision verwendet.</para>
+
+<!--
<para>The important thing to understand here is that the
Subversion client is <emphasis>not</emphasis> connecting to a
running <command>svnserve</command> daemon. This method of
@@ -2355,7 +2356,17 @@
<command>ssh</command> to spawn a temporary
<command>svnserve</command> process, which then terminates
when the network connection is closed.</para>
-
+-->
+ <para>An dieser Stelle ist es wichtig, zu verstehen, dass der
+ Subversion-Client sich <emphasis>nicht</emphasis> mit einem
+ laufendenden <command>svnserve</command>-Dämonen verbindet.
+ Diese Zugriffsmethode benötigt keinen Dämonen und merkt auch
+ nicht, wenn einer vorhanden ist. Sie verlässt sich vollständig
+ auf die Fähigkeit von <command>ssh</command>, einen temporären
+ <command>svnserve</command>-Prozesses zu starten, der nach dem
+ Schließen der Netzverbindung beendet wird.</para>
+
+<!--
<para>When using <literal>svn+ssh://</literal> URLs to access a
repository, remember that it's the <command>ssh</command>
program prompting for authentication, and
@@ -2371,7 +2382,27 @@
use a separate SSH password-caching tool such as
<command>ssh-agent</command> on a Unix-like system, or
<command>pageant</command> on Windows.</para>
-
+-->
+ <para>Denken Sie daran, dass beim Zugriff auf ein Projektarchiv
+ über URLs der Form <literal>svn+ssh://</literal> die Abfrage
+ zur Authentifikation von <command>ssh</command> kommt und
+ <emphasis>nicht</emphasis> vom <command>svn</command>-Client.
+ Das bedeutet, dass es keine automatische Passwortspeicherung
+ gibt (siehe <xref
+ linkend="svn.serverconfig.netmodel.credcache"/>). Der
+ Subversion-Client stellt häufig mehrere Verbindungen mit dem
+ Projektarchiv her, wenngleich Benutzer das wegen der
+ zwischengespeicherten Passwörter normalerweise gar nicht
+ mitbekommen. Jedoch könnten Benutzer bei Verwendung von
+ <literal>svn+ssh://</literal>-URLs durch die wiederholten
+ Passwortanfragen für ausgehende Verbindungen von
+ <command>ssh</command> etwas genervt sein. Die Lösung besteht
+ darin, ein zusätzliches Passwort-Speicherungs-Werkzeug wie
+ etwa <command>ssh-agent</command> auf einem Unix-ähnlichen
+ System oder <command>pageant</command> auf Windows zu
+ verwenden.</para>
+
+<!--
<para>When running over a tunnel, authorization is primarily
controlled by operating system permissions to the repository's
database files; it's very much the same as if Harry were
@@ -2392,7 +2423,31 @@
the repository database.</para>
</footnote>
</para>
-
+-->
+ <para>Bei der Verwendung eines Tunnels wird die Autorisierung
+ größtenteils durch die Betriebssystemberechtigungen auf die
+ Datenbankdateien des Projektarchivs gesteuert, als ob
+ Harry direkt über einen <literal>file://</literal>-URL auf das
+ Projektarchiv zugreifen würde. Falls mehrere Benutzer direkt
+ auf das Projektarchiv zugreifen sollen, möchten Sie sie
+ vielleicht in eine gemeinsame Gruppe zusammenfassen; Sie
+ sollten auch auf umasks achten (lesen Sie auf alle Fälle <xref
+ linkend="svn.serverconfig.multimethod"/> später in diesem
+ Kapitel). Doch selbst beim Tunneln können Sie immer noch die
+ Datei <filename>svnserve.conf</filename> zum Blockieren des
+ Zugriffs verwenden, indem Sie einfach <literal>auth-access =
+ read</literal> oder <literal>auth-access = none</literal>
+ setzen.
+ <footnote>
+ <para>Beachten Sie, dass die Verwendung irgendwelcher
+ durch <command>svnserve</command> sichergestellten
+ Zugriffskontrollen sinnlos ist, da der Benutzer ohnehin
+ direkten Zugriff auf die Projektarchiv-Datenbank
+ hat.</para>
+ </footnote>
+ </para>
+
+<!--
<para>You'd think that the story of SSH tunneling would end
here, but it doesn't. Subversion allows you to create custom
tunnel behaviors in your runtime <filename>config</filename>
@@ -2405,12 +2460,28 @@
In the <literal>[tunnels]</literal> section of your
<filename>config</filename> file, simply define it like
this:</para>
+-->
+ <para>Vielleicht glauben Sie, dass die Geschichte mit dem
+ SSH-Tunneln hier endet. Es ist aber nicht so. Subversion
+ erlaubt es Ihnen, selbstdefinierte Verhaltensweisen für das
+ Tunneln in Ihrer Laufzeit-Datei <filename>config</filename>
+ zu definieren (siehe <xref linkend="svn.advanced.confarea"/>).
+ Nehmen wir beispielsweise an, dass Sie RSH statt SSH verwenden
+ möchten.
+ <footnote>
+ <para>Wir empfehlen das natürlich nicht, da RSH deutlich
+ unsicherer ist als SSH.</para>
+ </footnote>
+ Definieren Sie einfach im Abschnitt
+ <literal>[tunnels]</literal> Ihrer Datei
+ <filename>config</filename>:</para>
<screen>
[tunnels]
rsh = rsh
</screen>
+<!--
<para>And now, you can use this new tunnel definition by using a
URL scheme that matches the name of your new variable:
<literal>svn+rsh://host/path</literal>. When using the new
@@ -2421,12 +2492,27 @@
will also include that in its command (<userinput>rsh
username at host svnserve -t</userinput>). But you can define new
tunneling schemes to be much more clever than that:</para>
+-->
+ <para>Ab jetzt können Sie diese neue Tunneldefinition
+ verwenden, indem Sie ein URL-Schema benutzen, welches dem
+ Namen Ihrer neuen Vartiablen entspricht:
+ <literal>svn+rsh://host/path</literal>. Bei Verwendung des
+ neuen URL-Schemas führt der Subversion-Client im Hintergrund
+ eigentlich den Befehl <userinput>rsh host svnserve
+ -t</userinput> aus. Falls Sie einen Benutzernamen im URL
+ angeben (z.B.
+ <literal>svn+rsh://username@host/path</literal>), wird der
+ Client das auch mit in seinen Befehl übernehmen
+ (<userinput>rsh username at host svnserve -t</userinput>). Sie
+ können jedoch auch viel raffiniertere neue Tunnel-Schemata
+ definieren:</para>
<screen>
[tunnels]
joessh = $JOESSH /opt/alternate/ssh -p 29934
</screen>
+<!--
<para>This example demonstrates a couple of things. First, it
shows how to make the Subversion client launch a very specific
tunneling binary (the one located at
@@ -2436,7 +2522,18 @@
particular SSH binary with <option>-p 29934</option> as
arguments—useful if you want the tunnel program to
connect to a nonstandard port.</para>
-
+-->
+ <para>Dieses Beispiel verdeutlicht einige Dinge. Erstens zeigt
+ es, wie der Subversion-Client angewiesen wird, ein bestimmtes
+ Tunnelprogramm (<filename>/opt/alternate/ssh</filename>) mit
+ speziellen Optionen zu starten. In diesem Fall würde der
+ Zugriff auf einen URL wie <literal>svn+joessh://</literal> das
+ bestimmte SSH-Programm mit den Argumenten <option>-p
+ 29934</option> aufrufen – was nützlich ist, wenn Sie
+ möchten, dass sich das Tunnelprogramm mit einem
+ Nicht-Standard-Port verbindet.</para>
+
+<!--
<para>Second, it shows how to define a custom environment
variable that can override the name of the tunneling program.
Setting the <literal>SVN_SSH</literal> environment variable is
@@ -2450,6 +2547,21 @@
variable—<command>$JOESSH</command> would be executed
instead of <userinput>/opt/alternate/ssh -p
29934</userinput>.</para>
+-->
+ <para>Zweitens zeigt es, wie eine eigene Umgebungsvariable
+ definiert werden kann, die den Namen des Tunnelprogramms
+ überschreibt. Durch das Setzen der Umgebungsvariablen
+ <literal>SVN_SSH</literal> besteht eine bequeme Methode, den
+ Standard-SSH-Tunnelagenten zu ersetzen. Falls Sie jedoch für
+ unterschiedliche Server verschiedene Werte überschreiben
+ müssen, wobei jeder vielleicht einen anderen Port verwendet
+ oder unterschiedliche Optionen an SSH übergeben werden müssen,
+ können Sie die in diesem Beispiel vorgestellte Methode
+ verwenden. Falls wir nun die Umgebungsvariable
+ <literal>JOESSH</literal> setzten, würde deren Wert den
+ gesamten Wert der Tunnelvariablen überschreiben – statt
+ <userinput>/opt/alternate/ssh -p 29934</userinput> würde
+ <command>$JOESSH</command> ausgeführt.</para>
</sect2>
More information about the svnbook-dev
mailing list