Umfeld

Umfeld

Umfeld

Distribution: CentOS7 Kernel: 3.10.0-427.10.1.lve1.4.7.el7.x86_64.

Szenario

Dies ist eine Shared-Hosting-Umgebung und mir ist gerade aufgefallen, dass nur /dev/mqueueund über Berechtigungen /dev/shmverfügen 1777( /tmpund /var/tmpauch, aber das ist hier nebensächlich).

Fragen

  1. Stellt dies eine Bedrohung für die Sicherheit des Servers dar? Beispielsweise könnte ein Systembenutzer die Verzeichnisse mit nutzlosem Müll belegen und sein Festplattenkontingent aufbrauchen.
  2. Bedeutet die Tatsache, dass das gesamte /devVerzeichnis auf gemountet ist devtmpfs, dass bei einem Neustart alles aus dem Verzeichnis gelöscht wird?
  3. Was ist der Unterschied zwischen tmpfsund devtmpfs?

Folgendes ist derzeit montiert:

Filesystem      Size  Used Avail Use% Mounted on
/dev/sdi1       148G  730M  140G   1% /
devtmpfs         59G     0   59G   0% /dev
tmpfs            59G     0   59G   0% /dev/shm
tmpfs            59G  4.1G   55G   7% /run
tmpfs            59G     0   59G   0% /sys/fs/cgroup
/dev/sdh1       148G   14G  127G  10% /usr
/dev/sda1       2.0G  269M  1.6G  15% /boot
/dev/sdg1       148G  7.7G  133G   6% /var
/dev/sdd1       148G  468M  140G   1% /tmp
/dev/sdc1       493G   13G  455G   3% /ssd
/dev/sde1       493G   37G  431G   8% /localbkp
/dev/sdf1       8.0T  515G  7.1T   7% /home
tmpfs            12G     0   12G   0% /run/user/0
tmpfs            12G     0   12G   0% /run/user/1242
tmpfs            12G     0   12G   0% /run/user/1507
tmpfs            12G     0   12G   0% /run/user/1812

Danke schön.

Antwort1

Stellt dies eine Bedrohung für die Sicherheit des Servers dar? Beispielsweise könnte ein Systembenutzer die Verzeichnisse mit nutzlosem Müll belegen und sein Festplattenkontingent aufbrauchen.

Sicher, aber sie können den Speicher ohnehin schon füllen, indem malloc()sie zu viel verwenden (Ja, Sie können verwenden ulimit(), aber das ist eine Beschränkung pro Prozess). Wenn Sie Benutzer vor der Speichernutzung der anderen schützen möchten, müssen Sie sie in verschiedene Container legen.

Bedeutet die Tatsache, dass das gesamte /devVerzeichnis auf gemountet ist devtmpfs, dass bei einem Neustart alles aus dem Verzeichnis gelöscht wird?

Ja.

Was ist der Unterschied zwischen tmpfsund devtmpfs?

Aus der Kernel- CONFIG_DEVTMPFSDokumentation:

Dies erstellt ein tmpfs-Dateisystem und hängt es beim Booten unter /dev ein. Der Kernel-Treiberkern erstellt Geräteknoten für alle registrierten Geräte in diesem Dateisystem. Alle Geräteknoten gehören root und haben den Standardmodus 0600. Der Benutzerbereich kann die Knoten nach Bedarf hinzufügen und löschen. Dies soll das Booten vereinfachen und es ermöglichen, den anfänglichen Coldplug beim Booten zu verzögern, der von udev im Benutzerbereich durchgeführt wird. Es sollte auch eine einfachere Möglichkeit für Rettungssysteme bieten, einen Kernel mit dynamischen Haupt-/Nebennummern zu starten. Sinnvolle Symlinks, Berechtigungen und Geräteeigentümer müssen weiterhin vom Benutzerbereich verwaltet werden.

verwandte Informationen