Ich habe gerade einen neuen, unterprivilegierten "Desktop-Benutzer" hinzugefügt und war überrascht, dass er die Dateien in meinem Home-Ordner sehen kann.
Was ist der Grund, um solche laxen Berechtigungen einzurichten?
Ich habe gerade einen neuen, unterprivilegierten "Desktop-Benutzer" hinzugefügt und war überrascht, dass er die Dateien in meinem Home-Ordner sehen kann.
Was ist der Grund, um solche laxen Berechtigungen einzurichten?
Antworten:
In Public
Ihrem Basisverzeichnis ( /home/user
) befindet sich ein Ordner, in dem Sie Dateien für andere Benutzer freigeben können. Wenn ein anderer Benutzer auf diesen Public
Ordner zugreifen möchte , sollte das Ausführungsbit für die Welt im Basisverzeichnis festgelegt werden.
Wenn Sie anderen nicht erlauben müssen, auf Ihren privaten Ordner zuzugreifen (andere Personen oder Benutzer wie www-data
bei einem Webserver), können Sie chmod o-rwx "$HOME"
"andere" verwenden (Lese- / Schreib- / Ausführungsrechte entfernen, chmod 750 "$HOME"
da die Standardberechtigung 750 beträgt) ). Andernfalls sollten Sie auch die umask
Einstellung ändern , um zu verhindern, dass neu erstellte Dateien standardmäßig Leseberechtigungen für die Welt erhalten.
Bearbeiten Sie für eine systemweite Konfiguration /etc/profile
; Benutzereinstellungen können in konfiguriert werden ~/.profile
. Ich bevorzuge die gleiche Richtlinie für alle Benutzer, daher bearbeite ich die /etc/profile
Datei und füge die Zeile an:
umask 027
Sie müssen sich erneut anmelden, um diese Änderungen zu übernehmen, es sei denn, Sie befinden sich in einer Shell. In diesem Fall können Sie umask 027
in der Shell ausgeführt werden.
Um die vorhandenen Berechtigungen zu korrigieren, müssen Sie die Lese- / Schreib- / Ausführungsberechtigungen von anderen entfernen:
chmod -R o-rwx ~
Wenn Sie nun den ~/Public
Ordner für alle freigeben möchten, führen Sie die folgenden Befehle aus:
chmod o+x ~
- Erlaube jedem, in das Verzeichnis ( x
) abzusteigen , bekomme aber keine Verzeichnisliste ( r
sollte nicht hinzugefügt werden)find ~/Public -type f -exec chmod o+r {} \;
- Erlauben Sie jedem, die Dateien einzulesen ~/Public
find ~/Public -type d -exec chmod o+rx {} \;
- Erlauben Sie jedem, in Verzeichnisse zu gelangen und deren Inhalte aufzulistenWenn Sie GNU-Coreutils verwenden (z. B. unter Ubuntu, nicht nur auf einem eingebetteten System mit busybox
), können die beiden vorherigen Befehle mithilfe von find
und chmod
durch diesen einzigen Befehl ersetzt werden, der Ordner und Dateien rekursiv lesbar macht (und zusätzlich den Befehl execute (descend) hinzufügt. Bit für Verzeichnisse nur ):
chmod -R o+rX ~/Public
Laut einem Mitarbeiter von Ubuntuforms.org soll es einfacher sein, Dateien für neue Benutzer freizugeben .
Sie können die Berechtigung auf 700 oder 750 ändern, wenn Sie nicht möchten, dass die Dateien von anderen gelesen und ausgeführt werden können.
Befehl ist:
chmod 750 $HOME
Hinweis: Ubuntu Standard ist 755
"Die Mehrheit der Benutzer von Ubuntu-Systemen hat entweder die ausschließliche Verwendung der Maschine (persönlicher Laptop) oder teilt sie mit Freunden und Verwandten. Wir gehen davon aus, dass die Personen, die die Maschine teilen, entweder vertrauenswürdig sind oder in der Lage sind, die Maschine zu hacken (booten) von USB!) trivial. Als Ergebnis gibt es wenig bis gar keinen Nutzen "
... diese Berechtigungen zu entfernen.
Sie können den Abschnitt Benutzerverwaltung im Ubuntu Server-Handbuch lesen, der die erforderlichen Details enthält. Der Abschnitt über die Sicherheit von Benutzerprofilen wird wahrscheinlich Ihre Fragen beantworten - offiziell.
Ich denke, Lekensteyns Antwort kann verbessert werden, indem die letzten beiden Suchbefehle mit der Option -X durch chmod ersetzt werden (beachten Sie das große X). Die beiden Suchbefehle können durch ersetzt werden
chmod -R o+rX ~/Public
Dies unterscheidet in geeigneter Weise zwischen Dateien und Verzeichnissen, hat jedoch den zusätzlichen Effekt, dass andere ausführbare Dateien ausführen können.
Da Sie die Privatsphäre interessiert (nach den verwendeten Tags zu urteilen), ist es sehr wahrscheinlich, dass die Einstellungsberechtigungen nicht ausreichen (siehe die Antwort von ignis ). Die Antwort könnte in etwa so aussehen wie in einem verschlüsselten Home-Verzeichnis . Diese Lösung wurde speziell gegen den Angriff eines anderen Benutzers eines Computers entwickelt. Es ist natürlich nicht möglich, einen anderen Benutzer daran zu hindern, Ihre Dateien zu beschädigen (indem Sie einfach das ~/.Private
Verzeichnis entfernen und so alle Ihre Dateien löschen), aber er kann das Verzeichnis nicht mounten und die Dateien ohne Ihr Kennwort anzeigen.
Der einfachste Weg, dies zu erreichen, ist während des Installationsprozesses, es gibt ein Kontrollkästchen mit der Aufschrift "Verschlüsseln Sie Ihr Home-Verzeichnis" und Sie müssen dies auswählen.
Da es unwahrscheinlich ist, dass Sie nur aus diesem Grund eine Neuinstallation durchführen möchten (und da dies immer noch alle Risiken birgt, die mit einer Neuinstallation verbunden sind), können Sie Folgendes tun:
sudo apt-get install encryptfs-utils
encryptfs-migrate-home
Wenn Sie wirklich ein hohes Maß an Sicherheit benötigen: Bitte installieren Sie es neu und wählen Sie die Option zum Verschlüsseln der gesamten Festplatte. Dies erfordert eine Passphrase, um den Computer überhaupt zu starten. Darüber hinaus können Sie natürlich auch Ihren privaten Ordner noch einmal verschlüsseln, was zu Leistungseinbußen führen kann. bei normalem einsatz jedoch nicht auffällig.
Bitte beachten Sie, dass durch die Verschlüsselung Ihres privaten Ordners Anwendungen wie Dropbox deaktiviert werden. Dropbox ist kein sicherer Speicher, der die Privatsphäre respektiert, so dass dies ein banaler Punkt sein kann. Wenn Sie jedoch eine sichere und private Speicherung in der Cloud benötigen, würde ich MEGAsync persönlich empfehlen, da nur Sie die Schlüssel für den Zugriff auf die Daten haben.