1accea28c6
WireGuard-Zugang VM 101 → 10.1.1.1 dokumentiert, horus-root Set und Deploy via Sprung-Host jean@192.168.10.10 ergänzt. Co-authored-by: Cursor <cursoragent@cursor.com>
4.4 KiB
4.4 KiB
SSH — gemeinsame authorized_keys
Zentraler Katalog öffentlicher SSH-Keys (keine Private Keys). Stand aus den Hosts exportiert — bei neuem Laptop Key in fragments/ ergänzen, rebuild-assembled.sh laufen lassen.
Struktur
shared/ssh/
├── fragments/ # Einzelne Key-Gruppen (editierbar)
├── assembled/ # Fertige Sets pro Ziel (generiert)
├── rebuild-assembled.sh # fragments → assembled
└── install-authorized-keys.sh
| Fragment | Inhalt |
|---|---|
| fragments/admin-workstations.pub | DESKTOP-H9797I1, DESKTOP-J08NPU2 |
| fragments/admin-laptops-extra.pub | L7L1S5V, OJIEMRE, x380, Security Keys |
| fragments/admin-mobile.pub | JuiceSSH, server6, WEBTOP |
| fragments/host-pve1.pub | root@pve1 ed25519 |
| fragments/host-pve2.pub | root@pve2 (Ansible / Host-SSH) |
| fragments/legacy-pve1-rsa.pub | Altes RSA auf pve1 (Kommentar „root@pve2“) |
| fragments/horus-vps-root.pub | Horus VPS root@10.1.1.1 (via WireGuard) |
| fragments/vm101-to-horus.pub | VM 101 → Horus (Automation-Key, Referenz) |
Horus VPS (WireGuard)
| Hostname | horus.jeanavril.com |
| Öffentlich | 207.180.222.207 (nur WG, kein SSH von außen) |
| VPN | VM 101 wg0 10.1.1.5 ↔ Horus 10.1.1.1 |
| SSH | root@10.1.1.1 — nur von VM 101 (oder anderem WG-Peer) |
| VM-Key | jean@DESKTOP-J08NPU2 → jean@192.168.10.10:~/.ssh/id_ed25519 |
Die VM nutzt die Verbindung u.a. für SSL-Zertifikate (NPM custom_ssl/). User jean existiert auf Horus nicht — nur root.
Assembled Sets → Ziel
| Datei | Deploy auf | User |
|---|---|---|
| assembled/proxmox-root.pub | pve1 192.168.10.5, pve2 192.168.10.4 |
root |
| assembled/vm101-jean.pub | VM 101 Ubuntu 192.168.10.10 |
jean |
| assembled/pve2-lxc-root.pub | CT 101 docker, 109 media, 110 AIDEV (pve2) | root |
| assembled/horus-root.pub | Horus VPS 10.1.1.1 (via WG) |
root |
| assembled/authorized_keys.all.pub | Referenz — alle Keys vereint | — |
Matrix (Ist-Zustand)
| Host | Empfohlenes Set | Anmerkung |
|---|---|---|
| root@pve1 | proxmox-root | + legacy RSA noch enthalten |
| root@pve2 | proxmox-root | ohne legacy RSA (reicht host-pve2) |
| jean@192.168.10.10 | vm101-jean | Ansible fish-setup nutzt jean + SSH |
| CT 101 (docker) | pve2-lxc-root | Ansible disk-maintenance |
| CT 109 (media) | subset: admin + OJIEMRE | aktuell nur OJIEMRE — bei Bedarf volles Set |
| CT 110 (aidev) | pve2-lxc-root | Keys vermutlich vorhanden — CT war beim Export gestoppt, daher nicht auslesbar |
| root@10.1.1.1 (Horus) | horus-root | Nur via WireGuard; VM-Automation-Key: J08NPU2 |
Neuen Key hinzufügen
- Passendes Fragment in
fragments/*.pubeditieren (eine Zeile pro Key) ./rebuild-assembled.sh./install-authorized-keys.sh <target>oder manuellcat assembled/….pub >> ~/.ssh/authorized_keys
Deploy
cd /root/docu/shared/ssh
# Proxmox lokal
./install-authorized-keys.sh proxmox-root
# Remote
./install-authorized-keys.sh --remote root@192.168.10.4 proxmox-root
# VM 101
./install-authorized-keys.sh vm101-jean
# CTs auf pve2 (muss auf pve2 laufen)
./install-authorized-keys.sh pve2-lxc-root
./install-authorized-keys.sh pve2-lxc-root --ct 101
# Horus (von pve1/pve2 aus — springt über VM 101)
./install-authorized-keys.sh horus-root
# Vorschau
./install-authorized-keys.sh --dry-run proxmox-root
Ansible
| Host | Ansible-Pfad | Keys |
|---|---|---|
| pve1 | pve1/ansible/ | jean → VM 101 |
| pve2 | pve2/ansible/ | root@pve2 → CTs |
Symlink auf dem Host: ln -sfn /root/docu/pve{1,2}/ansible /root/ansible
Hinweise
- Nur Public Keys ins Repo — niemals
id_*ohne.puboder.git-credentials-* - Zwei verschiedene
ssh-rsa … root@pve2: aktueller Key auf pve2 vs. Legacy auf pve1 (legacy-pve1-rsa.pub) - CT muss laufen, damit
pct execKeys lesen/schreiben kann (110 war beim Export gestoppt)