Jan Ulrich Hasecke
2021-04-16 166d185f61afc414d4ca8cea5878cc0e136a493c
commit | author | age
939940 1 .. _kap-benutzerrollen:
JUH 2
0a126d 3 ==============
JUH 4 Benutzerrollen
5 ==============
6
ff7e66 7 Um Dienste, Programme und Dämonprozesse sicher voneinander zu trennen, laufen sie im Debian-Betriebssystem unter verschiedenen Benutzern mit jeweils klar definierten Rechten.
0a126d 8 Dies gilt auch für die Aufgaben, die man als Nutzer der Plattform in seinem Web-Paket erledigt.
JUH 9 Wer mit der Managed Operations Platform Webanwendungen betreibt, muss im Laufe der Zeit zahlreiche Benutzer anlegen.
10 Jeder Benutzer erfüllt eine spezielle Rolle.
11 Die Rollen werden durch die Vergabe von Rechten auf Betriebssystemebene definiert.
12 Für Personen, die bisher noch nicht mit Unix-Systemen und dem Konzept unterschiedlicher Benutzer gearbeitet haben, stellt dieses Mehrbenutzerkonzept am Anfang eine Hürde dar.
13 Ausführliche Unix-Kenntnisse sind nicht erforderlich, um auf der Hostsharing-Plattform Benutzer anzulegen, da das Verwaltungswerkzeug :program:`HSAdmin` diese Aufgabe vereinfacht. 
14 Da in diesem Handbuch die Kenntnis der Rollen an vielen Stellen vorausgesetzt wird, werden sie in diesem Kapitel ausführlich beschrieben.
15
16 .. role:: Mitglied
17
18    Die Rolle *Mitglied* ist abhängig von der Mitgliedschaft und wird beim Eintritt in die Genossenschaft angelegt. 
19    Die Rolle ist technisch unabhängig von anderen Rollen.
20    Nach Austritt aus der Genossenschaft wird die Rolle gelöscht.
21
22    Funktion:
23       Mit dem Mitglieds-Account verwalten Sie Ihre Mitgliedschaft bei Hostsharing.
222551 24       Sie können mit Ihrem Mitglieds-Account Ihre Mitgliedsdaten verwalten und Rechnungen herunterladen.
0a126d 25       Als Reseller können Sie die Rolle nutzen, um die Web-Pakete Ihrer Kunden zu verwalten.
JUH 26
27    Ausstattung:
28       * jeweils nur ein Benutzer mit dieser Rolle pro Mitglied
29       * Benutzername besteht aus drei Buchstaben, z.B.: :term:`xyz`
30       * keine Shell
31       * eigenes Passwort
32
33    Rechte:
34       * kann die :doc:`Web-Pakete</referenz/webpaket/index>` des Mitglieds verwalten
55fea1 35       * kann die Rechte eines :role:`Paket-Admins <Paket-Admin>` annehmen
0a126d 36       * kann Rechnungen herunterladen
JUH 37       * kann Mitgliederdaten (Anschrift etc.) verwalten
38
39 .. role:: Paket-Admin
40
41    Der Paket-Admin wird beim Anlegen eines :doc:`Web-Pakets</referenz/webpaket/index>` eingerichtet.
42
43    Funktion:
44       Mit dem Paket-Admin verwaltet das Mitglied sein Web-Paket.
45       Er legt Benutzer, Datenbanken und Domains an und verwaltet sie.
46
47    Ausstattung:
48       * mehrere Benutzer mit dieser Rolle pro Mitglied möglich
49       * Benutzername besteht aus dem Mitgliedskürzel und der Nummer des Webpakets, z.B.: :term:`xyz00`
50       * der Benutzer hat eine reguläre :term:`shell` z.B. ``/bin/bash``
ff7e66 51
JUH 52         Die Anmeldung als Paket-Admin auf der Plattform erfolgt via :command:`ssh`:
53
54         .. code-block:: console
55
56            $ ssh xyz00@xyz00.hostsharing.net
57            
0a126d 58       * eigenes E-Mail-Postfach
JUH 59       * eigenes Passwort
60    
61    Rechte:
62       * kann :ref:`Domains <kap-ref-domain>`, :role:`Domain-Admins <Domain-Admin>`, :role:`Datenbank-Nutzer` und :ref:`Datenbanken<kap-ref-db>` einrichten, verändern und löschen
55fea1 63       * kann Domains einem :role:`Domain-Admin` zuordnen
0a126d 64       * kann die Rechte anderer Benutzer in seinem Web-Paket annehmen
JUH 65  
66       .. warning:: 
67            Eine Domain kann zwar technisch auf den Account des Paket-Admins aufgeschaltet werden. Aus Sicherheitsgründen empfiehlt es sich aber Domains auf separate Domain-Admins aufzuschalten.
68       
69       Rechte eines anderen Benutzers annehmen:
70       
71       .. code-block:: console
72           
73           $ sudo -u xyz00-abc -i
74       
75       Bei einem Benutzer ohne :term:`shell`:
76       
77       .. code-block:: console
78       
79           $ sudo -u xyz00-abc -s
80    
81
82 .. role:: Domain-Admin
83
84    Funktion:
85       Der Domain-Admin verwaltet seine Domain(s) in einem eigenen Benutzerkonto.
86       Benutzer mit dieser Rolle werden vom :role:`Paket-Admin` angelegt.
87
88    Ausstattung:
89       * hat eine reguläre Shell (z.B. ``/bin/bash``)
90       * hat eine Verzeichnisstruktur für seine Domain(s) unterhalb ``~/doms/``,
91       * besitzt ein eigenes E-Mail-Postfach.
92    
93    Rechte:
7aafd0 94      * kann Sub-Domains anlegen (vgl. :numref:`kap-ref-subdomains`)
JUH 95      * kann die Zonen-Daten einer Domain bearbeiten (vgl. :numref:`kap-ref-zonefile`)
0a126d 96      * kann Dateien und Verzeichnisse in seinem Benutzerkonto anlegen oder ändern
JUH 97
98 .. role:: E-Mail-Benutzer
99
100    Funktion:
32f416 101       Der E-Mail-Benutzer ist ein Unix-Benutzer, der nur über ein Postfach verfügt.
JUH 102       In seinem Benutzerverzeichnis wird beim Anlegen automatisch das Verzeichnis :file:`Maildir` angelegt.
222551 103
0a126d 104    Ausstattung:
55fea1 105       * wird durch den :role:`Paket-Admin` angelegt,
0a126d 106       * hat keine shell (das Programm ``passwd`` wird an Stelle einer shell gestartet).
JUH 107    
108    Rechte:
109       * nur Passwortänderung möglich.
110
111 .. role:: Datenbank-Nutzer
112
113    Funktion: 
114
115       Alle Datenbanken sollten aus Sicherheitsgründen unter dem Account eines
116       gesonderten Datenbank-Nutzers laufen.  
117       Benutzer mit dieser Rolle werden vom :role:`Paket-Admin` eingerichtet.
118       Der Paket-Admin ordnet die Datenbank-Nutzer den verwendeten Datenbanken
119       zu. 
120       Die Datenbank-Systeme selbst haben jeweils ihre eigene Nutzer-Verwaltung, 
121       die unabhängig von der Vergabe von Rechten auf Betriebssystemebene sind.
122    
123    Rechte:
124       * Die jeweils zugewiesenen Rechte an einer oder mehreren :doc:`Datenbanken<../datenbanken/index>`.
125
042d17 126 .. role:: Reseller-ID
0a126d 127
042d17 128    Dies ist ein Benutzerkonto für die Verwaltung von Domains (Registrierung, Transfer, DNS-Server etc.) im Domainbestellsystem.
0a126d 129    Der Account: 
JUH 130    
131    * ist initial vorhanden,
042d17 132    * hat das Namensschema hs-xyz,
0a126d 133    * hat ein eigenes Passwort.
JUH 134    
55fea1 135    Rechte:   
0a126d 136    * Domains bestellen, kündigen, transferieren
JUH 137    * Inhaberdaten ändern
138    * Kontaktdaten ändern
139    * Handle-Verwaltung
140      
141    Weitere Informationen zum Domain-Bestell-System unter :doc:`Domainverwaltung<../domain/domainverwaltung>`.
bfd6fa 142
166d18 143 .. _kap-benutzerrechte:
JUH 144    
bfd6fa 145 ==============
JUH 146 Benutzerrechte
147 ==============
148
149 HSAdmin bietet uns die Möglichkeit, dem Benutzer eine Login-Shell für interaktive Sitzungen zuzuordnen oder genau dies zu verhindern.
150 Wir haben die Wahl zwischen den Kommandointerpretern :program:`bash`, :program:`csh`, :program:`ksh`, :program:`tcsh` oder :program:`zsh` und den Programmen :program:`false`, :program:`passwd` und :program:`scponly`.
151 Abb. :numref:`fig-hsadmin-shell` zeigt das entsprechende Menü.
152
153 .. _fig-hsadmin-shell:
154
155 .. figure:: ../../images/hsadmin-benutzershells.*
156    :width: 100%
157
158    Das Auswahlmenü mit den Shell- und Kommando-Interpretern.
159
160
161 /bin/false
162     Benutzer, denen das Programm :program:`/bin/false` als Shell zugeordnet wird, können sich nicht in ihrem Account einloggen und eine interaktive Sitzung starten.
163     Diese Einstellung eignet sich für Systembenutzer, die Programme im Webpaket ausführen. sich aber nicht von außen einloggen sollen.
164     Dies können auch Mail-Benutzer sein.
165 /bin/bash
166     Die `Bourne-Again-Shell <https://manpages.debian.org/buster/bash/bash.1.en.html>`_.
167     Auf vielen Linuxsystemen ist dies die Standard-Shell.
168 /bin/csh
169     Die `C-Shell <https://manpages.debian.org/buster/csh/csh.1.en.html>`_.
170 /bin/ksh
171     Die `Korn-Shell <https://manpages.debian.org/buster/ksh/ksh.1.en.html>`_.
172 /bin/tcsh
173     Eine `C-Shell <https://manpages.debian.org/buster/tcsh/tcsh.1.en.html>`_ mit Erweiterungen.
174 /bin/zsh
175     Die `Z-Shell <https://manpages.debian.org/buster/zsh-common/zsh.1.en.html>`_.
176 /usr/bin/passwd
177     Benutzer, denen das Programm :program:`/usr/bin/passwd` zugeordnet wird, können beim Versuch, sich mit :program:`ssh` einzuloggen, ihr Passwort ändern.
178     Eine interaktive Sitzung können sie jedoch nicht starten.
179     Dies ist sinnvoll, um Benutzern ein größeres Maß an Vertraulichkeit ihrer Kommunikation zu ermöglichen.
180     Der Paket-Admin setzt für den E-Mail-Benutzer zwar ein initiales Passwort, der Benutzer kann dies aber sogleich ändern, sodass der Paket-Admin den E-Mail-Verkehr des Benutzers nicht unbemerkt mitlesen kann.
181 /usr/bin/scponly
182     Diese Zuordnung ermöglicht dem Benutzer den Gebrauch der Programme :program:`scp` und :program:`sftp`.
183     Eine interaktive Sitzung ist nicht möglich.
184