Was ist Umask und wie verwendet man es auf einem VPS?

Umask auf einem VPS (head image)

Umask: Was ist es und warum ist es so wichtig? 

Umask ist eine wichtige Komponente, mit der die Standardberechtigungen für neu erstellte Dateien und Verzeichnisse beeinflusst werden kann. Das Verständnis von Umask ist wichtig für die effektive Verwaltung von Dateiberechtigungen Zudem ist es relevant für die Gewährleistung der Sicherheit und des Datenschutzes deiner Daten. Erfahre in diesem Artikel, wie du Umask auf einem VPS installieren, konfigurieren und verwenden kannst.

Einführung in Umask und seine Rolle bei der Festlegung von Standardberechtigungen

Der Begriff „Umask“ steht für „user file-creation mode mask“. Es ist eine systemweite Einstellung, die eine Maske von Berechtigungen definiert. Diese werden beim Erstellen neuer Dateien und Verzeichnisse von den Standardberechtigungen entfernt. Mit anderen Worten: Umask bestimmt, welche Berechtigungen Dateien und Verzeichnissen nicht automatisch standardmäßig gewährt werden. 

Wenn du eine neue Datei oder ein neues Verzeichnis erstellst, beginnt das System mit einer Reihe von Standardberechtigungen. In der Regel sind das Lese- (r), Schreib- (w) und Ausführungsberechtigungen (x) für den Eigentümer sowie Lese- und Ausführungsberechtigungen für die Gruppe und andere gewähren. Der Umask-Wert wird dann von diesen Standardberechtigungen abgezogen, sodass die tatsächlichen Berechtigungen für das neu erstellte Objekt festgelegt werden.

Wie sich Umask-Werte auf die Berechtigungseinstellungen auswirken

Umask-Werte werden als Oktalzahlen dargestellt, die den zu entfernenden Berechtigungen entsprechen. Jede Ziffer im Umask-Wert steht für eine Reihe von Berechtigungen für den Eigentümer, die Gruppe und andere.  

Die drei Ziffern im Umask-Wert entsprechen den folgenden Berechtigungen: 

1. Benutzer (Eigentümer): Die erste Ziffer steht für die Berechtigungen, die dem Eigentümer der Datei oder des Verzeichnisses entfernt werden. 

2. Gruppe: Die zweite Ziffer steht für die Berechtigungen, die der Gruppe entfernt werden. 

3. Andere: Die dritte Ziffer steht für die Berechtigungen, die anderen Benutzern entzogen werden sollen (Benutzern, die nicht der Eigentümer oder die Gruppe sind). 

Jede Ziffer des Umask-Wertes wird berechnet, indem die gewünschten Berechtigungen von 7 abgezogen wird (was der vollen Berechtigung entspricht). Das funktioniert folgendermaßen: 

Wenn du einen Umask-Wert von 022 einstellst, bedeutet dies:

  – Der Eigentümer (Benutzer) hat die volle Berechtigung (7).

  – Die Gruppe und andere haben Leserechte (2). 

Wenn du willst, kannst du einen Umask-Rechner verwenden, um die genauen Umask-Werte über ein Point-and-Click-Menü zu berechnen. 

Wenn also eine neue Datei oder ein neues Verzeichnis erstellt wird, werden die Standardberechtigungen dadurch entsprechend dem Umask-Wert angepasst. In diesem Beispiel haben neue Dateien die Berechtigung 644 (rw-r-r-) und neue Verzeichnisse die Berechtigung 755 (rwxr-xr-x).

Benutzer konfigurieren Umask-Werte normalerweise in ihren Shell-Profil-Konfigurationsdateien (z. B. .bashrc, .bash_profile oder .profile). Darüber hinaus kannst du systemweite Umask-Werte in Systeminitialisierungsskripten festlegen.

Das Verständnis und die richtige Konfiguration von Umask sind entscheidend für die Sicherheit und den Datenschutz deines Systems, da es die anfänglichen Berechtigungen für neu erstellte Dateien und Verzeichnisse steuert. Das Einstellen eines geeigneten Umask-Wertes stellt sicher, dass Dateien von Anfang an mit der gewünschten Zugriffskontrolle erstellt werden.

Oktale Schreibweise

Oktale Schreibweise: Bei dieser Methode werden drei Ziffern (0-7) verwendet. Diese stellen die Berechtigungen für den Eigentümer, die Gruppe und andere dar. Jede Ziffer entspricht einer Lese- (4), Schreib- (2) und Ausführungsberechtigung (1).

Zahlen (0-7) Entsprechende Berechtigungen
Keine Berechtigungen 
Ausführberechtigung (1) 
Schreibberechtigung (2) 
Schreib– und Ausführberechtiung (2+1) 
Leseberechtigung(4) 
Lese– und Ausführberechtigung (4+1) 
Lese– und Schreibberechtigung (4+2) 
Lese-, Schreib– und Ausführberechtigung (4+2+1) 

Umask installieren

Normalerweise ist es nicht notwendig, das Dienstprogramm Umask zu installieren, da die meisten Linux-Distributionen es bereits als Standardbefehl in das System integrieren. Falls es auf deinem Virtual Private Server (VPS) nicht verfügbar ist, kannst du überprüfen, ob es in deinem Paketmanager verfügbar ist und es mit den folgenden Schritten installieren:

Paketinformationen aktualisieren: Vor der Installation von Software empfehlen wir, die Informationen deines Paketmanagers zu aktualisieren, um sicherzustellen, dass du mit den neuesten verfügbaren Paketen arbeitest. Verwende hierfür den entsprechenden Befehl für deinen Paketmanager:

Für Debian/Ubuntu-basierte Systeme:

sudo apt update 

Für Red Hat/CentOS-bbasierte Systeme:

sudo yum update 

Verfügbarkeit prüfen: Als nächstes solltest du überprüfen, ob das Dienstprogramm Umask im Repository deines Paketmanagers verfügbar ist. Um zu überprüfen, ob es bereits installiert ist, kannst du den folgenden Befehl verwenden:

umask --help 

Falls Umask bereits installiert ist, zeigt das System die Syntax dieses Befehls an. Andernfalls wird die Fehlermeldung „Befehl nicht gefunden“ nicht ausgegeben.

Umask installieren (falls nicht gefunden): Wenn du das Umask-Programm nicht finden kannst oder nicht installiert hast, kannst du versuchen, es mit deinem Paketmanager zu installieren:

Für Debian/Ubuntu-basierte Systeme: 

sudo apt install umask 

Für Red Hat/CentOS-basierte Systeme:

sudo yum install umask 

Bei diesen Befehlen wirst du aufgefordert, die Installation zu bestätigen. Tu das, indem du Y oder ‚Enter‘ eingibst, wenn du dazu aufgefordert wirst.

Umask-Werk überprüfen

Um Berechtigungen effektiv zu verwalten und einen Einblick zu erhalten, wie Dateien und Verzeichnisse mit bestimmten Standardberechtigungen erstellt werden, ist es wichtig, den aktuellen Umask-Wert zu überprüfen. Mit dem Befehl umask ist genau das möglich.

Wie man den aktuellen Umask-Wert überprüfen kann

Um den aktuellen Umask-Wert zu überprüfen, öffne einfach das Terminal und führe den folgenden Befehl aus:

umask 

Mit diesem Befehl zeigst du den Wert im oktalen Format an. Dieser gibt die Berechtigungen an, die beim Erstellen neuer Dateien und Verzeichnisse von den Standardberechtigungen entfernt werden sollen.

Bitte beachte, dass Benutzer den Umask-Wert häufig in der Konfigurationsdatei ihres Shell Profils (z. B. .bashrc, .bash_profile oder .profile) oder in systemweiten Initialisierungsskripten konfigurieren. Daher kann der Umask-Wert für verschiedene Benutzer auf demselben System variieren.

Umask festlegen

Wenn du einen eigenen Umask-Wert festlegst, kannst du die Standardberechtigungen steuern. Diese werden neu erstellten Dateien und Verzeichnissen für deinen Benutzer oder deine Sitzung zugewiesen. Diese Anpassung ist wichtig, um die Zugriffskontrolle an deine speziellen Bedürfnisse anzupassen. In diesem Kapitel erfährst du hierzu, wie man einen benutzerdefinierten Umask-Wert für einen Benutzer oder eine Sitzung festlegt. In diesem Sinne geben wir Code-Beispiele für diese Vorgehensweise.

Festlegen eines benutzerdefinierten Umask-Wertes für Benutzer oder Sitzungen

Um einen individuellen umask-Wert festzulegen, musst du in der Regel die Konfigurationsdatei deines Shell Profils (z. B. .bashrc, .bash_profile oder .profile) ändern, um sicherzustellen, dass der gewünschte Umask-Wert immer dann gilt, wenn du eine neue Sitzung startest. So geht das:

1. Öffne deinen bevorzugten Texteditor.

2. Bearbeite deine Shell Profil Konfigurationsdatei. Abhängig von deiner Shell, kannst du einen der folgenden Befehle verwenden: 

Für Bash: 

nano ~/.bashrc 

Für Zsh: 

nano ~/.zshrc 

Wenn du andere Shells verwendest, sieh in der spezifischen Konfigurationsdatei deiner Shell nach.

3. Füge die folgende Zeile hinzu, um deinen eigenen Umask-Wert zu setzen:

umask new_umask_value 

Ersetze new_umask_value durch die oktale Darstellung des Umask-Wertes, den du setzen willst. Um beispielsweise einen umask-Wert von 0022 zu setzen, würde das so aussehen:

umask 0022 

4. Speichere die Änderungen und beende deinen Texteditor.

5. Um den neuen Umask-Wert auf die aktuelle Sitzung anzuwenden, kann man sich entweder ab- und wieder anmelden oder den folgenden Befehl im Terminal ausführen: 

source ~/.bashrc 

(Ersetze ~/.bashrc durch den Pfad zu deiner spezifischen Shell-Konfigurationsdatei, falls nötig).

Schutz von vertraulichen Daten durch Umask-Anpassungen

Die Sicherung vertraulicher Dateien mit Umask beinhaltet das Festlegen strenger Berechtigungen. Diese schränken den Zugriff auf die Datei so ein, dass nur der Dateibesitzer darauf zugreifen kann. So geht’s:

1. Öffne die Konfigurationsdatei deines Shell Profils (z. B. ~/.bashrc, ~/.zshrc, oder ähnlich) mit einem Texteditor: 

nano ~/.bashrc 

2. Füge die folgende Zeile hinzu, sodass eine restriktive Umask, wie z. B. 0077, für die Sitzung deines Benutzers festgelegt wird:

umask 0077 

3. Speichere die Änderungen und beende den Texteditor.

4. Um die neue Umask-Einstellung auf die laufende Sitzung anzuwenden, melde dich entweder ab und melde dich erneut an oder führe diesen Befehl aus: 

source ~/.bashrc 

Mit dieser Einstellung haben alle Dateien oder Verzeichnisse, die du erstellst, Berechtigungen, die es nur dir als Eigentümer erlauben, darauf zuzugreifen und sie zu ändern. Andere, einschließlich Gruppenmitglieder oder Benutzer auf demselben System, haben keinen Zugriff auf diese vertraulichen Dateien. Hierdurch entsteht eine zusätzliche Sicherheitsebene für deine vertraulichen Daten.

Die Verwendung von Umask auf diese Weise ist eine wirksame Methode, um sicherzustellen, dass vertrauliche Dateien privat und sicher bleiben und das Risiko eines unbefugten Zugriffs oder einer versehentlichen Datenpreisgabe verringert wird.

Fazit

Zusammenfassend lässt sich sagen, dass Umask eine entscheidende Komponente bei der Verwaltung von Dateiberechtigungen auf einem System ist. Sie spielt eine entscheidende Rolle bei der Festlegung der Standardberechtigungen, die neu erstellten Dateien und Verzeichnissen zugewiesen werden. Indem bestimmte Berechtigungen von den Standardeinstellungen abgezogen werden, hilft Umask bei der Kontrolle des Zugriffs und der Sicherheit zum Zeitpunkt der Erstellung.  

Durch das Verständnis der Umask-Werte, die in Oktalschreibweise dargestellt werden, können Benutzer die anfänglichen Berechtigungen für Dateien und Verzeichnisse konfigurieren. Diese Kontrolle ist wichtig, da somit die Sicherheit und der Schutz sensibler Daten gewährleistet wird. Durch die Anpassung der Umask-Werte mit Hilfe von Konfigurationsdateien im Shell Profil können die Benutzer die Standardberechtigungen an ihre spezifischen Bedürfnisse anpassen. 

Außerdem wird durch die Möglichkeit, vertrauliche Dateien mit einer strengen Umask-Einstellung wie 0077 zu schützen, sichergestellt, dass nur der Eigentümer der Datei auf diese Dateien zugreifen und sie ändern kann, was die Datensicherheit erhöht. Durch die Verwendung von Umask wird das Risiko eines unbefugten Zugriffs oder einer versehentlichen Preisgabe vertraulicher Informationen verringert. 

 

Nach oben scrollen