Připojení k windows doméně

Založil Corsairetc, 12. 06. 2014, 10:34:13

Předchozí téma - Další téma

Corsairetc

Ahoj,
Snažím se najít nějaký ucelený návod na to, jak bych si mohl připojit debian 7 do windows domény k AD serveru.
Chtěl bych debian využít jako file server.
Našel jsem tento návod :
http://www.skelleton.net/2012/08/03/joining-a-debian-server-to-active-directory/
Jen se mě to nějak nedaří. Nemáte někdo odkaz na pěkný ucelený návad jak na to. Na ubuntu bylo Likewise open
pro připojení linuxu k doméně.

Pro info:
zde je konfigurace z /etc/krb5-conf
[libdefaults]

default_realm = FILIP.LOCAL
dns_lookup_realm = false
dns_lookup_kdc = true
ticket_lifetime = 24d
renew_lifetime = 7d
forwardable = true

[realms]

     FILIP.LOCAL = {
kdc = mn-nadsc003.filip.local
kdc = mn-sdc02.filip.local
admin_server = mn-nadsc003.filip.local
}

[domain_realm]
.filip.local = FILIP.LOCAL
filip.local = FILIP.LOCAL


nslookup na dc funguje a vrátí správnou ip adresu i jmenné ping na ostatní pc fungují.
Bohužel když zkusim kinit admin@filip.local napíše tuto chybu:
kinit: Cannot contact any KDC for realm 'filip.local' while getting initial credentials

Palo M.

Skus dat do /etc/hosts polozku pre dane KDC ale tak, aby cele domenove meno bolo ako prve, tj. by si tam mal mat nieco ako:
192.168.1.55 mn-nadsc003.filip.local mn-nadsc003
192.168.1.56 mn-sdc02.filip.local mn-sdc02

Mne to pomohlo pri obycajnom Kerberovi (server tiez Debian), bez tej polozky mi tiez Kerberos nefungoval (napriek tomu, ze mena KDC serverov boli v DNS a aj sa to spravne resolvovalo pomocou dig, nslookup a host).

Corsairetc

#2
Díky za radu, takto to nastavené mám bohužel stále stejná chyba.
Ještě jsem upravil nsswitch.conf a dal jsem dns na prvni misto.
Něco se zlepšilo teď dostanu tuto chybu když zadám klist:
klist: No credentials cache found (ticket cache FILE:/tmp/krb5cc_1000)

Tak už to jede, byla to celkem kravina stači napsat domenu se zapnutým CapsLock :-)
kinit admin@FILIP.LOCAL

Dokonce se mne podařilo přidat pc do domeny jen ještě narážím na tuto chybu:
root@virtualni:/etc/samba# net ads join -U adming
Enter adming's password:
Using short domain name -- MESA-MN
Joined 'VIRTUALNI' to realm 'mn.mesa.local'
net_update_dns_internal: Failed to connect to our DC!
DNS update failed!

Palo M.

Skus do DNS (na domain controleri) pridat ten linuxovy stroj rucne...

Co sa tyka toho caps-lock: Ja meno domeny pri kinit ani nepisem, len meno uzivatela (kedze ho vzdy ziadam z default realm), alebo ani meno nie (pouzije sa meno prihlaseneho uzivatela). Takze ani neviem, ze je to case-sensitive... Navyse samotny kinit explicitne pisem len velmi zriedka, pretoze mam cez Kerbera aj prihlasovanie (a teda TGT sa vyziada automaticky pomocou PAM uz pri prihlaseni).

Corsairetc

Ano děkuji to pomohlo.
Poslední věc čemu nerozumí je ta, když se hlasím buď do systému jako domain user a nebo přes ssh musím zadávat dvakrtát to samé heslo?
adming@virtualni:~$ su
Heslo:
Password:
root@virtualni

Palo M.

Citace od: Corsairetc kdy 13. 06. 2014, 14:08:40když se hlasím buď do systému jako domain user a nebo přes ssh musím zadávat dvakrtát to samé heslo?
This is not a bug, it's a feature :P. Prihlasenie do systemu je jedna vec, ziskanie ticketu z Kerbera druha. Nastastie existuje riesenie ako to zjednodusit a nepisat dvakrat to iste heslo 8).
Teraz nie som pri stroji a uplne detaily si z hlavy uz nepamatam, ale pozri si man pam_krb5 a man pam_unix, hlavne parametre try_first_pass a use_first_pass. Potom pozri v /etc/pam.d/, ako to mas na stroji nastavene (ake je poradie tychto PAM modulov), snad by to malo byt v subore common_auth. Druhemu autentikacnemu modulu v poradi by si mal dat jeden z tych parametrov (tj. aby pouzil to iste heslo, co uz bolo zadane). Pri rovnakom hesle by potom nemal prist druhy prompt, ale sa pouzije heslo, ktore si zadal do prveho promptu...

Ak chces mat hesla synchronizovane (teda pri zmene jedneho hesla sa zmeni aj druhe), skontroluj nielen auth, ale aj password (pravdepodobne sa nachadza v subore common_password) - ale zafunguje to len vtedy, ak budes heslo menit na danom linuxovom stroji (ak zmenis heslo na Windozackom DC, tak linuxovy stroj to samozrejme nebude vediet a v /etc/shadow bude nadalej to stare heslo).

Dalsia moznost by bola, nemat pre daneho domenoveho uzivatela heslo na linuxovom stroji vobec (vykricnik v /etc/shadow) - ale v tom pripade ak je DC nedostupny, tak ten uzivatel sa neprihlasi vobec :-\, pripadne len cez ssh s klucom, ak to ma dany uzivatel nastavene. Teoreticky by to sice malo byt mozne s pomocou modulu pam_ccreds z balika libpam-ccreds, ale v mojich podmienkach mi to nikdy nepomohlo (pretoze ja mam uzivatelov v LDAP a hesla v Kerberovi, vsetko na tom istom serveri, takze ked je ten server nedostupny, tak mi vypadne nielen autentikacia, ale aj samotna databaza uzivatelov a libnss-ldapd ju zjavne necachuje). Mozno v tvojom pripade to fungovat bude (ale asi to umozni len na prihlasenie do linuxu, ked bude DC nedostupny tak pri prihlaseni neziskas TGT a ked neskor DC nabehne, stale nebudes prihlaseny do domeny).

Cez PAM sa da nastavit rozlicny vysledny efekt, podla toho ako potrebujes... Napriklad sa da nastavit, ci Kerberovske heslo vyzaduje pre vsetkych uzivatelov (ak nie je uzivatel v domene, tak ho neprihlasi), alebo je to len "pridavok" (skusi vyziadat TGT, ale ak to zlyha, tak sa stale moze autentikovat inym sposobom).
Z toho vsetkeho vyplyva ista dan za flexibilitu: vyzaduje to iste porozumenie fungovania, aby si mohol dosiahnut nastavenie ake zamyslas...
Maly tip na zaver: Okrem standardneho 'man 8 pam_krb5' si pozri aj 'man 5 pam_krb5'

Corsairetc

#6
Děkuji moc za pomoc. V základu to funguje a zbytek už si doladím.

Tak jsem se ktomu dostal po delší době a bohužel ať do /etc/pam.d/common-auth dam do druheho modulu try_first_pass nebo use_first_pass tak stejně píše dvakrát heslo.

Ahoj, tak jsem to rozchodil. Zde je super odkaz kde je to celkem jasně popsané.
https://help.ubuntu.com/community/ActiveDirectoryWinbindHowto