Main /

Subversion Installieren

Subversion Installieren

/ HomePage / Computer / Software / Programmierung / EntwicklerTools / SubversionInstallieren

Subversion Installieren

Wie man subversion verwendet, steht hier.

Warum noch eine Seite, wie Subversion zu installieren ist?

  • Es gibt für Subversion ein gutes Buch.
  • Es gibt jede Menge Seiten, wo nachzulesen ist, wie es zu installieren ist.

Weil ich Lars mir gerne selbst Notizen machen möchte.

Gentoo

Um subversion mit Gentoo nutzen zu können, muss es installiert werden. Dabei ist es unerheblich, ob selbst ein Server aufgesetzt werden soll oder nicht. Selbst um nur externe Server zu nutzen muss das Paket installiert werden.

 emerge dev-util/subversion

Es sollte auch das USE Flag subversion gesetzt werden in /etc/make.conf.

Subversion Server installieren

  • Wir wollen einen Subversion Server anlegen, der über http: erreichbar ist.
  • Lokal auf dem Subversion Server ist er über file:/// erreichbar.

User und Gruppe anlegen

Ich möchte nicht, das jeder svn Benutzer auch apache Gruppenrechte hat.

 groupadd svn
 useradd -g svn svn

Repository anlegen

Repository anlegen als Benutzer 'svn'

 su - svn
 svnadmin create /usr/svn/<REPOSITORY>
 chmod g+w -R /usr/svn/<REPOSITORY>
 exit

Password anlegen, um Zugriff über http: zu gewährleisten.

 htpasswd2 -c /usr/svn/<REPOSITORY>/conf/svnusers <USERNAME>

Zugriff über https:

  • Es wird eine Datei in /etc/apache2/modules.d/ geben, die ein AuthzSVNAccessFile enthält.
    • grep AuthzSVNAccessFile *.conf
  • In dieser Datei werden die Zugriffsrechte über den Apache geregelt, ein neues Repository muss hier auch bekannt gegeben werden.

für elsni.homenet.org svnadmin create /var/svn/repos/infobox chmod g+w /var/svn/repos/infobox chown apache:svnusers -R /var/svn/repos/infobox

SSL-Client Zertifikate installieren

Damit der svn-client bei einer https-Verbindung nicht ständig nach einer Client-Zertifikatsdatei fragt kann man diese fest einbinden.

man braucht das Server-Zertifikat als .crt oder .pem Datei (sollte beides das gleiche sein) und das Client-Zertifikat als .p12-Datei.

Ein Server-Zertifikat sieht in etwa so aus:

 -----BEGIN CERTIFICATE-----
 MIIDCjCCAnOgAwIBAgIJAJ3uACZVH3/hMA0GCSqGSIb3DQEBBQUAMIGdMQswCQYD
 VQQGEwJERTEQMA4GA1UECAwHR2VybWFueTEQMA4GA1UEBwwHTHVlYmVjazEWMBQG
 A1UECgwNZWxzbmkgcHJpdmF0ZTEaMBgGA1UECwwRZGV2ZWxvcGVyIHNlY3Rpb24x
 GTAXBgNVBAMMEGVsc25pLmdvdGRucy5jb20xGzAZBgkqhkiG9w0BCQEWDGVsc25p
 QHdlYi5kZTAeFw0xMDEyMDkxODE0NTVaFw0xNTEyMDgxODE0NTVaMIGdMQswCQYD
 VQQGEwJERTEQMA4GA1UECAwHR2VybWFueTEQMA4GA1UEBwwHTHVlYmVjazEWMBQG
 A1UECgwNZWxzbmkgcHJpdmF0ZTEaMBgGA+G+9wwRZGV2ZWxvcGVyIHNlY3Rpb24x
 GTAXBgNVBAMMEGVsc25pLmdvdGRucy5jb20xGzAZBgkqhkiG9w0BCQEWDGVsc25p
 QHdlYi5kZTCBnzANdu86GkiG9w0BAQEFAAOBjQAwgYkCgYEAq37xEe7QufA39VUa
 DMT6lPKahc+3qn33s7ZFtqtAekIfXVHVTLGfx0Bbut2Drw7+I+UIKTQsc55fv5XK
 zu2zjtAflcboN4jgQlU6N5Y7trQZTEnBGiHxD3KxO4p8t9ZCTKE7Pbx5OVFnoV2d
 e8Cee0PbRIkE2/haxbzJdPvVnMUCAwEAAaNQME4wHQYDVR0OBBYEFOrlUFI2IKmm
 JTmpYN96SjOv6L56MB8GA1UdIwQYMBaAFOrlUFI2IKmmJTmpYN96SjOv6L56MAwG
 A1UdEwQFMAMBAf8wDQYJKoZIhs9W7nJ20QADgYEADnBYYjoDWLHWkob9XFePfvHJ
 agR56KUsQN/uqI8qfvekqthDTKA2rxw+VQtW0z1eLQnsVHoOpJwkdONVk4evhooe
 Nosk7dLsEmimt40zKsoSr6jZ7w9+XEqTfI3c/hnAOod+Tf3UthXyJZkrw8GnQWi3
 PN+gmeBoOhXaqdaexT0=
 -----END CERTIFICATE-----

Das p12-Client-Zertifikat ist eine Binärdatei. Hat man das p12-Zertifikat nicht, kann man mit firefox per https auf den Subversion-server surfen und das Zertifikat akzeptieren, dann wird es heruntergeladen und im Firefox gespeichert.

Man kann es nun aus dem Firefox exportieren:

Bearbeiten -> Einstellungen -> Erweitert -> Verschlüsselung -> Zertifikate Anzeigen
..dann das entsprechende zertifikat auswählen und exportieren. Schon hat man die benötigte p12-Datei.

In der ~/.subversion/servers trägt man folgendes ein, die Pfade und der Servername des subversion-Servers auf den zugegriffen werden möchte müssen natürlich den eigenen Bedürfnissen angepasst werden.

[groups]
mygroup = svnserver.thedomain.com

[mygroup]
ssl-client-certfile = /usr/local/share/ca-cerificates/client.p12

[global]
ssl-authority-files = /usr/local/share/ca-cerificates/server_cert.pem
store-ssl-client-cert-pp = yes

Danach sollte man mit svn problemlos über https auf sein Repository zugreifen können.

Links

Frische Änderungen | Menü editieren
zuletzt geändert am 07.12.2014 13:19 Uhr von Elsni
Edit Page | Page History