bytecluster0002

bytecluster0002 ist ein Virtualisierungsserver, der Kommunikationsdienste für den Verein bereitstellt. Er löst bytecluster0001 ab.

Administratoren

mape2k

maddi

suicider

chaos

ToDo

Container-Image vorbereiten (Anpassungen Betriebssystem) und ggf. SSH-Logins?

Traefik-Container

IPs /DNS

bytecluster0002.bytespeicher.org

138.201.246.25

2a01:4f8:c17:cf64::1

Betrieb

Benutzer anlegen

Benutzer anlegen

Normaler Benutzer ohne sudo-Rechte

useradd --create-home --shell /bin/bash --comment "Max Mustermann" mustermann

Benutzer mit sudo-Rechten

useradd --create-home --shell /bin/bash --comment "Max Mustermann" --groups sudo mustermann

SSH-Key hinterlegen

SSH-Verzeichnis anlegen

mkdir /home/mustermann/.ssh

SSH-Schlüssel in Datei authorized_keys hinterlegen

ssh-rsa AAAA... KOMMENTAR

Berechtigungen und Rechte anpassen

chown --recursive mustermann:mustermann /home/mustermann/.ssh

chmod 700 /home/mustermann/.ssh

chmod 644 /home/mustermann/.ssh/authorized_keys

Passwort setzen

Das Passwort ist für den Nutzung von sudo und für die Proxmox-Weboberfläche gültig und sollte vom Benutzer dann geändert werden!

passwd mustermann

Benutzer-Zugang zu Proxmox als Admin gewähren

Benutzer als Admin hinzufügen zuweisen

pveum user add mustermann@pam -groups admin -enable 1 -firstname „Max“ -lastname „Mustermann“

Login des Benutzers

passwd - Passwort ändern

pve_generate_oath

QR-Code mit geeignetem 2FA-Client scannenund nach Enter Ausführung mit eigenem Passwort (für sudo) bestätigen

Installation

Betriebssystem

Debian 10 minimal (vorinstalliert)

Vorkonfiguration

Vorgeschlagene Pakete nicht mit installieren (bereits im Standard vom Provider vorhanden)

APT::Install-Recommends "false";

Grundeinrichtung

System aktualisieren

apt-get update

apt-get dist-upgrade

Notwendige Standardsoftware installieren

vim (Editor)

mc (Dateimanager)

debian-goodies (Debian-Systemtools)

net-tools (Netzwerktools)

apt-get install vim mc debian-goodies net-tools

Suche in der Konsole mit Bild-ab/Bild-auf aktivieren

...
# alternate mappings for "page up" and "page down" to search the history
"\e[5~": history-search-backward
"\e[6~": history-search-forward
...

Absicherung

NFS / rpcbind deaktivieren (wird nicht benötigt, offene Ports schließen)

systemctl stop rpcbind.socket

systemctl disable rpcbind.socket

sudo installieren und konfigurieren

apt-get install sudo

Konfiguration prüfen, so dass sudo von Nutzern der Gruppe sudo genutzt werden kann

# Allow members of group sudo to execute any command
%sudo ALL=(ALL:ALL) ALL

SSH - Login als root und mit Passwort deaktivieren

Vorher mindestens einen Benutzer einrichten, der einen SSH-Schlüssel hinterlegt hat!

Konfiguration anpassen

...
PermitRootLogin no
...
PasswordAuthentication no
...
ChallengeResponseAuthentication no
...

SSH-Daemon neustarten

systemctl restart sshd

Proxmox

nach Anleitung: https://pve.proxmox.com/wiki/Install_Proxmox_VE_on_Debian_Buster

Vorbereitung

Hosts-Datei anpassen

IP-Adresse des internen Netzes nutzen, so dass später ein Proxmox-Cluster möglich ist

Konfiguration

...
# 127.0.1.1 bytecluster0002 bytecluster0002
127.0.0.1 localhost
10.10.0.2 bytecluster0002.bytespeicher.org bytecluster0002 pvelocalhost
...

Installation

Installation nach Anleitung: https://pve.proxmox.com/wiki/Install_Proxmox_VE_on_Debian_Buster#Install_Proxmox_VE

bei apt full-upgrade mit „install the package maintainer's version“ die Konfiguration für grub-efi-amd64 übernehmen

für den Punkt „Install Proxmox VE packages“ nur apt install proxmox-ve postfix ausführen, da open-iscsi nicht benötigt wird

Modify smb.conf to use WINS settings from DHCP? No

Postfix

Postfix Configuration: Local only

System Name: bytecluster0002

Anpassung der Update-Repository

Proxmox richtet das Repository für die Enterprise-Version mit ein. Ohne Subskription schlägt das Update der Quelle aber fehl und sie muss daher deaktiviert werden.

Enterprise-Repository deaktivieren

sed -i -e 's/^/# /' /etc/apt/sources.list.d/pve-enterprise.list

2FA Grundeinrichtung

Skript anlegen

#!/bin/bash
clear
USERNAME=$USER
HOSTNAME=$(hostname --fqdn)
OATHKEY=$(oathkeygen)
qrencode -t ANSIUTF8 -o - "$(echo otpauth://totp/Proxmox $HOSTNAME?secret=$OATHKEY)"
read -p "Scan QR code in your application and press enter to activate. Otherwise press Ctrl+C" -n1 -s
sudo pveum user modify $USER@pam -keys $OATHKEY

Berechtigungen anpassen und ausführbar machen

chown root:root /usr/local/bin/pve_generate_oath

chmod 755 /usr/local/bin/pve_generate_oath

2FA für PAM-Anmeldungen verpflichtend machen

pveum realm modify pam -tfa type=oath,digits=6 -default 1

Admin-Gruppe und ersten Benutzer anlegen

Admin-Gruppe anlegen

pveum group add admin -comment „Administrators“

pveum aclmod / -group admin -role Administrator

ersten Benutzer zuweisen und root sperren

pveum user add mustermann@pam -groups admin -enable 1 -firstname „Max“ -lastname „Mustermann“

pveum user modify root@pam -enable 0

2FA für ersten Benutzer aktivieren

ALS BENUTZER AUSFÜHREN - vorher also su mustermann (falls als root eingeloggt)

pve_generate_oath

QR-Code scannen und nach Enter ggf. Ausführung mit eigenem Passwort für sudo bestätigen

SSL mit Let's Encrypt

Quelle: https://pve.proxmox.com/wiki/Certificate_Management

Mail-Account für Let's Encrypt registrieren

pvenode acme account register default xxxxxxxxxx@bytespeicher.org

Directory endpoints:
0) Let's Encrypt V2 (https://acme-v02.api.letsencrypt.org/directory)
1) Let's Encrypt V2 Staging (https://acme-staging-v02.api.letsencrypt.org/directory)
2) Custom
Enter selection: 0
Attempting to fetch Terms of Service from 'https://acme-v02.api.letsencrypt.org/directory'..
Terms of Service: https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf
Do you agree to the above terms? [y|N]: y
Attempting to register account with 'https://acme-v02.api.letsencrypt.org/directory'..
Generating ACME account key..
Registering ACME account..
Registration successful, account URL: 'https://acme-v02.api.letsencrypt.org/acme/acct/XXXXXXXX'
Task OK

Domain hinterlegen

pvenode config set –acme domains=$(hostname –fqdn)

Erstes Zertifikat intitialisieren

pvenode acme cert order

...
Task OK