Active Directory na Debianie

Zobacz też:

Najpierw należy ustawić statyczny IP. Wpisujemy:

nano /etc/network/interfaces

i nasz plik powinien wyglądać mniej więcej tak:


source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet static
address 192.168.1.160
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
dns-nameservers 127.0.0.1 8.8.8.8

Teraz można zrestartować połączenia sieciowe poleceniem:

/etc/init.d/networking restart

Dalej powinniśmy wyedytować plik hosts:

nano /etc/hosts

Jego zawartość ustawić jak poniżej:


127.0.0.1 localhost
192.168.1.160 server.ckp.local server

# The following lines are desirable for IPv6 capable hosts
::1 localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

Aktualizujemy system:

apt-get update
apt-get upgrade

Teraz instalujemy wszystkie potrzebne narzędzia do instalacji samby:

apt-get install acl attr autoconf bind9 bind9utils  bison build-essential \
debhelper dnsutils docbook-xml docbook-xsl flex gdb libjansson-dev krb5-user \
libacl1-dev libaio-dev libarchive-dev libattr1-dev libblkid-dev libbsd-dev \
libcap-dev libcups2-dev libgnutls28-dev libgpgme11-dev libjson-perl \
libldap2-dev libncurses5-dev libpam0g-dev libparse-yapp-perl \
libpopt-dev libreadline-dev nettle-dev perl perl-modules pkg-config \
python-all-dev python-crypto python-dbg python-dev python-dnspython \
python3-dnspython python-gpgme python3-gpgme python-markdown python3-markdown \
python3-dev xsltproc zlib1g-dev

W trakcie instalacji wyskoczą nam okienka z prośbą o nazwę domeny i serwera, wypełniamy jak poniżej (domena: CKP.local, serwer: server.ckp.local):

Dalej należy dodać ACL do głównej partycji. Edytujemy kolejny plik:

nano /etc/fstab

i zamiast

/ ext4 errors=remount-ro 0 1

dajemy:

 / ext4 errors=remount-ro,user_xattr,acl,barrier=1 1 1

i następnie wykonujemy:

mount -o remount /

Dalej pobieramy sambę i wypakowujemy (niestety apt-get install samba nie zadziała tak jak by się chciało):

cd /usr/src
wget https://download.samba.org/pub/samba/samba-latest.tar.gz
tar zxvf samba-latest.tar.gz
cd samba-*
./configure

*) W zależności którą wersję mamy.

Jak wszystko przejdzie bezbłędnie, wykonujemy:

make
make install

Trochę to potrwa.

Dalej uruchamiamy instalacje domeny:

/usr/local/samba/bin/samba-tool domain provision

3 pierwsze opcje domyślne (wciskamy ENTER), czyli CKP.LOCAL, CKP, dc.
Następnie wybieramy DNS’a i będzie to ręcznie wpisany BIND9_DLZ.
Dalej podajemy 2 razy hasło administratora domeny i instalacja idzie do końca. Powinien wyjść podobny komunikat:

Konfiguracja Kerberosa:

cp /etc/krb5.conf /etc/krb5.conf.old
cp /usr/local/samba/private/krb5.conf /etc/krb5.conf

Następnie konfiguracja DNS’a:

nano /etc/bind/named.conf.options

W pliku konfiguracyjnym wpisujemy jak niżej:


options {
directory "/var/cache/bind";

forwarders {
8.8.8.8;
8.8.4.4;
};

dnssec-validation auto;

auth-nxdomain no; # conform to RFC1035
listen-on port 53 { any; };
allow-query { any; };
tkey-gssapi-keytab "/usr/local/samba/private/dns.keytab";
};

A w pliku:

nano /etc/bind/named.conf.local

dodajemy na końcu:

include "/usr/local/samba/private/named.conf";

Sprawdzamy, czy jest poprawna konfiguracja – wpisując poniższe polecenie nie powinno się nic pokazać.

named-checkconf

Teraz plik resolvera:

nano /etc/resolv.conf

powinien wyglądać tak:

domain ckp.local
search ckp.local
nameserver 192.168.1.160

Na koniec restart usługi DNS:

/etc/init.d/bind9 restart

I uruchamiamy sambe wpisując po prostu samba. Sprawdzanie działania:

pgrep samba

Powinny wyskoczyć PID procesów samby jeśli jest uruchomiona.

Teraz trzeba dodać sambe do autostartu. W aktualnym Debianie brakuje pliku /etc/rc.local więc go stworzymy:

nano /etc/rc.local

Jako zawartość wklejamy:


#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.

/usr/local/samba/sbin/samba

exit 0

Teraz dodajemy m.in. odpowiednie prawa i sprawdzamy czy jest OK:

chmod +x /etc/rc.local
systemctl daemon-reload
systemctl start rc-local
systemctl status rc-local

Powinno się ukazać coś takiego:

Wychodzimy Crtl+C.
Teraz możemy dołączyć komputery do domeny.

W kolejnych wpisach:

  • Zarządzanie AD na Debianie
  • Tworzenie profilu mobilnego

Bibliografia:

  • https://linuxconfig.org/enable-ssh-root-login-on-debian-linux-server
  • https://stackoverflow.com/questions/44797694/where-is-rc-local-in-debian-9-debian-stretch
  • https://www.it-adamczyk.pl/warsztaty/domena-active-directory-linuxie-aktualizacja-2017/
  • https://wiki.samba.org/index.php/Installing_Samba

6 myśli na “Active Directory na Debianie”

  1. Szkoda tylko, że przy /etc/init.d/networking restart pojawia się już błąd. Brakuje tu informacji o konfiguracji eth0, w debianie 9 już tak się nie nazywa interfejs sieciowy, tak więc poradnik niekompletny :/

  2. To zależy chyba od sprzętu, spotkałem się z eth0 czy innymi nazwami. Jest napisane, że konfiguracja powinna wyglądać “mniej więcej tak”, kto się choć trochę zna, powinien dać radę to ogarnąć.

  3. Bardzo fajnie i przystępnie opisane – z niecierpliwością czekam na zarządzanie AD przez debian. Co do eth0 to zależy od nazwy interfejsu sprzetowego. Np. moja karta sieciowa na virtualce ma nazwę smm3 a nie eth0. Większość fizycznych sieciówek jest jednak nazywana eth.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

 

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.