Mainos / Advertisement:

Linux AD liitos

Kohteesta Taisto
Versio hetkellä 15. syyskuuta 2014 kello 19.47 – tehnyt Minh (keskustelu | muokkaukset) (→‎Samban jaon oikeudet AD:ssa)
Siirry navigaatioon Siirry hakuun

Tässä oppaassa neuvomme sinua kuinka liität linux tietokoneen osaksi Windows Serverin Active Directory Domain Serviceä.

Esimerkissämme käytössämme on verkkoavaruus 192.168.0.0/24
Oletusyhdyskäytävänä (Default Gateway) on verkon ensimmäinen osoite eli 192.168.0.1.
Windows-palvelimen ip-osoite on 192.168.0.2 ja nimi WIN.
Linux-tietokone käyttää ip-osoitetta 192.168.0.3 ja nimeä LNX.
Toimialueen nimi on firma.local.
Linux tietokone käyttää debianin versiota 7.1.0


Palveluiden asennus

Jotta voit liittää linux tietokoneen osaksi AD:ta, sinun tarvitsee asentaa muutama ohjelmisto.

aptitude install samba winbind krb5-user ntp

NTP on vapaaehtoinen, mutta suosittelemme asentamista. Kerberos vaatii että aikaero on enintään 5 minuuttia. NTP paketti päivittää automaattisesti kellon oikeaan aikaan.

Konfigurointi

Verkko / DNS

Ensimmäiseksi määritellään linuxin verkkoasetukset oikein, jotta liitos saadaan tehtyä onnistuneesti. Linuxin pitää saada yhteys DC-palvelimeen (Domain Controller), joten /etc/network/interfaces tiedosto pitää määritellä niin, että yhteys luonnistuu.

nano /etc/network/interfaces
auto eth0
iface eth0 inet static
       address 192.168.0.3
       netmask 255.255.255.0
       gateway 192.168.0.1

Toimialueen ohjauskone (DC) hoitaa luonnollisesti myös nimipalvelimen (DNS) tehtäviä eli myös /etc/resolv.conf tiedostoa pitää muokata niin, että linux tietokone ymmärtää tehdä nimikyselyt DC:n kautta. /etc/resolv.conf tiedostoon määritellään myös mitä toimialuetta tietokone käyttää.

nano /etc/resolv.conf
search firma.local
nameserver 192.168.0.2

Tarkista että nimipalvelut toimivat molempiin suuntiin nslookupin avulla!

 nslookup win.firma.local
 nslookup 192.168.0.2

> Kun kysyt win.firma.local sen pitäisi vastata 192.168.0.2

> Kun kysyt 192.168.0.2 sen pitäisi vastata win.firma.local

Suositeltaa on pingata palvelimeen Linuxista Windowssiin IP-osoitteella ja DNS nimellä.

Samba

Seuraavaksi konfiguroimme samban. Samba on mainio ohjelmisto linuxin windows-integraatiointiin, yleisimmin se tunnetaan ehkä tiedostopalvelimena. Samban avulla voi AD-liitoksen lisäksi tehdä jopa linux-palvelimesta itsenäisen DC:n, mutta meille riittää pelkkä liitos.

nano /etc/samba/smb.conf

Samba tiedostosta tarvii löytyä ainakin seuraavat kohdat [Global] kohdan alta. Tarpeen mukaan siis lisää, tai muokkaa tiedostoa niin että sieltä löytyy nämä.

workgroup = FIRMA
realm = FIRMA.LOCAL
security = ads
idmap gid = 10000-20000
idmap uid = 10000-20000
template shell = /bin/bash
domain master = no
winbind enum users = yes 
winbind enum groups = yes 
winbind use default domain = yes
winbind nested groups = yes
encrypt passwords = yes 
log level = 5 
log file = /var/log/samba/%m 
max log size = 1000 


Tämän jälkeen samba ja winbind pitää käynnistää uudelleen

service samba  restart
service winbind restart

Nyt liitoksen pitäisi onnistua komennolla

net ads join -U administrator

Jos tulee virhe No DNS domain configured for debian. Unable to perform DNS Update, niin muokkaa seuraava tiedosto:

 nano /etc/hosts

Seuraavanlaiseksi:

 127.0.0.1 hostname.domain.local hostname.domain.com hostname

Nyt kirjautuminen pitäisi onnistua toimialueen tunnuksilla. Kuitenkaan integraatio ei ole vielä kovin syvällinen. /etc/pam.d/ hakemiston alta löytyy kirjautumiseen vaikuttavia asetustiedostoja. Nyt käymme lisäämässä yhden rivin common-session tiedostoon, jotta linuxiin syntyisi käyttäjille kotikansiot sisäänkirjautuessa.

nano /etc/pam.d/common-session

Lisää tämä rivi konfiguraatiotiedoston alkuun:

session required          pam_mkhomedir.so umask=0077 skel=/etc/skel/

Kerberos

Asennusohjelma kysyy seuraavia:

Workgroup/domain -> firma.local

Kerberos servers for your realm -> win.firma.local

Administrative server for your Kerberos realm -> win.firma.local

Avaa seuraava tiedosto ja tarkista että on määritetty oikein

 nano /etc/krb5.conf
 [realms]
     SKILLS.LOCAL = {
     kdc = win.firma.local
     admin_server = win.firma.local
     default_domain = firma.local
     }
     [domain_realm]
      .firma.local = FIRMA.LOCAL
     firma.local = FIRMA.LOCAL

Nsswitch

Nsswitch.conffista voimme määritellä mitä tiedostoja linux käyttää ensisijaisesti käyttäjien kohdalla. Käymme siis muokkaamassa nsswitch.conf tiedostoa niin että linux käyttää ensisijaisesti winbindiä käyttäjätiedostoja hakiessa.

nano /etc/nsswitch.conf
passwd:        files winbind
group:         files winbind
shadow:        compat

NTP - Kello

On hyödyllistä käydä muuttamassa /etc/ntp/ntp.conf tiedostoa niin, että linux käyttää DC:tä aikapalvelimenaan. Liitos voi kuitenkin onnistua vaikka tätä ei tekisi, mutta jos DC ja clientti (asiakastietokone) jostain syystä joskus joutuvat eri aikaan, niin integraatio ei toimi kunnolla.

nano /etc/ntp.conf

Käy asettamassa windows-palvelimen ip-osoite kohtaan jossa on muitakin servereitä lueteltuna.

server 192.168.0.2

Jos et asentanut NTP aikapalvelinta, laita palvelimesi oikeaan aikaan seuraavalla komennolla

 date --set 1998-11-02 
 date --set 21:08:00

HUOM!! Jos käytät graafista linuxia, niin avahi-daemonista voi koitua harmia. Poista se tarvittaessa komennolla

aptitude purge remove avahi-daemon

Testaus

Muista testata palvelun toimivuus seuraavilla komennoilla

Winbind testaus

Käyttäjätilien testaus:

 wbinfo -u

Käyttäjäryhmien testaus:

 wbinfo -g

Testaan Nsswitch

 getent passwd


 getent group

kerberoksen testaus

 kinit [email protected]

Samban jaon oikeudet AD:ssa

Jakojen oikeudet voidaan määritellä valid users ja write list-parametrien avulla. Parametrit hyväksyvät sekä käyttäjiä että ryhmiä. Ryhmät täytyy merkitä @-merkillä.

 [SHARE]
      path = /home/share
      valid users = @domain.local+"powerusers", domain.local+bill
      write list = @domain.local+"admins"

Kirjautumisrajoitukset

PAM voidaan konfiguroida sallimaan vain tietyn käyttäjäryhmän kirjautumiset:

 /etc/pam.d/common-auth 
 auth sufficient pam_unix.so nullok_secure 
 auth required pam_succeedif.so user ingroup admins
Mainos / Advertisement: