stačí odstranit „[NOTFOUND=return]“. Nicméně zeroconf stejně nebudeme používat. A ještě bychom měli přidat řešení jmen přes WINS. Proto tuto řádku upravíme na něco podobného:
hosts: files dns wins mdns4_minimal mdns4
Nastavení pro WINS bude dále v souboru /etc/samba/smb.conf.
Nastavení synchronizace času s řadičem domény.
Upravte /etc/default/ntpdate a nastavte následující hodnoty
NTPSERVERS="dc.mydomain.local" # откуда брать время, на контроллере домена по умолчанию имеестя NTP-сервер NTPDATE_USE_NTP_CONF=no
Nastavení přístupu přes SSH.
Bude nutné nainstalovat balík openssh-server. (Před instalací balíků je užitečné nakonfigurovat Ubuntu pro ukládání balíčků do mezipaměti, jak je popsáno v článku). Výchozí konfigurační soubor nám zatím plně vyhovuje. (Později by možná stálo za to přenastavit použití klíče nebo certifikátu, případně vazbu na AD.)
Instalace Samba a Winbind.
Po instalaci se tyto dvě služby automaticky přidají do automatického spouštění.
V souboru /etc/samba/smb.conf smažte vše a napište toto:
[global]
log file = /var/log/samba/log.%m
max log size = 50
hosts allow = 192.168. # подсети, которые разрешаются к использованию
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
wins server = 192.168.3.200 # тут айпишник вашего сервера WINS (у меня то же, что и dc.mydomain.local, но айпишник предпочтительней)
unix charset = UTF8
dos charset = cp866
workgroup = MYDOMAIN
security = ADS
realm = MYDOMAIN.LOCAL
password server = dc.mydomain.local
encrypt passwords = yes
pam password change = yes
# netbios name = firstubuntu
auth methods = winbind guest
lanman auth = no
client lanman auth = no
client ntlmv2 auth = yes
min protocol = NT1
auth methods = winbind
server string = %h server (Samba, Ubuntu)
preferred master = no
dns proxy = no
panic action = /usr/share/samba/panic-action %d
name resolve order = lmhosts host wins bcast
idmap backend = rid:MYDOMAIN.LOCAL=10000-19999
; idmap domains = MYDOMAIN.LOCAL
; idmap config MYDOMAIN.LOCAL:backend = rid
; idmap config MYDOMAIN.LOCAL:range = 10000-19999
idmap uid = 10000-19999
idmap gid = 10000-19999
winbind use default domain = yes
; winbind nested groups = yes
winbind refresh tickets = yes
winbind enum groups = yes
winbind enum users = yes
template shell = /bin/bash
; template homedir = /home/%D/%U
usershare path = /var/lib/samba/usershares/
usershare max shares = 100
usershare allow guests = yes
usershare owner only = yes
[printers]
comment = All Printers
browseable = no
path = /var/spool/samba
printable = yes
; guest ok = no
; read only = yes
create mask = 0700
[print$]
comment = Printer Drivers
path = /var/lib/samba/printers
; browseable = yes
; read only = yes
; guest ok = no
; write list = root, @ntadmin
Přidání počítače do domény.
net ads join -U Administrator
Po zadání příkazu bude vyžádáno heslo. Bude potřeba účet s právem přidávat počítače do domény, například účet správce domény MYDOMAIN\Administrator. Restartujte služby winbind a samba.
/etc/init.d/winbind restart /etc/init.d/samba restart
Znovu nastavujeme /etc/nsswitch.conf
nsswitch.conf mimo jiné určuje zdroje informací o uživatelských účtech. Naše účty budou nyní na doménovém řadiči a zdrojem informací o nich bude sloužit winbind. Upravujeme
passwd: files winbind group: files winbind shadow: files winbind
Zbylé řádky necháme tak, jak jsou. Nyní, pro ověření, zda se náš winbind připojil k řadiči domény a zda funguje správně, spustíme
getent passwd
Výsledkem by měly být naše lokální účty a dlouhý seznam našich doménových účtů. Pokud je neuvidíte, hledejte chybu v předchozích krocích.
Nastavení PAM.
Při úpravě konfigurace PAM buďte opatrní – existuje riziko, že přijdete o možnost se přihlásit. Při úpravě těchto souborů se doporučuje mít pro jistotu otevřené několik terminálů s přihlášeným uživatelem root.
Upravujeme /etc/pam.d/common-auth
auth required pam_env.so auth sufficient pam_unix.so likeauth nullok try_first_pass auth sufficient pam_winbind.so use_first_pass krb5_auth krb5_ccache_type=FILE auth required pam_deny.so
Upravujeme /etc/pam.d/common-account
account sufficient pam_winbind.so account required pam_unix.so
Upravujeme /etc/pam.d/common-session
session optional pam_mkhomedir.so skel=/etc/skel/ umask=0077 session optional pam_ck_connector.so nox11 session required pam_limits.so session required pam_env.so session required pam_unix.so
Možná bude v novějších distribucích nutné zakomentovat pam_ck_connector kvůli změnám v consolekit. Ve mnou aktualizované Gentoo mi kvůli tomu přestalo fungovat automatické připojování svazků. Zdá se, že v novějších verzích Gnome se relace v consolekit vytváří vlastními prostředky.
Upravujeme /etc/pam.d/common-password
## password required pam_cracklib.so difok=2 minlen=8 dcredit=2 ocredit=2 retry=3 password sufficient pam_unix.so try_first_pass use_authtok nullok sha512 shadow ## password sufficient pam_winbind.so use_authtok password sufficient pam_winbind.so password required pam_deny.so
Při této konfiguraci se Ubuntu při autentizaci nejprve pokusí obrátit se prostřednictvím winbindu na doménového řadiče a poté se pokusí použít lokální uživatelské účty. Od této chvíle se můžeme do systému přihlásit pod doménovým účtem. Při tom bude vytvořen domovský adresář a po dobu relace bude uchováván Kerberos lístek, který nám poskytuje přístup k síťovým zdrojům.
V konzoli zkontrolujeme, zda se nám to podařilo, přepnutím aktuálního uživatele na doménového
su IvanovSV
Pokud se nic nepodařilo, hledejte chyby v předchozích krocích. Pokud se podařilo, můžete restartovat a přihlásit se do Gnome přímo pod svým doménovým uživatelským účtem.
Pro přidání doménového účtu do lokální skupiny (například audio) upravte soubor /etc/groups a přidejte na konec řádku jméno účtu vedle příslušné skupiny.
Postup spouštění winbind.
Kvůli tomu, že služba winbind ve výchozím nastavení startuje dříve, než je nakonfigurována síť, první pokusy winbindu o spojení s doménovým řadičem selhávají a winbind provádí dlouhou pauzu před dalším pokusem. Proto se uživatel nemůže přihlásit ihned, ale až po několika minutách čekání. Opravíme to – přesuneme spuštění winbindu na samotný konec procesu bootování. K tomu přejmenujeme symbolické odkazy ve tvaru /etc/rcX.d/S20winbind na S99winbind, kde X je číslo runlevelu. Například takto
for i in `seq 2 5`; do mv /etc/rc$i.d/S20winbind /etc/rc$i.d/S99winbind; done;
