Acolyte: Unterschied zwischen den Versionen

Aus Stratum 0
Wechseln zu:Navigation, Suche
K
K (Server Doku)
 
(11 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
 
{{Hardware
 
{{Hardware
|kontakt = 53c70r
+
|kontakt = {{Benutzer|53c70r}}
|status = workinprogress
+
|status = working
 
|ort = Serverschrank
 
|ort = Serverschrank
 
|beschreibung = Server
 
|beschreibung = Server
Zeile 10: Zeile 10:
  
 
== Server Doku ==
 
== Server Doku ==
  OS: CentOS7
+
  OS: CentOS8
 
  Virtualisierung: QEMU/KVM Libvirt
 
  Virtualisierung: QEMU/KVM Libvirt
 
  Speicherplatz: 4 Platten als mdadm RAID6 (/dev/md0 ist LUKS encrypted)
 
  Speicherplatz: 4 Platten als mdadm RAID6 (/dev/md0 ist LUKS encrypted)
 
  IP: 192.168.179.6
 
  IP: 192.168.179.6
 
  MAC: 00:19:99:da:6a:0e
 
  MAC: 00:19:99:da:6a:0e
Die Maschine gilt nach dem Boot zu entschlüsseln, dies funktioniert wie folgt:
+
Der Server ist über Cockpit zu managen: https://acolyte.s0:9090<br/>
pass acolyte/luks | ssh -p 222 192.168.179.6 unlock
+
Falls Acolyte aus sein sollte, kann er über WoL aufgeweckt werden.<br/>
für mehr Informationen [https://github.com/dracut-crypt-ssh/dracut-crypt-ssh hier] klicken.<br />
+
Administratoren können dann neue Nutze hinzufügen.<br/>
Das Management der VM's erfolgt durch die Nutzung von virt-manager, sowohl für die user, als auch für die admin.<br />
+
Die VM's werden im /home des jeweiligen Nutzers gespeichert. Dafür geht man unter "Virtual Machines" auf "Create VM" und wählt für "Connection" "Session" aus.<br/>
Unprivilegierte user Zugriffe sind limitiert und bieten keine Möglichkeit Einstellungen der jeweiligen VM zu manipulieren.<br />
+
Direkten Zugriffe, die über die GUI nicht zu finden sind, können mittels virsh im Terminal ausgeführt werden.<br/>
Mittels SELinux und Polkit werden neue unprivilegierte Nutzer hinzugefügt, denen man dann VM's zuweisen kann.<br />
+
Da alles im user space läuft funktioniert kein Ping siehe [https://wiki.qemu.org/Documentation/Networking#User_Networking_.28SLIRP.29 link]
Ein Beispiel für das Hinzufügen vom user "test":
 
[root@acolyte ~]# useradd test
 
[root@acolyte ~]# semanage login -s user_u -a test
 
[root@acolyte ~]# vim /etc/security/limits.conf
 
nun in limits.conf am Ende folgendes hinzufügen:
 
test  hard    cpu    0
 
test  hard    memlock 102400
 
test  hard    nproc  20
 
Nun den user public SSH-Key hinzufügen (nur RSA ist erlaubt):
 
[root@acolyte ~]# su test
 
[test@acolyte ~]$ cd ~
 
[test@acolyte ~]$ umask 022
 
[test@acolyte ~]$ mkdir .ssh
 
[test@acolyte ~]$ echo "ssh-rsa AAAAB3NzaC..." > .ssh/authorized_keys
 
"test" sollte nun in der Lage sein sich auf dem Server einzuloggen.<br />
 
Nun downloaden wir als admin die gewünschte iso für die VM:
 
[user@acolyte ~]$ wget -O iso/debian-10.1.0-amd64-netinst.iso https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-10.1.0-amd64-netinst.iso
 
Als Nächstes kümmern wir uns um das Aufsetzen der VM von "test".<br />
 
Dazu verbinden wir uns als admin mittels virt-manager auf den Server und fügen die VM hinzu.<br />
 
Als "Network selection" sollte "Host device enp6s0: macvtap", "Source mode: Bridge" gewählt werden.<br />
 
Nun geben wir noch dem user "test" die Freigabe sich auf die VM verbinden zu können:
 
[root@acolyte ~]# vim /etc/polkit-1/rules.d/51-libvirt.rules
 
Wir fügen nun zwei Java Script Zeilen in 51-libvirt.rules hinzu;<br />
 
im zweiten Funktionsblock:
 
if (subject.user == "test") return polkit.Result.YES;
 
und im ersten Funktionsblock:
 
if (a.lookup("domain_uuid") == "cdf9d60b-8cf7-496b-88d4-3ae489969c8f" && s.user == "test") return true;
 
Die domain_uuid ist als admin unter VM Einstellungen zu sehen.<br />
 
Der user "test" sollte nun in der Lage sein seine domain zu konfigurieren.
 
  
 
== Hardware ==
 
== Hardware ==
 
Ein in Sachen CPUs, RAM und SSD etwas aufgerüsteter Server auf Basis des Servers aus der Hardwarespende von Alexander.
 
Ein in Sachen CPUs, RAM und SSD etwas aufgerüsteter Server auf Basis des Servers aus der Hardwarespende von Alexander.
 
  Server Fujitsu Primergy TX200 S6
 
  Server Fujitsu Primergy TX200 S6
  CPUs: 2* Intel Xeon E5645 (6 Cores pro CPU, 2 Threads pro Core)
+
  CPUs: 2* [https://ark.intel.com/content/www/us/en/ark/products/48768/intel-xeon-processor-e5645-12m-cache-2-40-ghz-5-86-gt-s-intel-qpi.html Intel Xeon E5645] (6 Cores pro CPU, 2 Threads pro Core)
 
  RAM: je CPU 4*4 GB 10600PC3 Samsung DDR3 ECC
 
  RAM: je CPU 4*4 GB 10600PC3 Samsung DDR3 ECC
 
  Mainboard: D2799-N10 GS4
 
  Mainboard: D2799-N10 GS4

Aktuelle Version vom 24. September 2020, 18:05 Uhr

Acolyte
Beschreibung: Server
Ort: Serverschrank
Status: working (Was heißt das?)
Kontakt: 53c70r

Acolyte ist ein im Space lokaler VM-Host, welcher nach Bedarf angeschaltet werden kann, um z.B. Dinge zu bauen.

Server Doku

OS: CentOS8
Virtualisierung: QEMU/KVM Libvirt
Speicherplatz: 4 Platten als mdadm RAID6 (/dev/md0 ist LUKS encrypted)
IP: 192.168.179.6
MAC: 00:19:99:da:6a:0e

Der Server ist über Cockpit zu managen: https://acolyte.s0:9090
Falls Acolyte aus sein sollte, kann er über WoL aufgeweckt werden.
Administratoren können dann neue Nutze hinzufügen.
Die VM's werden im /home des jeweiligen Nutzers gespeichert. Dafür geht man unter "Virtual Machines" auf "Create VM" und wählt für "Connection" "Session" aus.
Direkten Zugriffe, die über die GUI nicht zu finden sind, können mittels virsh im Terminal ausgeführt werden.
Da alles im user space läuft funktioniert kein Ping siehe link

Hardware

Ein in Sachen CPUs, RAM und SSD etwas aufgerüsteter Server auf Basis des Servers aus der Hardwarespende von Alexander.

Server Fujitsu Primergy TX200 S6
CPUs: 2* Intel Xeon E5645 (6 Cores pro CPU, 2 Threads pro Core)
RAM: je CPU 4*4 GB 10600PC3 Samsung DDR3 ECC
Mainboard: D2799-N10 GS4
SSD: 120GB Patriot Burst
HDDs: 4* 500GB WD RE4 von 2012 WD5003ABYX
1* rdx quickstor slot