Client Authentifizierung mit Zertifikat als Sicherheitskonzept?!

freedt

New Member
Hi!

Ich wusste nicht so richtig wohin mit dem, was ich will, aber letztendlich läuft es immer auf die Frage der Sicherheit hinaus, deshalb bin ich hier gelandet.

Vielleicht beschreibe ich erstmal, was ich tun möchte: Ich möchte einen Server haben, auf dem ich Dateien versionieren kann (SVN/Git) und mittels redmine ein Ticket System für Dokumentationen und Bug-Tracking zur Verfügung haben.

Es gibt dafür zwar schon spezielle Hoster, die genau das für 10 - 20€ anbieten (zb plan.io), allerdings ist mir das erstens zu teuer und zweitens gefällt mir der Gedanke einfach nicht, dass ich anderen vertrauen muss, wenn es um meine Daten geht. (evtl etwas paranoid, weil die Daten vergleichsweise unwichtig sind)

Deshalb kommt für mich nur ein eigener "Home Server" infrage. Weil ich mich mit dem Thema Sicherheit aber null auskenne, der Server aber auch von spezifischen externen Personen erreichbar sein muss, hab ich mir viele Gedanken gemacht, wie ich das effizient absichern kann, ohne mich wochenlang in das Thema einarbeiten zu müssen, wenn das überhaupt reichen würde. Dabei bin ich jetzt auf folgenden Gedanken gekommen:

Zertifikat-Authentifizierung! Der Server soll ja nur von ganz speziellen Personen, also nicht von einer anonymen Öffentlichkeit erreichbar sein. Deshalb reicht es doch wohl aus, dass jede berechtigte Person ein Zertifikat bekommt und der Server nur Anfragen mit gültigem Zertifikat durchlässt.

So, jetzt Fragen:
  1. Geht das überhaupt, so wie ich mir das vorstelle?
  2. Macht das Sinn? Gibt es etwas effizienteres?
  3. Ist diese Absicherung ausreichend, oder kann mein Server trotzdem noch missbraucht / übernommen / ausspioniert werden?

Hoffe jemand hat Ahnung und kann mir helfen. :)

Beste Grüße
freedt
 
Eine AUthentifizierung per Zertifikat kann man natürlich machen, das ist aber entsprechend aufwendig einzurichten (CA erstellen, Zertifikate erstellen, Sperrliste verwalten, etc.). Wenn der Server bei dir daheim steht, dann könntest du das ein wenig vereinfachen, indem du eine VPN-Lösung einsetzt. OpenVPN beispielsweise nutzt eine zertifikatsbasierte Authentifizierung. Und Zugriff von außerhalb deines Heim-Netzes auf den Server gibt es halt nur per OpenVPN, der Rest wird vom Router geblockt.
Zu deiner Frage, ob der Server damit sicher ist: Nein, wohl eher nicht. Sicherheit ist ein fortwährender Prozess, der gelebt wird. Ein Server ist also nicht mit einmaligen Maßnahmen sicher. Einen Server sicher zu betreiben, da gehört schon einiges an Wissen zu und ich habe ein wenig den Eindruck, daß du bei der Server-Administration derzeit noch einige größere Defizite hast. Bedenke auch den Zeitaufwand für die Pflege des Servers.
 
Hi danton,

viele Dank für deine Antwort! :)

OpenVPN ist auch noch eine Idee, aber ich bezweifle, ob das wirklich etwas vereinfacht, weil mir die Einrichtung auf den ersten Blick mindestens genau so kompliziert erscheint und zweitens einige Personen, die Zugriff brauchen, größere Probleme damit haben werden sich einen VPN Zugang einzurichten als ein Zertifikat zu importieren.

Dass ich nur sehr rudimentäres Grundlagenwissen zum Thema Serversicherheit habe, ist mir klar. Auch dass der Server dann nicht absolut geschützt wäre, sodass niemals etwas passieren könnte. Ich frage mich nur, ob der Schutz ausreichend sein wird, ob das Risiko nach allgemeinem Standard vertretbar ist, oder ob es offensichtliche Mängel gibt, die das System derart unsicher machen, sodass es eben nicht mehr vertretbar ist. Es wird weder ein FTP oder SSH laufen. Der Zugriff auf den Apache läuft nur mit Zertifikat. Da sollte doch eigentlich kaum eine Chance auf einen erfolgreichen Angriff bestehen, oder nicht?

Beste Grüße
freedt
 
Die Einrichtung für "die anderen" isr eigentlich ganz einfach. Meine User müssen nur OpenVPN installieren und erhalten anschließend von mir die notwendigen Dateien (Config und die entsprechenden Zertifikate) und wo sie hin kopiert werden müssen - fertig.
Bedenke auch, daß du mehrere Dienste laufen lassen willst - für die du eigene Authentifizierungsmechanismen hast. SVN oder Git nur über ein Webinterface zugänglich zu machen, ist IMHO ineffizient.
Bezüglich Sicherheit: Du hast einzig das Problem beseitigt, daß ein vorhandener Account per Brute-Force geknackt wird. Wie willst du ohne SSH auf deinen Server, um diesen zu warten, Updates zu installieren, Logs auszuwerten, etc. Klar, jeder Dienst, der nicht läuft, kann nicht als potentielles Einfalltor herhalten. Aber jeder Dienst, der nach außen lauschen muß, ist eins (Stichwort: Sicherheitslücken) - der Linux-Kernel selbst kann auch Lückenhaft sein.
Das Problem dürfte auch weniger sein, wie sicher die Daten auf deinem Server abgelegt sind (du schreibst selber, daß sie eher unwichtig ist), sondern vielmehr, daß der Server unter die Kontrolle zwielichter Gestalten gerät, die ihn dann zum Spammen oder DOSen o.ä. mißbrauchen.
 
Ich würde in deinem Fall (keine Zeit & keine Lust) lieber die 5-10€ Mehrkosten investieren und jemand anderen für die Dienste sorgen lassen.

Meine Meinung ist, dass es bei Servern keine "ausreichende" Sicherheit gibt. Entweder man kümmert sich darum oder eben nicht. Und ob der Schaden vertretbar ist? Das kommt darauf an für was dein Server ohne dein Wissen verwendet wird. SPAM/Filesharing/DDOS Der Möglichkeiten gibt es viele.

Ich hatte hier im Forum einen Beitrag dazu gelesen, finde ihn aber gerade nicht. Aber an diesen Link kann ich mich noch erinnern: serverzeit.de Admins haften

Viele Grüße
Thomas
 
Back
Top