Storage Server Konfiguration I

vorhergehende Artikel in: Linux
31.01.2021

Ich habe zu Weiterbildungszwecken aus alten PC-Komponenten ein Serversystem zusammengebaut und stelle hier die Konfiguration als Storage-Server vor

Nachdem alle Komponenten zusammengesteckt waren habe ich zunächst Ununtu Focal Fossa (20.04 LTS) Server als Betriebssystem installiert und konfiguriert. Die alten Festplatten konstituierten zwei Software-Raid Verbünde, die durch das Betriebssystem im neu zusammengesteckten Server sofort erkannt wurden und daher von mir weiterverwendet wurden. Als Grundlage der weiteren Arbeiten wurden die beiden Raid-Verbünde in eine Volume Group zusammengeführt:

vgcreate vg_storage /dev/md0 /dev/md7

Darauf aufbauend habe ich zunächst zwei Logical Volumes erstellt - eine für administrative Zwecke und eine zweite als Speichermedium, das im Netz für Nutzer zur Verfügung stehen sollte:

lvcreate -L 1T vg_storage -n lv_attic
lvcreate -L 1T vg_storage -n lv_services

Anschließend legte ich entsprechende Verzeichnisse an:

mkdir /storage
mkdir /storage/attic
mkdir /storage/services

Im nächsten Schritt wurde die /etc/fstab um entsprechend benötigte Einträge ergänzt:

/dev/vg_storage/lv_attic        /storage/attic/    ext4    defaults        0       0
/dev/vg_storage/lv_services     /storage/services/    ext4    defaults        0       0

Nunmehr installierte ich zunächst die entsprechenden Pakete um den im Netz verfügbaren Speicher für Windows-Nutzer (Samba) und Linux-Nutzer (SFTP) zur Verfügung stellen zu können. Anschließend legte ich zunächst entsprechende Nutzergruppen an:

groupadd sftp_users
groupadd samba_users

Nutzer legte ich zu Testzwecken wie folgt an:

useradd sftpuser -s /sbin/nologin -M
useradd sambauser -s /sbin/nologin -M

Diese Nutzer ordnete ich ihren entsprechenden Grupoen zu:

usermod -a -G sftp_users sftpuser
usermod -a -G sftp_users sambauser

Diese Nutzer benötigten jeweils ein Systempasswort und ein Sambapasswort; beide werden wie folgt zugeordnet (am Beispiel von sambauser):

passwd sambauser
smbpasswd -a sambauser

Nun mussten benötigte Verzeichnisse angelegt und mit den entsprechenden Nutzerrechten versehen werden:

mkdir /storage/services/sftpuser
mkdir /storage/services/public
mkdir /storage/services/sambauser
mkdir /storage/samba/sambausers_shared
chmod 777 /storage/services/public/
chown sftpuser:sftp_users /storage/services/sftpuser
chown nobody:nogroup /storage/services/public/
chown sambauser:sambauser /storage/services/sanbauser/
chown root:samba_users /storage/services/sambausers_shared
chmod 775 /storage/services/sambausers_shared

Nun konnte an die Konfiguration der Services gegangen werden - zuerst wurde /etc/ssh/sshd_config wie folgt ergänzt:

Match Group sftp_users
        ChrootDirectory /storage/services/
        ForceCommand internal-sftp
        X11Forwarding no
        AllowTcpForwarding no
        PasswordAuthentication yes

Anschließend wurden folgende Share-Definitionen in /etc/samba/smb.conf hinzugefügt:

[samba_users_shared]
    comment           = Place for sharing for all members of user group sambausers
    path              = /storage/services/samba_users_shared
    read only = no
    writable = yes
    guest ok = no
    create mask = 0660
    directory mask = 0771
    valid users = @samba_users

[sambauser] comment = sambauser private area path = /storage/services/sambauser read only = no writable = yes guest ok = no valid users = sambauser

[public] path = /storage/services/public browsable =yes writable = yes guest ok = yes read only = no force user = nobody create mask = 0775 directory mask = 0775

Nach Neustart von Samba und sshd waren die entsprechenden Verzeichnisse und Shares von Windows und Linux aus erreich- und benutzbar. Weitere Nutzer können nach den angegebenen Mustern problemlos hinzugefügt werden.

Ich habe hier verschiedene Links angefügt, die als Hintergrund und weiterführende Lektüre zu diesem Thema dienen können:

Artikel, die hierher verlinken

Monitoring Raid Rebuild mit Grafana

22.07.2021

Nachdem eins meiner Raids neulich einen Check durchführen wollte habe ich überlegt, ob man den Fortschritt dabei (oder bei einem Rebuild) mittels Telegraf in Grafana abbilden könnte.

Alle Artikel rss Wochenübersicht Monatsübersicht Codeberg Repositories Mastodon Über mich home xmpp


Vor 5 Jahren hier im Blog

  • Generator-Framework in JMeter integriert

    27.09.2020

    Nachdem ich neulich zwei neue Container für Software-Tests zu meinem Docker-Zoo hinzugefügt habe ist es nun an der Zeit, ein weiteres Hilfsmittel für Software-Tests mit JMeter vorzustellen

    Weiterlesen

Neueste Artikel

  • Generated Key Management in der sQLshell

    Ich habe an einem neuen Feature der sQLshell gearbeitet, das die manuelle Dateiengabe extrem vereinfacht.

    Weiterlesen
  • LinkCollections 2025 X

    Nach der letzten losen Zusammenstellung (für mich) interessanter Links aus den Tiefen des Internet von 2025 folgt hier gleich die nächste:

    Weiterlesen
  • GUI zur Logback Konfiguration

    Ich habe mich immer wieder darüber geärgert, wenn ich gerade mitten im Entwickeln neuer Features bin und irgendetwas nicht klappt. Dann wollte ich versuchen, herauszufinden, was der Grund dafür sein könnte und natürlich ist das Logging für die eine interessante Klasse gerade deaktiviert. Also: Konfigurationsdatei fürs Logging editieren, speichern, Anwendung neu starten... Damit sollte endlich Schluss ein!

    Weiterlesen

Manche nennen es Blog, manche Web-Seite - ich schreibe hier hin und wieder über meine Erlebnisse, Rückschläge und Erleuchtungen bei meinen Hobbies.

Wer daran teilhaben und eventuell sogar davon profitieren möchte, muss damit leben, daß ich hin und wieder kleine Ausflüge in Bereiche mache, die nichts mit IT, Administration oder Softwareentwicklung zu tun haben.

Ich wünsche allen Lesern viel Spaß und hin und wieder einen kleinen AHA!-Effekt...

PS: Meine öffentlichen Codeberg-Repositories findet man hier.