Files
mkdocs-etz/mkdocs/site/Linux_Unternehmen/ubuntu-ad-dc/index.html
2025-12-04 07:57:14 +01:00

1743 lines
57 KiB
HTML

<!doctype html>
<html lang="en" class="no-js">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<link rel="prev" href="../../basics/Automatisierung%20mit%20cron%20und%20systemd/">
<link rel="next" href="../linux-als-ad-client/">
<link rel="icon" href="../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.7.0">
<title>Ubuntu Servr als Active Directory Domain Controller - Linux Grundlagen MK-IT</title>
<link rel="stylesheet" href="../../assets/stylesheets/main.618322db.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.ab4e12ef.min.css">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,300i,400,400i,700,700i%7CRoboto+Mono:400,400i,700,700i&display=fallback">
<style>:root{--md-text-font:"Roboto";--md-code-font:"Roboto Mono"}</style>
<script>__md_scope=new URL("../..",location),__md_hash=e=>[...e].reduce(((e,_)=>(e<<5)-e+_.charCodeAt(0)),0),__md_get=(e,_=localStorage,t=__md_scope)=>JSON.parse(_.getItem(t.pathname+"."+e)),__md_set=(e,_,t=localStorage,a=__md_scope)=>{try{t.setItem(a.pathname+"."+e,JSON.stringify(_))}catch(e){}}</script>
</head>
<body dir="ltr" data-md-color-scheme="default" data-md-color-primary="indigo" data-md-color-accent="indigo">
<input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off">
<input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
<label class="md-overlay" for="__drawer"></label>
<div data-md-component="skip">
<a href="#installation-ubuntu-server-2404-lts" class="md-skip">
Skip to content
</a>
</div>
<div data-md-component="announce">
</div>
<header class="md-header md-header--shadow" data-md-component="header">
<nav class="md-header__inner md-grid" aria-label="Header">
<a href="../.." title="Linux Grundlagen MK-IT" class="md-header__button md-logo" aria-label="Linux Grundlagen MK-IT" data-md-component="logo">
<img src="../../assets/Logo.png" alt="logo">
</a>
<label class="md-header__button md-icon" for="__drawer">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 6h18v2H3zm0 5h18v2H3zm0 5h18v2H3z"/></svg>
</label>
<div class="md-header__title" data-md-component="header-title">
<div class="md-header__ellipsis">
<div class="md-header__topic">
<span class="md-ellipsis">
Linux Grundlagen MK-IT
</span>
</div>
<div class="md-header__topic" data-md-component="header-topic">
<span class="md-ellipsis">
Ubuntu Servr als Active Directory Domain Controller
</span>
</div>
</div>
</div>
<form class="md-header__option" data-md-component="palette">
<input class="md-option" data-md-color-media="(prefers-color-scheme)" data-md-color-scheme="default" data-md-color-primary="indigo" data-md-color-accent="indigo" aria-label="Switch to light mode" type="radio" name="__palette" id="__palette_0">
<label class="md-header__button md-icon" title="Switch to light mode" for="__palette_1" hidden>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="m14.3 16-.7-2h-3.2l-.7 2H7.8L11 7h2l3.2 9zM20 8.69V4h-4.69L12 .69 8.69 4H4v4.69L.69 12 4 15.31V20h4.69L12 23.31 15.31 20H20v-4.69L23.31 12zm-9.15 3.96h2.3L12 9z"/></svg>
</label>
<input class="md-option" data-md-color-media="(prefers-color-scheme: light)" data-md-color-scheme="default" data-md-color-primary="blue-grey" data-md-color-accent="orange" aria-label="Switch to dark mode" type="radio" name="__palette" id="__palette_1">
<label class="md-header__button md-icon" title="Switch to dark mode" for="__palette_2" hidden>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 8a4 4 0 0 0-4 4 4 4 0 0 0 4 4 4 4 0 0 0 4-4 4 4 0 0 0-4-4m0 10a6 6 0 0 1-6-6 6 6 0 0 1 6-6 6 6 0 0 1 6 6 6 6 0 0 1-6 6m8-9.31V4h-4.69L12 .69 8.69 4H4v4.69L.69 12 4 15.31V20h4.69L12 23.31 15.31 20H20v-4.69L23.31 12z"/></svg>
</label>
<input class="md-option" data-md-color-media="(prefers-color-scheme: dark)" data-md-color-scheme="slate" data-md-color-primary="blue-grey" data-md-color-accent="yellow" aria-label="Switch to system preference" type="radio" name="__palette" id="__palette_2">
<label class="md-header__button md-icon" title="Switch to system preference" for="__palette_0" hidden>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 18c-.89 0-1.74-.2-2.5-.55C11.56 16.5 13 14.42 13 12s-1.44-4.5-3.5-5.45C10.26 6.2 11.11 6 12 6a6 6 0 0 1 6 6 6 6 0 0 1-6 6m8-9.31V4h-4.69L12 .69 8.69 4H4v4.69L.69 12 4 15.31V20h4.69L12 23.31 15.31 20H20v-4.69L23.31 12z"/></svg>
</label>
</form>
<script>var palette=__md_get("__palette");if(palette&&palette.color){if("(prefers-color-scheme)"===palette.color.media){var media=matchMedia("(prefers-color-scheme: light)"),input=document.querySelector(media.matches?"[data-md-color-media='(prefers-color-scheme: light)']":"[data-md-color-media='(prefers-color-scheme: dark)']");palette.color.media=input.getAttribute("data-md-color-media"),palette.color.scheme=input.getAttribute("data-md-color-scheme"),palette.color.primary=input.getAttribute("data-md-color-primary"),palette.color.accent=input.getAttribute("data-md-color-accent")}for(var[key,value]of Object.entries(palette.color))document.body.setAttribute("data-md-color-"+key,value)}</script>
<label class="md-header__button md-icon" for="__search">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
</label>
<div class="md-search" data-md-component="search" role="dialog">
<label class="md-search__overlay" for="__search"></label>
<div class="md-search__inner" role="search">
<form class="md-search__form" name="search">
<input type="text" class="md-search__input" name="query" aria-label="Search" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="search-query" required>
<label class="md-search__icon md-icon" for="__search">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11z"/></svg>
</label>
<nav class="md-search__options" aria-label="Search">
<button type="reset" class="md-search__icon md-icon" title="Clear" aria-label="Clear" tabindex="-1">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"/></svg>
</button>
</nav>
</form>
<div class="md-search__output">
<div class="md-search__scrollwrap" tabindex="0" data-md-scrollfix>
<div class="md-search-result" data-md-component="search-result">
<div class="md-search-result__meta">
Initializing search
</div>
<ol class="md-search-result__list" role="presentation"></ol>
</div>
</div>
</div>
</div>
</div>
</nav>
</header>
<div class="md-container" data-md-component="container">
<main class="md-main" data-md-component="main">
<div class="md-main__inner md-grid">
<div class="md-sidebar md-sidebar--primary" data-md-component="sidebar" data-md-type="navigation" >
<div class="md-sidebar__scrollwrap">
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--primary" aria-label="Navigation" data-md-level="0">
<label class="md-nav__title" for="__drawer">
<a href="../.." title="Linux Grundlagen MK-IT" class="md-nav__button md-logo" aria-label="Linux Grundlagen MK-IT" data-md-component="logo">
<img src="../../assets/Logo.png" alt="logo">
</a>
Linux Grundlagen MK-IT
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../.." class="md-nav__link">
<span class="md-ellipsis">
Home
</span>
</a>
</li>
<li class="md-nav__item md-nav__item--section md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2" >
<label class="md-nav__link" for="__nav_2" id="__nav_2_label" tabindex="">
<span class="md-ellipsis">
Grundlagen
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_2">
<span class="md-nav__icon md-icon"></span>
Grundlagen
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../basics/Einstieg%20in%20Linux-Desktop/" class="md-nav__link">
<span class="md-ellipsis">
Einstieg in Linux-Desktop
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../basics/Grundlagen%20der%20Konsole/" class="md-nav__link">
<span class="md-ellipsis">
Grundlagen der Konsole
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../basics/Windows-Freigabe%20mit%20Samba/" class="md-nav__link">
<span class="md-ellipsis">
Windows-Freigabe mit Samba
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../basics/Automatisierung%20mit%20cron%20und%20systemd/" class="md-nav__link">
<span class="md-ellipsis">
Automatisierung mit cron und systemd
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--active md-nav__item--section md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3" checked>
<label class="md-nav__link" for="__nav_3" id="__nav_3_label" tabindex="">
<span class="md-ellipsis">
Linux im Unternehmen
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_3_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_3">
<span class="md-nav__icon md-icon"></span>
Linux im Unternehmen
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item md-nav__item--active">
<input class="md-nav__toggle md-toggle" type="checkbox" id="__toc">
<label class="md-nav__link md-nav__link--active" for="__toc">
<span class="md-ellipsis">
Ubuntu Servr als Active Directory Domain Controller
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<a href="./" class="md-nav__link md-nav__link--active">
<span class="md-ellipsis">
Ubuntu Servr als Active Directory Domain Controller
</span>
</a>
<nav class="md-nav md-nav--secondary" aria-label="Table of contents">
<label class="md-nav__title" for="__toc">
<span class="md-nav__icon md-icon"></span>
Table of contents
</label>
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
<li class="md-nav__item">
<a href="#ein-linux-server-als-active-directory-domain-controller" class="md-nav__link">
<span class="md-ellipsis">
Ein Linux-Server als Active Directory Domain Controller
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#einrichtung-der-festen-ip-inklusive-dns-anpassung" class="md-nav__link">
<span class="md-ellipsis">
Einrichtung der festen IP inklusive DNS-Anpassung
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#installation-der-benotigten-komponenten" class="md-nav__link">
<span class="md-ellipsis">
Installation der benötigten Komponenten
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#linux-fit-fur-acl" class="md-nav__link">
<span class="md-ellipsis">
Linux fit für ACL
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#zeitserver-einrichten" class="md-nav__link">
<span class="md-ellipsis">
Zeitserver Einrichten
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#samba-installation-und-provisionierung" class="md-nav__link">
<span class="md-ellipsis">
Samba Installation und Provisionierung
</span>
</a>
<nav class="md-nav" aria-label="Samba Installation und Provisionierung">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#samba-installieren" class="md-nav__link">
<span class="md-ellipsis">
Samba Installieren
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#provisionierung-des-samba4-zu-einem-active-directory-domain-controller-mit-unix-erweiterung" class="md-nav__link">
<span class="md-ellipsis">
Provisionierung des Samba4 zu einem Active Directory Domain-Controller mit UNIX-Erweiterung:
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#startverhalten-von-samba-an-ad-dc-anpassen" class="md-nav__link">
<span class="md-ellipsis">
Startverhalten von Samba an AD-DC anpassen
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#kerberos-konfiguration-von-samba-ubernehmen" class="md-nav__link">
<span class="md-ellipsis">
Kerberos-Konfiguration von Samba übernehmen
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#anpassung-der-netzwerkverbindung-um-dns-anfragen-durch-den-internen-dns-zu-beantworten" class="md-nav__link">
<span class="md-ellipsis">
Anpassung der Netzwerkverbindung um DNS-Anfragen durch den Internen-DNS zu beantworten
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#uberprufen-der-dns-konfiguration" class="md-nav__link">
<span class="md-ellipsis">
Überprüfen der DNS-Konfiguration
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#kerberos" class="md-nav__link">
<span class="md-ellipsis">
Kerberos
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#dhcp-server-einrichten" class="md-nav__link">
<span class="md-ellipsis">
DHCP-Server einrichten
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#benutzer-anlegen-und-verwalten" class="md-nav__link">
<span class="md-ellipsis">
Benutzer anlegen und Verwalten
</span>
</a>
<nav class="md-nav" aria-label="Benutzer anlegen und Verwalten">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#rsat" class="md-nav__link">
<span class="md-ellipsis">
RSAT
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#cli" class="md-nav__link">
<span class="md-ellipsis">
CLI
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#user-auf-ubuntu-umsetzen" class="md-nav__link">
<span class="md-ellipsis">
User auf Ubuntu umsetzen
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#freigaben-fur-die-gruppen-erstellen" class="md-nav__link">
<span class="md-ellipsis">
Freigaben für die Gruppen erstellen
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="../linux-als-ad-client/" class="md-nav__link">
<span class="md-ellipsis">
Linux als Client in Active Directory
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../nextcloud-ldap/" class="md-nav__link">
<span class="md-ellipsis">
Nextcloud mit LDAP-Anbindung
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--section md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_4" >
<label class="md-nav__link" for="__nav_4" id="__nav_4_label" tabindex="">
<span class="md-ellipsis">
Bonuskapitel
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4">
<span class="md-nav__icon md-icon"></span>
Bonuskapitel
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../bonus/docker-grundlagen.md" class="md-nav__link">
<span class="md-ellipsis">
Docker-Grundlagen
</span>
</a>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_4_2" >
<label class="md-nav__link" for="__nav_4_2" id="__nav_4_2_label" tabindex="0">
<span class="md-ellipsis">
Docker-Projekte
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_4_2_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4_2">
<span class="md-nav__icon md-icon"></span>
Docker-Projekte
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../bonus/docker-pi-hole.md" class="md-nav__link">
<span class="md-ellipsis">
Pi-Hole
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../bonus/docker-backuppc.md" class="md-nav__link">
<span class="md-ellipsis">
BackupPC
</span>
</a>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</div>
</div>
</div>
<div class="md-sidebar md-sidebar--secondary" data-md-component="sidebar" data-md-type="toc" >
<div class="md-sidebar__scrollwrap">
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--secondary" aria-label="Table of contents">
<label class="md-nav__title" for="__toc">
<span class="md-nav__icon md-icon"></span>
Table of contents
</label>
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
<li class="md-nav__item">
<a href="#ein-linux-server-als-active-directory-domain-controller" class="md-nav__link">
<span class="md-ellipsis">
Ein Linux-Server als Active Directory Domain Controller
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#einrichtung-der-festen-ip-inklusive-dns-anpassung" class="md-nav__link">
<span class="md-ellipsis">
Einrichtung der festen IP inklusive DNS-Anpassung
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#installation-der-benotigten-komponenten" class="md-nav__link">
<span class="md-ellipsis">
Installation der benötigten Komponenten
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#linux-fit-fur-acl" class="md-nav__link">
<span class="md-ellipsis">
Linux fit für ACL
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#zeitserver-einrichten" class="md-nav__link">
<span class="md-ellipsis">
Zeitserver Einrichten
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#samba-installation-und-provisionierung" class="md-nav__link">
<span class="md-ellipsis">
Samba Installation und Provisionierung
</span>
</a>
<nav class="md-nav" aria-label="Samba Installation und Provisionierung">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#samba-installieren" class="md-nav__link">
<span class="md-ellipsis">
Samba Installieren
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#provisionierung-des-samba4-zu-einem-active-directory-domain-controller-mit-unix-erweiterung" class="md-nav__link">
<span class="md-ellipsis">
Provisionierung des Samba4 zu einem Active Directory Domain-Controller mit UNIX-Erweiterung:
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#startverhalten-von-samba-an-ad-dc-anpassen" class="md-nav__link">
<span class="md-ellipsis">
Startverhalten von Samba an AD-DC anpassen
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#kerberos-konfiguration-von-samba-ubernehmen" class="md-nav__link">
<span class="md-ellipsis">
Kerberos-Konfiguration von Samba übernehmen
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#anpassung-der-netzwerkverbindung-um-dns-anfragen-durch-den-internen-dns-zu-beantworten" class="md-nav__link">
<span class="md-ellipsis">
Anpassung der Netzwerkverbindung um DNS-Anfragen durch den Internen-DNS zu beantworten
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#uberprufen-der-dns-konfiguration" class="md-nav__link">
<span class="md-ellipsis">
Überprüfen der DNS-Konfiguration
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#kerberos" class="md-nav__link">
<span class="md-ellipsis">
Kerberos
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#dhcp-server-einrichten" class="md-nav__link">
<span class="md-ellipsis">
DHCP-Server einrichten
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#benutzer-anlegen-und-verwalten" class="md-nav__link">
<span class="md-ellipsis">
Benutzer anlegen und Verwalten
</span>
</a>
<nav class="md-nav" aria-label="Benutzer anlegen und Verwalten">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#rsat" class="md-nav__link">
<span class="md-ellipsis">
RSAT
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#cli" class="md-nav__link">
<span class="md-ellipsis">
CLI
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#user-auf-ubuntu-umsetzen" class="md-nav__link">
<span class="md-ellipsis">
User auf Ubuntu umsetzen
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#freigaben-fur-die-gruppen-erstellen" class="md-nav__link">
<span class="md-ellipsis">
Freigaben für die Gruppen erstellen
</span>
</a>
</li>
</ul>
</nav>
</div>
</div>
</div>
<div class="md-content" data-md-component="content">
<article class="md-content__inner md-typeset">
<h1 id="installation-ubuntu-server-2404-lts">Installation Ubuntu Server 24.04 LTS</h1>
<p>Die Installation des Ubuntu Servers Erfolgt in Virtualbox. Achten Sie
bei der Einrichtung der VM darauf, dass die unbeaufsichtigte
Installation nicht durchgeführt wird, da einzelne Schritte relevant
sind.</p>
<p>Beim Bootvorgang wählen Sie „Try or Install" um das Setup zu starten.
Wählen Sie im nächsten Schritt Deutsch als Installations- und
Systemsprache. Bei Der Wahl der Tastatur setzen Sie ebenfalls auf German
und German.</p>
<p>Die Installationsart sollte Standard sein. Minimal führt dazu, dass
viele „übliche" Programme wie <code>PING</code> nicht installiert werden.
Üblicherweise benötigen Sie den unteren teil der Third-Party-Driver
nicht, wenn Sie nicht auf echter Hardware arbeiten. Hier werden dann
RAID-Controller oder WLAN-Karten ergänzt.</p>
<p>Die Netzwerkkonfiguration belassen wir auf DHCP, da später die
Konfigurationsdatei manuell angepasst werden soll. Üblicherweise würde
aber hier eine feste IP für einen Server vergeben werden, wobei darauf
zu achten ist, die Subnetzmaske als CIDR anzuhängen. Proxy bleibt leer.</p>
<p>Nach der Bestätigung der Netzwerkkonfiguration testet der Server
automatisch den schnellsten/nächsten Updateserver.</p>
<p>Die Festplattenpartitionierung kann auf Default belassen werden. Die
Verwendung von LVM ist mittlerweile Standard. LVM steht für Logical
Volume Manager und ist eine Variante Software-RAID um auch nachträglich
Erweiterungen oder Redundanzen hinzuzufügen. Bestätigen Sie ihre Wahl.</p>
<p>Setzen Sie Ihren user-account und ihren Hostname dc1.</p>
<p>Im nächsten Schritt können Sie sich für Ubuntu Pro anmelden, einen
Dienst, welcher ihnen erweiterten Support und Features wie
Kernel-Live-Patches und längeren Support.</p>
<p>Aktivieren Sie auf jeden Fall die Installation des openSSH-Servers.
Unten könnten Sie SSH-Keys aus z.B. github importieren, um sie später
ohne Passwort per SSH auf den Server zu verbinden.</p>
<p>Die nachfolgenden Features sind „snaps" von Ubuntu und sollen im Rahmen
der Meisterausbildung nicht genutzt werden, da diese nicht auf
„Nicht-Ubuntu" Systemen funktionieren. Hierbei handelt es sich um
vorkonfektionierte Programmpakete.</p>
<p>Nun läuft die Installation durch. Am Ende steht nichts im Log, sondern
darunter entsteht ein Button zum Neustarten des Systems.</p>
<p>Denken Sie nach dem Neustart daran, dass Sie innerhalb des etz wieder den Cache-Server verwenden:
<div class="highlight"><pre><span></span><code><span class="nb">echo</span><span class="w"> </span><span class="s1">&#39;Acquire::http::Proxy &quot;http://10.10.224.119:3142&quot;;&#39;</span><span class="w"> </span><span class="p">|</span><span class="w"> </span>sudo<span class="w"> </span>tee<span class="w"> </span>/etc/apt/apt.conf.d/02proxy
</code></pre></div>
\newpage</p>
<h2 id="ein-linux-server-als-active-directory-domain-controller">Ein Linux-Server als Active Directory Domain Controller</h2>
<p>Ein Linux-Server der Active Directory beherrscht, ist eine Möglichkeit,
um auf den Einsatz eines MS-Servers zu verzichten. Es existieren ein
paar Einschränkungen aber das Projekt Samba ist im stetigen Wachstum und
entwickelt immer neue Funktionen hinzu. In dieser Arbeitsanweisung
werden Sie einen Samba4 Active Directory Server installieren und im
Anschluss Diesen mit den MS-Remote Server Administration Tools
verwalten. Die Funktionalität dieses Servers enthält: DNS, Kerberos,
Benutzer und Gruppen, Netzlaufwerke und Gruppenrichtlinien.</p>
<p>Vorgaben die in dieser Anleitung genutzt werden.
<div class="highlight"><pre><span></span><code>DNS-Server:
Name: dc1.tnXX.ito
Server Type: Authoritative.
Forward Lookup Zone: tnXX.ito
Reverse Lookup Zone: 2XX.168.192.in-addr.arpa.
DC-Server
AD DC Hostname: DC1
AD DNS Domain Name: tnXX.ito
Kerberos Realm: tnXX.ito
NT4 Domain Name: tnXX
IP Adresse 192.168.2XX.250
Server Role: Domain Controller
DNS Forwarder: 192.168.2XX.1
DHCP Server
Subnet: 192.168.2XX.0 255.255.255.0
Range: 192.168.2XX.100 192.168.2XX.200
</code></pre></div></p>
<p>\newpage</p>
<h2 id="einrichtung-der-festen-ip-inklusive-dns-anpassung">Einrichtung der festen IP inklusive DNS-Anpassung</h2>
<p>In der aktuellen Version von Ubuntu Server wird bei der
Netzwerkkonfiguration auf netplan gesetzt. Hierbei wird eine .yaml Datei
angelegt, welche in der MAAS-Installation (Cloud-Config) automatisch dem
Rechner zugewiesen würde.</p>
<p>Als erstes legen wir eine neue Datei an:
<div class="highlight"><pre><span></span><code>sudo nano /etc/netplan/01-tnXX-netz.yaml
</code></pre></div>
<div class="highlight"><pre><span></span><code><span class="c1"># This file describes the network interfaces available on your system</span>
<span class="c1"># For more information, see netplan(5).</span>
<span class="nt">network</span><span class="p">:</span>
<span class="w"> </span><span class="nt">ethernets</span><span class="p">:</span>
<span class="w"> </span><span class="nt">enp0s3</span><span class="p">:</span>
<span class="w"> </span><span class="nt">addresses</span><span class="p">:</span><span class="w"> </span><span class="p p-Indicator">[</span><span class="nv">192.168.2XX.250/24</span><span class="p p-Indicator">]</span>
<span class="w"> </span><span class="nt">routes</span><span class="p">:</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="nt">to</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">0.0.0.0/0</span>
<span class="w"> </span><span class="nt">via</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">192.168.2XX.1</span>
<span class="w"> </span><span class="nt">dhcp4</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">no</span>
<span class="w"> </span><span class="nt">nameservers</span><span class="p">:</span>
<span class="w"> </span><span class="nt">addresses</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">\[192.168.2.XX.250,1.1.1.1\]</span>
<span class="w"> </span><span class="nt">search</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">\[tnXX.ito\]</span>
<span class="w"> </span><span class="nt">optional</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">true</span>
<span class="w"> </span><span class="nt">version</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">2</span>
</code></pre></div>
Die Anpassung des Hostnamen wurde auch kompatibel mit der Cloud-Config
gemacht daher neuer Vorgehensweise:
<div class="highlight"><pre><span></span><code>sudo hostnamectl set-hostname dc1
sudo nano /etc/cloud/cloud.cfg
</code></pre></div>
<div class="highlight"><pre><span></span><code>preserve_hostname: true # Erhält den Hostnamen nach dem Neustart
</code></pre></div>
Erweitern der Hosts-Datei:
<div class="highlight"><pre><span></span><code>sudo nano /etc/hosts
</code></pre></div>
<div class="highlight"><pre><span></span><code>127.0.0.1 localhost
127.0.1.1 dc1.tnXX.ito dc1
</code></pre></div>
Einagben Überprüfen:
<div class="highlight"><pre><span></span><code>sudo hostname
sudo nslookup dc1
</code></pre></div>
Beides sollte den oberen Eingaben entsprechen.</p>
<h2 id="installation-der-benotigten-komponenten">Installation der benötigten Komponenten</h2>
<p><div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>apt<span class="w"> </span>update
sudo<span class="w"> </span>apt<span class="w"> </span>install<span class="w"> </span>samba<span class="w"> </span>samba-dsdb-modules<span class="w"> </span>samba-vfs-modules<span class="w"> </span>krb5-config<span class="w"> </span>winbind<span class="w"> </span>libpam-winbind<span class="w"> </span>libnss-winbind<span class="w"> </span>acl<span class="w"> </span>dnsutils<span class="w"> </span>chrony<span class="w"> </span>isc-dhcp-server<span class="w"> </span>krb5-user<span class="w"> </span>smbclient
</code></pre></div>
Während der Installation werden Sie nach dem Realm für Kerberos gefragt:
<div class="highlight"><pre><span></span><code><span class="na">Realm</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">MKXX.ITO (Alles groß schreiben)</span>
<span class="na">Server</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">DC1.MKXX.ITO</span>
<span class="na">Administrator Server</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">DC1.MKXX.ITO</span>
</code></pre></div></p>
<h2 id="linux-fit-fur-acl">Linux fit für ACL</h2>
<p>Um mit Samba auch die vollen Windows ACL und Benutzer-Attribute zu unterstützen müssen diese ebenfalls im ext4 Dateisystem ihres Servers
aktiviert werden.</p>
<blockquote>
<p>Bevor Sie das tun wäre jetzt der Punkt einen Sicherungspunkt der VM zu machen Bei Tippfehlern werfen Sie sich selbst aus dem System.</p>
</blockquote>
<div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>nano<span class="w"> </span>/etc/fstab
</code></pre></div>
<p><div class="highlight"><pre><span></span><code><span class="nv">UUID</span><span class="o">=</span>xxx<span class="w"> </span>/<span class="w"> </span>ext4<span class="w"> </span>defaults<span class="w"> </span><span class="m">0</span><span class="w"> </span><span class="m">0</span>
</code></pre></div>
Wird zu:</p>
<p><div class="highlight"><pre><span></span><code><span class="nv">UUID</span><span class="o">=</span>xxx<span class="w"> </span>/<span class="w"> </span>ext4<span class="w"> </span>user_xattr,acl,barrier<span class="o">=</span><span class="m">1</span>,errors<span class="o">=</span>remount-ro,defaults<span class="w"> </span><span class="m">0</span><span class="w"> </span><span class="m">0</span>
</code></pre></div>
Speichern und Neustart</p>
<h2 id="zeitserver-einrichten">Zeitserver Einrichten</h2>
<p>Als Zeitserver verwenden wir den Dienst chrony.</p>
<p><div class="highlight"><pre><span></span><code>sudo nano /etc/chrony/chrony.conf
</code></pre></div>
Am Ende Anhängen:</p>
<p><div class="highlight"><pre><span></span><code>allow 0.0.0.0/24
</code></pre></div>
Dienst neu starten:</p>
<p><div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>systemctl<span class="w"> </span>restart<span class="w"> </span>chrony
</code></pre></div>
Testen ob der Dienst aktiv ist:
<div class="highlight"><pre><span></span><code>ss<span class="w"> </span>-tulpen:
</code></pre></div></p>
<blockquote>
<p>udp 0 0 0.0.0.0:123 0.0.0.0:* 0 22432 1180/chronyd</p>
</blockquote>
<h2 id="samba-installation-und-provisionierung">Samba Installation und Provisionierung</h2>
<h3 id="samba-installieren">Samba Installieren</h3>
<p>Sichern der Orginalkonfiguration</p>
<div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>mv<span class="w"> </span>/etc/samba/smb.conf<span class="w"> </span>/etc/samba/smb.conf.bak
</code></pre></div>
<h3 id="provisionierung-des-samba4-zu-einem-active-directory-domain-controller-mit-unix-erweiterung">Provisionierung des Samba4 zu einem Active Directory Domain-Controller mit UNIX-Erweiterung:</h3>
<p><div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>samba-tool<span class="w"> </span>domain<span class="w"> </span>provision<span class="w"> </span>--use-rfc2307<span class="w"> </span>--interactive<span class="w"> </span>--dns-backend<span class="o">=</span>SAMBA_INTERNAL
</code></pre></div>
Fragen beantworten:
* Realm: TNXX.ITO
* Domain: TNXX
* Server Role: dc
* DNS backend: SAMBA_INTERNAL
* DNS forwarder: 1.1.1.1
* Administrator password: 3 von 4: klein, groß, Zahl Zeichen und mindestens 7 Zeichen lang!!!!!!!!!!!!!! zB. passw0rd#</p>
<p>Fertig.</p>
<h2 id="startverhalten-von-samba-an-ad-dc-anpassen">Startverhalten von Samba an AD-DC anpassen</h2>
<p><div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>systemctl<span class="w"> </span><span class="nb">enable</span><span class="w"> </span>--now<span class="w"> </span>samba-ad-dc
</code></pre></div>
Samba nur auf den angegeben Netzwerkkarten starten, auf diese Weise gibt es keine Konflikte mit dem internen Nameserver edit in /etc/samba/smb.conf unter global
<div class="highlight"><pre><span></span><code><span class="nb">bind</span><span class="w"> </span>interfaces<span class="w"> </span><span class="nv">only</span><span class="w"> </span><span class="o">=</span><span class="w"> </span>yes
<span class="nv">interfaces</span><span class="w"> </span><span class="o">=</span><span class="w"> </span>lo<span class="w"> </span>enp0s3
</code></pre></div></p>
<h2 id="kerberos-konfiguration-von-samba-ubernehmen">Kerberos-Konfiguration von Samba übernehmen</h2>
<p>Samba legt bei der Provisionierung eine vorgefertigte Konfigurationsdatei für Kerberos also dem Authentifizierungsdienst, welcher auch eine Synchrone Uhr braucht.</p>
<p>Original sichern:
<div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>mv<span class="w"> </span>/etc/krb5.conf<span class="w"> </span>/etc/krb5.conf.bak
</code></pre></div>
Link erstellen:
<div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>cp<span class="w"> </span>-al<span class="w"> </span>/var/lib/samba/private/krb5.conf<span class="w"> </span>/etc/krb5.conf
</code></pre></div></p>
<h2 id="anpassung-der-netzwerkverbindung-um-dns-anfragen-durch-den-internen-dns-zu-beantworten">Anpassung der Netzwerkverbindung um DNS-Anfragen durch den Internen-DNS zu beantworten</h2>
<div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>nano<span class="w"> </span>/etc/netplan/01-tnXX-netz.yaml
</code></pre></div>
<p><div class="highlight"><pre><span></span><code><span class="nn">...</span>
<span class="nt">nameservers</span><span class="p">:</span>
<span class="w"> </span><span class="nt">addresses</span><span class="p">:</span><span class="w"> </span><span class="p p-Indicator">[</span><span class="nv">192.168.2XX.250</span><span class="p p-Indicator">]</span>
<span class="w"> </span><span class="nt">search</span><span class="p">:</span><span class="w"> </span><span class="p p-Indicator">[</span><span class="nv">tnXX.ito</span><span class="p p-Indicator">]</span>
<span class="nn">...</span>
</code></pre></div>
<div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>rm<span class="w"> </span>/etc/netplan/50-cloud-init.yaml
sudo<span class="w"> </span>netplan<span class="w"> </span>apply
</code></pre></div>
Internen Resolver übernehmen
<div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>rm<span class="w"> </span>/etc/resolv.conf
<span class="nb">echo</span><span class="w"> </span>-e<span class="w"> </span><span class="se">\&quot;</span>nameserver<span class="w"> </span><span class="m">127</span>.0.0.1<span class="se">\\</span>nsearch<span class="w"> </span>TNXX.ITO<span class="se">\&quot;</span><span class="w"> </span><span class="se">\|</span><span class="w"> </span>sudo<span class="w"> </span>tee
/etc/resolv.conf
</code></pre></div></p>
<h2 id="uberprufen-der-dns-konfiguration">Überprüfen der DNS-Konfiguration</h2>
<p>Testen des SRV record für ldap über TCP</p>
<div class="highlight"><pre><span></span><code>host<span class="w"> </span>-t<span class="w"> </span>SRV<span class="w"> </span><span class="se">\_</span>ldap.<span class="se">\_</span>tcp.tnXX.ito
</code></pre></div>
<blockquote>
<p>_ldap._tcp.tnXX.ito has SRV record 0 100 389 dc1.tnXX.ito.</p>
</blockquote>
<p>Testen des SRV record für kerberos über UDP</p>
<div class="highlight"><pre><span></span><code>host<span class="w"> </span>-t<span class="w"> </span>SRV<span class="w"> </span><span class="se">\_</span>kerberos.<span class="se">\_</span>udp.tnXX.ito
</code></pre></div>
<blockquote>
<p>_kerberos._udp.mkXX.ito has SRV record 0 100 88 dc1.tnXX.ito.</p>
</blockquote>
<p>Und die Namensauflösung des Servers</p>
<div class="highlight"><pre><span></span><code>host<span class="w"> </span>-t<span class="w"> </span>A<span class="w"> </span>dc1.tnXX.ito
</code></pre></div>
<blockquote>
<p>dc1.tnXX.ito has address 127.0.0.1</p>
</blockquote>
<p>Wenn hier Alles antwortet funktioniert der DNS</p>
<h2 id="kerberos">Kerberos</h2>
<p>Samba erzeugt eine passende Konfigurationsdatei für den Kerberos-Dienst
diese verlinken wir anstelle der Original-Datei die uns mitinstalliert
wurde.</p>
<p><div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>mv<span class="w"> </span>/etc/krb5.conf<span class="w"> </span>/etc/krb5.conf.orig
sudo<span class="w"> </span>cp<span class="w"> </span>-al<span class="w"> </span>/var/lib/samba/private/krb5.conf<span class="w"> </span>/etc/krb5.conf
sudo<span class="w"> </span>reboot
</code></pre></div>
Login-Versuch mit Anlegung des Maschinenaccounts
<div class="highlight"><pre><span></span><code>kinit<span class="w"> </span>administrator@TNXX.ITO
</code></pre></div></p>
<blockquote>
<p>Es erfolgt eine Ausgabe ihres Passwort-Ablaufdatums
<div class="highlight"><pre><span></span><code>klist
</code></pre></div>
Das komplette Kerberos Ticket wird angezeigt
<div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>smbclient<span class="w"> </span>-L<span class="w"> </span>localhost<span class="w"> </span>-U<span class="w"> </span><span class="s1">&#39;administrator&#39;</span>
</code></pre></div>
Sie sehen eine auflistung der Servereigenschaften, der Freigaben und der
Serverrolle</p>
</blockquote>
<p><div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>smbclient<span class="w"> </span>//localhost/netlogon<span class="w"> </span>-U<span class="w"> </span><span class="s1">&#39;administrator&#39;</span>
</code></pre></div>
Sie sehen das leere netlogon Verzeichnis des Servers und raus geht es
mit „exit"</p>
<h2 id="dhcp-server-einrichten">DHCP-Server einrichten</h2>
<p><div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>nano<span class="w"> </span>/etc/dhcp/dhcpd.conf
</code></pre></div>
suchen sie den auskommentierten Eintrag „authoritative;" und kommentieren Sie ihn ein. Weiter unten finden Sie ein Beispiel:</p>
<p><div class="highlight"><pre><span></span><code># A slightly different configuration for an internal subnet.
#subnet 10.5.5.0 netmask 255.255.255.224 {
# range 10.5.5.26 10.5.5.30;
# option domain-name-servers ns1.internal.example.org;
# option domain-name &quot;internal.example.org&quot;;
# option subnet-mask 255.255.255.224;
# option routers 10.5.5.1;
# option broadcast-address 10.5.5.31;
# default-lease-time 600;
# max-lease-time 7200;
#}
</code></pre></div>
welches wir anpassen:</p>
<p><div class="highlight"><pre><span></span><code># A slightly different configuration for an internal subnet.
Subnet 192.168.2XX.0 netmask 255.255.255.0 {
range 192.168.2XX.100 192.168.2XX.200;
option domain-name-servers 192.168.2XX.250;
option domain-name &quot;tnXX.ito&quot;;
option subnet-mask 255.255.255.0;
option routers 192.168.2XX.1;
option broadcast-address 192.168.2XX.255;
default-lease-time 600;
max-lease-time 7200;
}
</code></pre></div>
speichern und den dienst neu starten mit:
<div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>systemctl<span class="w"> </span>restart<span class="w"> </span>isc-dhcp-server
</code></pre></div></p>
<h2 id="benutzer-anlegen-und-verwalten">Benutzer anlegen und Verwalten</h2>
<p>Zur Verwaltung der Nutzer der Domäne haben sie (mindestens) 2
Möglichkeiten:</p>
<h3 id="rsat">RSAT</h3>
<p>Nutzen Sie einen Windows PC, nehmen diesen in die Domäne auf, und nutzen die Remote Server Administration Tools von Microsoft.
<a href="https://learn.microsoft.com/de-de/troubleshoot/windows-server/system-management-components/remote-server-administration-tools">https://learn.microsoft.com/de-de/troubleshoot/windows-server/system-management-components/remote-server-administration-tools</a> </p>
<p>Diese werden über Features hinzugefügt. Prüfen Sie welcher
Installationsweg bei ihrer Windows Version passt. ( winver ausführen )</p>
<p>Hiermit können Sie Benutzer, Gruppen und auch Gruppenrichtlinien setzen.</p>
<h3 id="cli">CLI</h3>
<p>Über das samba-tool kann mit sudo-rechten ebenfalls das Management
erfolgen, allerdings Textbasiert:</p>
<p>Nutzer mit Vor und Nachnamen erstellen und ein Passwort vergeben:</p>
<p><div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>samba-tool<span class="w"> </span>user<span class="w"> </span>add<span class="w"> </span>dieterbecker<span class="w"> </span><span class="s1">&#39;passw0rd#&#39;</span><span class="w"> </span>--given-name<span class="o">=</span>Dieter<span class="w"> </span>--surname<span class="o">=</span>Becker
</code></pre></div>
Wenn auf das Passwort und die Genauen Namen verzichtet wird, erfolgt
trotzdem ein Passwort Abfrage Dialog.</p>
<p>Das Ganze erweitert um den Profilpfad:</p>
<p><div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>samba-tool<span class="w"> </span>user<span class="w"> </span>add<span class="w"> </span>dieterbecker<span class="w"> </span><span class="s1">&#39;passw0rd#&#39;</span><span class="w"> </span>--given-name<span class="o">=</span>Dieter<span class="w"> </span>--surname<span class="o">=</span>Becker<span class="w"> </span>--profile-path<span class="o">=</span><span class="s1">&#39;\\tnXX\profiles\dieterbecker&#39;</span>
</code></pre></div>
und/oder mit Home-Verzeichnis</p>
<p><div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>samba-tool<span class="w"> </span>user<span class="w"> </span>add<span class="w"> </span>dieterbecker<span class="w"> </span><span class="s1">&#39;passw0rd#&#39;</span><span class="w"> </span>--given-name<span class="o">=</span>Dieter<span class="w"> </span>--surname<span class="o">=</span>Becker<span class="w"> </span>--home-drive<span class="o">=</span>U<span class="w"> </span>--home-directory<span class="o">=</span><span class="s1">&#39;\\tnXX\dieterbecker&#39;</span>
</code></pre></div>
Nutzer anzeigen:
<div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>samba-tool<span class="w"> </span>user<span class="w"> </span>list
</code></pre></div>
Nutzer Löschen:</p>
<p><div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>samba-tool<span class="w"> </span>user<span class="w"> </span>delete<span class="w"> </span>dieterbecker
</code></pre></div>
Passwort ändern:
<div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>samba-tool<span class="w"> </span>user<span class="w"> </span>setpassword<span class="w"> </span>dieterbecker
</code></pre></div>
Gruppe anlegen:
<div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>samba-tool<span class="w"> </span>group<span class="w"> </span>add<span class="w"> </span>Geschaeftsleitung
</code></pre></div>
Gruppe löschen:
<div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>samba-tool<span class="w"> </span>group<span class="w"> </span>delete<span class="w"> </span>Geschaeftsleitung
</code></pre></div>
Nutzer oder Gruppe zu Gruppe hinzufügen:
<div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>samba-tool<span class="w"> </span>group<span class="w"> </span>addmembers<span class="w"> </span><span class="se">\&quot;</span>Geschaeftsleitung<span class="se">\&quot;</span><span class="w"> </span>dieterbecker
</code></pre></div>
Nutzer aus Gruppe entfernen:
<div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>samba-tool<span class="w"> </span>group<span class="w"> </span>removemembers<span class="w"> </span><span class="se">\&quot;</span>Geschaeftsleitung<span class="se">\&quot;</span><span class="w"> </span>dieterbecker
</code></pre></div>
Gruppenmitglieder Anzeigen:
<div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>samba-tool<span class="w"> </span>group<span class="w"> </span>listmembers<span class="w"> </span><span class="se">\&quot;</span>Geschaeftsleitung<span class="se">\&quot;</span>
</code></pre></div></p>
<h2 id="user-auf-ubuntu-umsetzen">User auf Ubuntu umsetzen</h2>
<p>Damit die Nutzer auch unter Linux verfügbar werden, muss der winbind Dienst wissen, wie die AD-User mit ihren IDs am Server gemappt werden sollen. Daher anpassen der smb.conf:</p>
<p>Unter <code>[Global]</code> unter den vorhandenen Einträgen ergänzen:</p>
<p><div class="highlight"><pre><span></span><code><span class="na">password server</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">DC1.TNXX.ITO</span>
<span class="na">idmap uid</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">10000-20000</span>
<span class="na">idmap gid</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">10000-20000</span>
<span class="na">winbind enum users</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">yes</span>
<span class="na">winbind enum groups</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">yes</span>
<span class="na">winbind cache time</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">10</span>
<span class="na">winbind use default domain</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">yes</span>
<span class="na">winbind nss info</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">rfc2307</span>
</code></pre></div>
Zum übernehmen den Dienst neu starten:</p>
<p><div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>systemctl<span class="w"> </span>restart<span class="w"> </span>samba-ad-dc
</code></pre></div>
User testen:</p>
<p><div class="highlight"><pre><span></span><code>getend<span class="w"> </span>passwd
</code></pre></div>
Gruppen testen:</p>
<div class="highlight"><pre><span></span><code>getend<span class="w"> </span>group
</code></pre></div>
<blockquote>
<p>Es sollten Nutzer und Gruppen mit TNXX\ auftauchen. Sollte dem nicht der fall sein, bitte in der Datei <code>/etc/nsswitch.conf</code> alle Einträge mit <code>sss</code> durch <code>winbind</code> ersrtzen und dann nochmals versuchen.</p>
</blockquote>
<h2 id="freigaben-fur-die-gruppen-erstellen">Freigaben für die Gruppen erstellen</h2>
<p>Damit die Nutzer und Gruppen nun auch Laufwerke bekommen müssen die Verzeichnisse erstellt und Freigegeben werden:</p>
<p><div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>mkdir<span class="w"> </span>-p<span class="w"> </span>/srv/samba/projekte
</code></pre></div>
Admins zugang geben:</p>
<p><div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>chown<span class="w"> </span>root:<span class="s2">&quot;TNXX\Domain Admins&quot;</span><span class="w"> </span>/srv/samba/projekte
sudo<span class="w"> </span>chmod<span class="w"> </span><span class="m">0770</span><span class="w"> </span>/srv/samba/projekte
</code></pre></div>
ACL auf Domänenadmins erweitern:</p>
<div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>setfacl<span class="w"> </span>-m<span class="w"> </span>g:<span class="s2">&quot;TNXX\Domain Admins&quot;</span>:rwx<span class="w"> </span>/srv/samba/projekte
sudo<span class="w"> </span>setfacl<span class="w"> </span>-d<span class="w"> </span>-m<span class="w"> </span>g:<span class="s2">&quot;TNXX\Domain Admins&quot;</span>:rwx<span class="w"> </span>/srv/samba/projekte
</code></pre></div>
<p>Und damit die Rechte auch setzbar werden:</p>
<p><div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>samba-tool<span class="w"> </span>privilege<span class="w"> </span>grant<span class="w"> </span><span class="s2">&quot;TNXX\Domain Admins&quot;</span><span class="w"> </span>SeDiskOperatorPrivilege
</code></pre></div>
Eintrag in der smb.conf dafür:
<div class="highlight"><pre><span></span><code><span class="k">[Projekte]</span>
<span class="na">path</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">/srv/samba/projekte</span>
<span class="na">read only</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">no</span>
<span class="na">vfs objects</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">acl_xattr</span>
<span class="na">map acl inherit</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">yes</span>
<span class="na">inherit acls</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">yes</span>
<span class="na">inherit permissions</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">yes</span>
<span class="na">nt acl support</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">yes</span>
</code></pre></div></p>
<p>Jetzt kann die Freigabe vom Admin mit den Jeweiligen User-Gruppenrechten
gesetzt werden. Hierfür in einer Windows-Umgebung die Eigenschaften des Netzlaufwerkes anpassen.</p>
<p><a class="md-button" href="../ubuntu-ad-dc.pdf">PDF herunterladen</a></p>
</article>
</div>
<script>var target=document.getElementById(location.hash.slice(1));target&&target.name&&(target.checked=target.name.startsWith("__tabbed_"))</script>
</div>
</main>
<footer class="md-footer">
<div class="md-footer-meta md-typeset">
<div class="md-footer-meta__inner md-grid">
<div class="md-copyright">
Made with
<a href="https://squidfunk.github.io/mkdocs-material/" target="_blank" rel="noopener">
Material for MkDocs
</a>
</div>
</div>
</div>
</footer>
</div>
<div class="md-dialog" data-md-component="dialog">
<div class="md-dialog__inner md-typeset"></div>
</div>
<script id="__config" type="application/json">{"annotate": null, "base": "../..", "features": ["navigation.sections"], "search": "../../assets/javascripts/workers/search.7a47a382.min.js", "tags": null, "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version": "Select version"}, "version": null}</script>
<script src="../../assets/javascripts/bundle.e71a0d61.min.js"></script>
</body>
</html>