návod aktualizován květen 2022
Návod je určen pro nejnovější verze UBUNTU 22.04, 20.04 a 18.04. Pro jiné systémy nutno upravit některé kroky. Jako první musíme provést po instalaci přípravné práce.
Pro server potřebujeme pevnou síťovou adresu. V nových verzích Ubuntu se pro určení síťové adresy používá program netplan s konfiguračním souborem /etc/netplan/50-cloud-init.yaml.
Přepíšeme podle tohoto vzoru:
# This file is generated from information provided by
# the datasource. Changes to it will not persist across an instance.
# To disable cloud-init's network configuration capabilities, write a file
# /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following:
# network: {config: disabled}
network:
ethernets:
enp0s3:
addresses:
- 192.168.0.180/24
gateway4: 192.168.0.1
nameservers:
addresses:
- 192.168.0.180
- 192.168.0.1
search: []
optional: true
version: 2
Pro Ubuntu 22.04 musíme tuto konfiguraci trochu upravit.
# This file is generated from information provided by # the datasource. Changes to it will not persist across an instance. # To disable cloud-init's network configuration capabilities, write a file # /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following: # network: {config: disabled} network: ethernets: enp0s3: addresses: - 192.168.0.180/24 nameservers: addresses: - 192.168.0.180 - 192.168.0.1 search: [] routes: - to: default via: 192.168.0.1 optional: true
Následně aktivujeme příkazem netplan aply nebo provedeme reboot.
Dále se musíme zbavit služby systemd-resolve která pro localhost používá port 53 – budeme potřebovat pro DNS server samby.
Provedeme postupně tyto příkazy a kroky:
sudo systemctl disable systemd-resolved.service
sudo service systemd-resolved stop
Smažeme symlink.
rm /etc/resolv.conf
Soubor /etc/resolv.conf znovu vytvoříme.
Naplníme podle vzoru.
nameserver 127.0.0.53
nameserver 192.168.0.1
domain DOMOV.LOCAL
Dbejte na to aby druhý Nameserver byl již plně funkční, localhost zatím nefunguje.
Provedeme změnu jména počítače na plné jméno včetně domény.
Nejdříve musíme zrušit ochranu změny hesla. V souboru /etc/cloud/cloud.cfg změníme:
preserve_hostname: false na preserve_hostname: true
Do souboru /etc/hostname zapíšeme jméno
Domena.domov.local
Provedeme úpravu souboru /etc/hosts.
Doplníme řádek domény.
127.0.0.1 localhost.localdomain localhost
192.168.0.180 Domena.domov.local
::1 localhost6.localdomain6 localhost6
The following lines are desirable for IPv6 capable hosts
::1 localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
Pozor, nekopírovat celý obsah souboru, pouze doplnit řádek domény. (Ostatní řádky se mohou lišit případ od případu,)
Provedeme restart serveru.
Základní přípravné práce máme za sebou a můžeme jít instalovat sambu.
Začneme instalací:
apt-get update
apt-get dist-upgrade
apt-get install samba krb5-user krb5-config winbind libpam-winbind libnss-winbind
systemctl unmask samba-ad-dc.service
V konfiguračních nastaveních kerberos zadáme default rearm velkými písmeny
DOMOV.LOCAL
Další dva servery Kerberos server a Administrative Kerberos server zadáme již stejně jako plné jméno našeho počítače.
Domena.domov.local
Provedeme přípravu pro nastavení Samby jako Domény.
sudo systemctl stop samba-ad-dc.service smbd.service nmbd.service winbind.service
sudo systemctl disable samba-ad-dc.service smbd.service nmbd.service winbind.service
sudo mv /etc/samba/smb.conf /etc/samba/smb.conf.initial
Nyní můžeme přistoupit přímo k provedení operace
sudo samba-tool domain provision --use-rfc2307 --interactive
Pro účely našeho příkladu zadáme postupně tyto konfigurační údaje
Realm: DOMOV.LOCAL
Domain: DOMOV
Server role: dc
DNS Backend: SAMBA_INTERNAL
DNS forwarder 192.168.0.1
Administrator password: ….
Retype password: ….
Nakonfigurujeme Kerberos
sudo mv /etc/krb5.conf /etc/krb5.conf.initial
cp /var/lib/samba/private/krb5.conf /etc/
Upravíme soubor /etc/krb5.conf podle tohoto vzoru
[libdefaults]
default_realm = DOMOV.LOCAL
dns_lookup_realm = false
dns_lookup_kdc = false
[realms]
DOMOV.LOCAL = {
kdc = Domena.domov.local
admin_server = Domena.domov.local
default_domain = domov.local
}
[domain_realm]
.domov.local = DOMOV.LOCAL
domov.local = DOMOV.LOCAL
Znovu nastartujeme sambu
sudo systemctl start samba-ad-dc.service
sudo systemctl status samba-ad-dc.service
sudo systemctl enable samba-ad-dc.service
Provedeme kontrolu Kerberos
kinit administrator@DOMOV.LOCAL
klist
Možnost další kontroly:
sudo samba-tool domain level show