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 --min-pwd-age=0 --max-pwd-age=180 --min-pwd-length=5 --history-length=0 Password complexity deactivated! 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
# samba-tool domain passwordsettings show Password information for domain 'DC=adomain,DC=lan' Password complexity: off Store plaintext passwords: off Password history length: 0 Minimum password length: 5 Minimum password age (days): 0 Maximum password age (days): 180 Account lockout duration (mins): 30 Account lockout threshold (attempts): 0 Reset account lockout after (mins): 30
