import { KeyRound, Pencil, ShieldQuestion } from "lucide-react"; import type { Metadata } from "next"; import { notFound } from "next/navigation"; import type { ReactNode } from "react"; import { ArchivierenDialog } from "@/components/hosts/ArchivierenDialog"; import { adresseMitPort, AnmeldeartBadge, HostSchluesselStatusBadge } from "@/components/hosts/Anzeige"; import { Badge } from "@/components/ui/Badge"; import { Breadcrumb } from "@/components/ui/Breadcrumb"; import { Button } from "@/components/ui/Button"; import { Karte } from "@/components/ui/Karte"; import { Leerzustand } from "@/components/ui/Leerzustand"; import { MonoKopieren } from "@/components/ui/MonoKopieren"; import { Seitenkopf } from "@/components/ui/Seitenkopf"; import { Statuspunkt } from "@/components/ui/Statuspunkt"; import { datum, datumZeit, relativ } from "@/lib/format"; import { darf } from "@/server/auth/rechte"; import { sitzungErforderlich } from "@/server/auth/sitzungspflicht"; import { hostDetail, type HostDetail } from "@/server/queries/hosts"; import { BootstrapAktionen } from "./BootstrapAktionen"; import { sshdHinweise } from "@/lib/sshd-hinweise"; import { AbgleichKarten } from "@/components/abgleich/AbgleichKarten"; import { AusrollenPanel } from "@/components/ausrollen/AusrollenPanel"; import { istZustand } from "@/server/queries/abgleich"; import { VerwendungsZustand } from "@/components/ausrollen/VerwendungsZustand"; import { verwendungenAufHost } from "@/server/queries/ziele"; import { HostKeyAktionen } from "./HostKeyAktionen"; import { HostKeyEntscheidung } from "./HostKeyEntscheidung"; import { bootstrapBefehlFuer } from "@/server/queries/bootstrap"; export const metadata: Metadata = { title: "Host" }; function Zeitpunkt({ wert, jetzt, sonst }: { wert: Date | null; jetzt: Date; sonst: string }) { if (!wert) return {sonst}; return ( ); } function Info({ titel, children }: { titel: string; children: ReactNode }) { return (
sshd-Befund
Zielkonten:{" "}
{host.zielkonten.map((z, i) => (
{i > 0 && ", "}
{z.benutzername}
))}
Archivierte Hosts verschwinden aus Listen und Hostgruppen. Name und Protokoll bleiben erhalten.