{{Hardware |kontakt = {{Benutzer|53c70r}} |status = working |ort = Serverschrank |beschreibung = Server |usage = <!-- optional --> }} Acolyte ist ein im Space lokaler VM-Host, welcher nach Bedarf angeschaltet werden kann, um z.B. Dinge zu bauen. == Server Doku == OS: CentOS7 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 Die Maschine gilt nach dem Boot zu entschlüsseln, dies funktioniert wie folgt: pass acolyte/luks | ssh -p 222 root@192.168.179.6 unlock für mehr Informationen [https://github.com/dracut-crypt-ssh/dracut-crypt-ssh hier] klicken.<br /> Das Management der VM's erfolgt durch die Nutzung von virt-manager, sowohl für die user, als auch für die admins.<br /> Unprivilegierte user Zugriffe sind limitiert und bieten keine Möglichkeit Einstellungen der jeweiligen VM zu manipulieren oder andere VM's zu sehen.<br /> Mittels SELinux und Polkit werden neue unprivilegierte Nutzer hinzugefügt, denen man dann VM's zuweisen kann.<br /> 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 == 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* [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 Mainboard: D2799-N10 GS4 SSD: 120GB Patriot Burst HDDs: 4* 500GB WD RE4 von 2012 WD5003ABYX 1* rdx quickstor slot