Ez a dokumentum egy előző változata!
Tartalomjegyzék
Samba 4 AD telepítése RHEL/Almalinux 9 (x86_64) rendszeren.
A telepítéshez és az üzemeltetéshez szükséges dokumentáció a https://samba.tranquil.it/doc/en/ címen érhető el.
Előkészítés
Kiindulásként AlmaLinux 9 (x86_64) operációs rendszer telepítését kell elvégezni. A telepítés minimal telepítés.
Telepítést követő lépések
Módosítani kell a /etc/dnf/dnf.conf állományt a felesleges gyenge függőségek telepítésének tiltásához:
# if [ ! -f /etc/dnf/dnf.conf.orig ] ; then cp -a /etc/dnf/dnf.conf /etc/dnf/dnf.conf.orig && echo 'install_weak_deps=False' >> /etc/dnf/dnf.conf ; fi
Érdemes kikapcsolni a kernel üzenetek megjelenítését
# grubby --update-kernel=ALL --args=quiet
A SElinux-ot átmenetileg megengedő módba kell kapcsolni
# sed -i 's/^SELINUX=.*/SELINUX=permissive/' /etc/selinux/config
Be kell állítani a rendszer locale-t en_US.UTF-8-ra
# localectl
Be kell állítani a rendszer hostnevét a kívánt gépnév + realm formában
# hostnamectl set-hostname dc1.adomain.lan
Samba 4 AD telepítése
Előkészítő műveletek
A telepítés előtt be kell állítani a gép hálózatát statikus IP-re. A példában a dc1.adomain.lan gép IP címe 192.168.110.11/24.
Fel kell venni a gép FQDN-t a /etc/hosts állományba
# cat > /etc/hosts <<EOF 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 192.168.110.11 dc1.adomain.lan EOF
Telepíteni kell az EPEL release csomagot
# dnf install epel-release
Telepíteni kell néhány kiegészítő csomagot
# dnf install bind-utils chrony krb5-workstation
Le kell tölteni és telepíteni kell a csomagok aláíró kulcsát
# curl -o /etc/pki/rpm-gpg/RPM-GPG-KEY-TISSAMBA-9 https://samba.tranquil.it/RPM-GPG-KEY-TISSAMBA-9
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 3147 100 3147 0 0 16650 0 --:--:-- --:--:-- --:--:-- 16650
# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-TISSAMBA-9
<code>
Létre kell hozni a samba csomagokat tartalmazó repo fájlt
<code>
# echo -e "[tis-samba]\nname=tis-samba\nbaseurl=https://samba.tranquil.it/redhat9/samba-4.20/\nenabled=1\ngpgcheck=1\ngpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-TISSAMBA-9\npriority=98" > /etc/yum.repos.d/tissamba.repo
Telepíteni kell a samba-dc csomagot
# dnf install samba-dc
Biztonsági másolatot kell készíteni a /etc/krb5.conf állományról
# [ ! -f /etc/krb5.conf.orig ] && cp -a /etc/krb5.conf /etc/krb5.conf.orig
Biztonsági másolatot kell készíteni a /etc/samba/smb.conf állományról (az állományt magát törölni kell).
# [ ! -f /etc/samba/smb.conf.orig ] && mv /etc/samba/smb.conf /etc/samba/smb.conf.orig
Érdemes biztonsági másolatot készíteni a /var/lib/samba könyvtárról. Ez a könytár visszaállítható, ha a provisioning sikertelen.
# [ ! -d /var/lib/samba.orig ] && cp -a /var/lib/samba /var/lib/samba.orig
Tűzfal konfiguráció módosítása
# firewall-cmd --permanent --remove-service=cockpit --remove-service=dhcpv6-client success # firewall-cmd --permanent --add-service=samba-dc success # firewall-cmd --reload success # firewall-cmd --list-services samba-dc ssh
Samba 4 provision
A domain előkészítéséhez az alábbi utasítást kell futtatni
# samba-tool domain provision --use-rfc2307 --domain=ADOMAIN --realm=ADOMAIN.LAN --server-role=dc --host-name=dc1.adomain.lan INFO 2025-09-06 13:36:56,500 pid:17 /usr/lib64/python3.9/site-packages/samba/provision/__init__.py #2414: gkdi/gmsa root key added with guid 2a4c9b44-1396-beda-f6f7-b30e2970cf03 INFO 2025-09-06 13:36:56,500 pid:17 /usr/lib64/python3.9/site-packages/samba/provision/__init__.py #2425: A Kerberos configuration suitable for Samba AD has been generated at /var/lib/samba/private/krb5.conf INFO 2025-09-06 13:36:56,501 pid:17 /usr/lib64/python3.9/site-packages/samba/provision/__init__.py #2427: Merge the contents of this file with your system krb5.conf or replace it with this one. Do not create a symlink! INFO 2025-09-06 13:36:56,556 pid:17 /usr/lib64/python3.9/site-packages/samba/provision/__init__.py #2086: Setting up fake yp server settings INFO 2025-09-06 13:36:56,628 pid:17 /usr/lib64/python3.9/site-packages/samba/provision/__init__.py #492: Once the above files are installed, your Samba AD server will be ready to use INFO 2025-09-06 13:36:56,628 pid:17 /usr/lib64/python3.9/site-packages/samba/provision/__init__.py #497: Server Role: active directory domain controller INFO 2025-09-06 13:36:56,628 pid:17 /usr/lib64/python3.9/site-packages/samba/provision/__init__.py #498: Hostname: dc1.adomain.lan INFO 2025-09-06 13:36:56,628 pid:17 /usr/lib64/python3.9/site-packages/samba/provision/__init__.py #499: NetBIOS Domain: ADOMAIN INFO 2025-09-06 13:36:56,629 pid:17 /usr/lib64/python3.9/site-packages/samba/provision/__init__.py #500: DNS Domain: adomain.lan INFO 2025-09-06 13:36:56,629 pid:17 /usr/lib64/python3.9/site-packages/samba/provision/__init__.py #501: DOMAIN SID: S-1-5-21-3755515453-789900971-4137546087
Be kell állítani az admin felhasználó jelszavát
# samba-tool user setpassword administrator New Password: Retype Password: Changed password OK
Át kell állítani a /etc/krb5.conf állományát
# rm -f /etc/krb5.conf # ln -s ../var/lib/samba/private/krb5.conf /etc/krb5.conf
Engedélyezni kell és el kell indítani a samba szolgáltatást
# systemctl --now enable samba
Ellenőrzések
Névfeloldáso
# host -t A hup.hu 127.0.0.1 hup.hu has address 92.119.122.43 # host -t A adomain.lan 127.0.0.1 Using domain server: Name: 127.0.0.1 Address: 127.0.0.1#53 Aliases: # host -t SRV _ldap._tcp.adomain.lan 127.0.0.1 Using domain server: Name: 127.0.0.1 Address: 127.0.0.1#53 Aliases: _ldap._tcp.adomain.lan has SRV record 0 100 389 dc1.adomain.lan.adomain.lan.
A tesztek végén módosítható a gép nameserver beállítása
# cat /etc/resolv.conf # Generated by NetworkManager search adomain.lan nameserver 127.0.0.1
Kerberos ellenőrzése
# kinit administrator@ADOMAIN.LAN Password for administrator@ADOMAIN.LAN: Warning: Your password will expire in 41 days on Sat 18 Oct 2025 01:46:03 PM CEST # klist Ticket cache: FILE:/tmp/krb5cc_0 Default principal: administrator@ADOMAIN.LAN Valid starting Expires Service principal 09/06/2025 14:17:40 09/07/2025 00:17:40 krbtgt/ADOMAIN.LAN@ADOMAIN.LAN renew until 09/07/2025 14:17:28
Ha nem működik, akkor törölni kell a /etc/krb5.conf szimbolikus linket és létre kell hozni a fájlt az alábbi tartalommal
# cat > /etc/krb5.conf <<EOF
[libdefaults]
default_realm = ADOMAIN.LAN
dns_lookup_realm = true
dns_lookup_kdc = true
[realms]
ADOMAIN.LAN = {
kdc = dc1.adomain.lan
admin_server = dc1.adomain.lan
}
EOF
Domain szintű ellenőrzések
# samba-tool domain level show Domain and forest function level for domain 'DC=adomain,DC=lan' Forest function level: (Windows) 2008 R2 Domain function level: (Windows) 2008 R2 Lowest function level of a DC: (Windows) 2008 R2 # samba-tool user list Guest krbtgt Administrator
Műveletek
Listázzuk a jelenlegi jelszó beállításokat
# samba-tool domain passwordsettings show Password information for domain 'DC=adomain,DC=lan' Password complexity: on Store plaintext passwords: off Password history length: 24 Minimum password length: 7 Minimum password age (days): 1 Maximum password age (days): 42 Account lockout duration (mins): 30 Account lockout threshold (attempts): 0 Reset account lockout after (mins): 30
Módosítsunk néhány beállítást
# samba-tool domain passwordsettings set --complexity=off --store-plaintext=on --min-pwd-age=0 --max-pwd-age=180 --min-pwd-length=5 --history-length=0 Password complexity deactivated! Plaintext password storage for changed passwords activated! Password history length changed! Minimum password length changed! Minimum password age changed! Maximum password age changed! All changes applied successfully!
Ellenőrizzük a módosítást
