40 lines
1.2 KiB
HTML
40 lines
1.2 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
<title>ansipa · service portal</title>
|
|
<link rel="stylesheet" href="/portal.css">
|
|
</head>
|
|
<body>
|
|
<main>
|
|
<header>
|
|
<h1>ansipa</h1>
|
|
<p class="sub">FreeIPA identity · Ansible policy · CheckMK monitoring · Keycloak SSO</p>
|
|
</header>
|
|
|
|
<section class="grid">
|
|
<a class="card" href="/ipa/ui/">
|
|
<h2>FreeIPA</h2>
|
|
<p>Identity, hosts, groups, sudo & HBAC rules — the policy source of truth.</p>
|
|
<span class="path">/ipa/ui/</span>
|
|
</a>
|
|
<a class="card" href="/cmk/">
|
|
<h2>CheckMK</h2>
|
|
<p>Fleet monitoring: agents, host status, ansipa dev_mon_* checks.</p>
|
|
<span class="path">/cmk/</span>
|
|
</a>
|
|
<a class="card" href="/auth/">
|
|
<h2>Keycloak</h2>
|
|
<p>Single sign-on and identity federation against FreeIPA LDAP.</p>
|
|
<span class="path">/auth/</span>
|
|
</a>
|
|
</section>
|
|
|
|
<footer>
|
|
<p>Served by the ansipa nginx gateway. All services share this host and are safe to place behind a further reverse proxy.</p>
|
|
</footer>
|
|
</main>
|
|
</body>
|
|
</html>
|