Guida Centos 5.5 Pdc Samba con Openldap Smbldap

Creare Pdc Samba su Centos 5.5 con Openldap Smbldap Samba

In questa guida come esempio
 
ServerPdc: srvlinux.domain.local
Domain: domain.local

___________________________________________________________________________________________________________________________________

Configurazione ntp server

#yum install ntp

Editare file /etc/ntp.conf
# vi /etc/ntp.conf

inserire all'interno del file

server ntp1.inrim.it
server ntp2.inrim.it

Decomentare come segue adattando alla propria rete
# Hosts on local network are less restricted.
restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap

Avviare servizio ed impostarlo all'avvio
#service ntpd start
#chkconfig ntpd on

Test della funzionalita
#ntpq -p

I client dovranno puntare il server come ntp di rete
___________________________________________________________________________________________________________________________________

Configurazione Iptables

Editera file /etc/sysconfig/iptables

#Porte Samba
-A RH-Firewall-1-INPUT -s maschera di rete -m state --state NEW -m tcp -p tcp --dport 445 -j ACCEPT
-A RH-Firewall-1-INPUT -s maschera di rete -m state --state NEW -m udp -p udp --dport 445 -j ACCEPT
-A RH-Firewall-1-INPUT -s maschera di rete -m state --state NEW -m udp -p udp --dport 137 -j ACCEPT
-A RH-Firewall-1-INPUT -s maschera di rete -m state --state NEW -m udp -p udp --dport 138 -j ACCEPT
-A RH-Firewall-1-INPUT -s maschera di rete -m state --state NEW -m tcp -p tcp --dport 139 -j ACCEPT
#Porta Ntp
-A RH-Firewall-1-INPUT -s maschera di rete -m state --state NEW -m udp -p udp --dport 123 -j ACCEPT
#Porta Http per ldap admin
-A RH-Firewall-1-INPUT -s maschera di rete -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
___________________________________________________________________________________________________________________________________

Sistemare Samba di default esce versione Samba 3.0.X.
ma abilitando i repository "CentOSPlus" e "contrib"
si puo installare Samba Version 3.3.8-0.52.el5_5.2

quindi editare file /etc/yum.repos.d/CentOS-Base.repo

[centosplus]
enabled=0 ----> 1
[contrib]
enabled=0 ----> 1

Eseguire

# rpm -e samba-common samba-client samba --nodeps --test
# rpm -e samba-common samba-client samba --nodeps
# yum install samba3x-common samba3x samba3x-doc samba3x-client

Se samba non era installato nel pc eseguire dopo aver ablitato i repo

# yum install samba3x-common samba3x samba3x-doc samba3x-client

Oppure rimuovere con yum remove i pacchetti samba 3.0.X ed installare samba 3.3.8

Se si utlizza il sernet e disponibile samba 3.5.8 ma non riuscivo a farlo funzionare dopo l'installazione
___________________________________________________________________________________________________________________________________

Installare Openldap e Smbldap bisogna aggiungere repository rpmforge
info: http://dag.wieers.com/rpm/FAQ.php

#Importare Chiave
rpm --import http://apt.sw.be/RPM-GPG-KEY.dag.txt

#Aggiungere repository Rpmforge verificare su sito versione
rpm -Uhv http://apt.sw.be/redhat/el5/en/i386/rpmforge/RPMS/rpmforge-release-0.3.6-1.el5.rf.i386.rpm

# yum install smbldap* openldap*
___________________________________________________________________________________________________________________________________

Configuriamo ora ldap.conf, slapd.conf, smbldap.conf e smbldap_bind.conf

Editiamo il file /etc/openldap/ldap.conf

BASE dc=domain, dc=local
URI ldap://127.0.0.1

Impostazione password
#slappasswd

inseriamo la pwd restituira stringa
esempio {SSHA}*caratteri*
copiamola perchè andra inserita in alcuni files

Editiamo il file /etc/openldap/slapd.conf

inseriamo negli include
include /etc/openldap/schema/samba.schema


suffix “dc=domain,dc=local”
rootdn “cn=admin,dc=domain,dc=local”
rootpw ({SSHA} PASSWORD COPIATA IN PRECEDENZA)

negli index inseriamo

index sambaSID eq
index sambaPrimaryGroupSID eq
index sambaDomainName eq

ed infine

#access to
attrs=userPassword,shadowLastChange,sambaNTPassword,sambaLMPassword

Ora copia il file samba.schema potrebbe gia essere presente nel percorso cmq
#cp /usr/share/doc/samba-3.X.X/LDAP/samba.schema /etc/openldap/schema/

Copiamo DB_CONFIG ed impostiamo accessi e permessi
#cp /etc/openldap/DB_CONFIG.example /var/lib/ldap/DB_CONFIG
#chown ldap:ldap /var/lib/ldap/DB_CONFIG
#chmod 600 /var/lib/ldap/DB_CONFIG

Avviare servizio ldap ed impostarlo all'avvio
service ldap start
chkconfig ldap on

Creiamo il file admin.ldif [Decidete un percorso io lo messo nella cartella dove metto le cfg]
come segue

# Voce 1: dc=domain,dc=local
dn: dc=domain,dc=local
dc: domain
o: domain.local
objectclass: top
objectclass: dcObject
objectclass: organization

# Voce 2: cn=admin,dc=domain,dc=local
dn: cn=admin,dc=domain,dc=local
cn: domain
objectclass: organizationalRole
objectclass: simpleSecurityObject
objectclass: top
userpassword: ({SSHA} PASSWORD COPIATA IN PRECEDENZA)

Ora digitiamo
#ldapadd -x -D “cn=admin,dc=domain,dc=local” -w [PASSWORD_IN_CHIARO] -f /percorso/admin.ldif

Ora visualizziamo il sid della macchina
# net getlocalsid

Otteniamo
S-*-*-*-*-*

copiamolo perchè andra inserito in alcuni files

Editiamo /etc/smbldap-tools/smbldap.conf

Compiliamolo andando a modificare i campi come segue

SID=”SID copiato in precedenza"
sambaDomain=”domain.local”
#slaveLDAP=”ldap.iallanis.info”
#slavePort=”389"
masterLDAP=”127.0.0.1"
suffix=”dc=domain,dc=local”
ldapTLS=”0"
userSmbHome=”\\nome del servero o indirizzo ip\%U”
userProfile=”\\nome del servero o indirizzo ip\profiles\%U”
mailDomain=”dominio di posta”

Ora editiamo /etc/smbldap-tools/smbldap_bind.conf

Compiliamolo come segue

slaveDN=”cn=admin,dc=domain,dc=local”
slavePw=”(pwd in chiaro)”
masterDN=”cn=admin,dc=domain,dc=local”
masterPw=”(pwd in chiaro)”

___________________________________________________________________________________________________________________________________

Configurazione di samba

Editiamo file smb.conf

[global]
workgroup = domain.local
netbios name = srvlinux
server string = Samba PDC Server Version %v
obey pam restrictions = Yes
passdb backend = ldapsam:ldap://127.0.0.1
passwd program = /usr/sbin/smbldap-passwd %upasswd chat = *New*password* %n\n *Retype*new*password* %n\n *all*authentication*tokens*updated*
add user script = /usr/sbin/smbldap-useradd -m “%u”
delete user script = /usr/sbin/smbldap-userdel “%u”
add group script = /usr/sbin/smbldap-groupadd -p “%g”
delete group script = /usr/sbin/smbldap-groupdel “%g”
add user to group script = /usr/sbin/smbldap-groupmod -m “%u” “%g”
delete user from group script = /usr/sbin/smbldap-groupmod -x “%u” “%g”
set primary group script = /usr/sbin/smbldap-usermod -g “%g” “%u”
add machine script = /usr/sbin/smbldap-useradd -w “%u”
logon drive = H:
domain logons = Yes
domain master = Yes
dns proxy = No
wins support = Yes
ldap admin dn = cn=admin,dc=domain,dc=local
ldap delete dn = Yes
ldap group suffix = ou=Groups
ldap idmap suffix = ou=Idmap
ldap machine suffix = ou=Computers
ldap passwd sync = Yes
ldap suffix = dc=domain,dc=local
ldap user suffix = ou=Users
ldap ssl = off
time server = yes
socket options = TCP_NODELAY IPTOS_LOWDELAY SO_SNDBUF=8192 SO_RCVBUF=8192

[homes]
comment = Home Directories
read only = No
create mask = 0700
directory mask = 0700
browseable = No

[netlogon]
comment = Network Logon Service
path = /percorso/netlogon
guest ok = Yes

Io personalmente all'interno della /home directory ho creato una cartella domain per le home degli utenti e la netlogon

quindi

#mkdir /home/domain
#mkdir /home/domain/homes
#mkdir /home/domain/netlogon

Impostiamo smbpasswd e popoliamo il database

#smbpasswd -w (PASSWORD IN CHIARO)

richiede password

#smbldap-populate -a Administrator -k 0

richiede password

Avviare servizi smb, nmb ed impostarli all'avvio

#service smb start
#service nmb start
#chkconfig smb on
#chkconfig nmb on
___________________________________________________________________________________________________________________________________

Configuriamo autenticazione con utility
#authconfig-tui

Ablitiamo:
Usa LDAP
Usa Password MD5
Usa password Shadow
Usa autenticazione LDAP

Clicchiamo su avanti

Server: ldap://127.0.0.1/
Base DN: dc=domain,dc=local
___________________________________________________________________________________________________________________________________

Creiamo il primo utente

Creiamo il primo utente con il comando:

#smbldap-useradd -N “Nome” -S “Cognome” -P -a -m -d /home/domain/nome - utente -c “decrizione” nome utente

Visualizzare gli utente
#smbldap-userlist

Cancellare utenti
#smbldap-userdell
___________________________________________________________________________________________________________________________________

Installiamo utlity per gestione database ldap ovviamente serve apache e php

#yum install httpd
#yum install php
#yum install php-ldap

#cd /var/www/html/
#wget http://downloads.sourceforge.net/project/phpldapadmin/phpldapadmin-php5/1.2.0.5/phpldapadmin-1.2.0.5.tgz
#tar -zxvf phpldapadmin-1.2.0.5.tgz
#mv phpldapadmin-1.2.0.5 phpldapadmin
#cp /var/www/html/phpldapadmin/config/config.php.example /var/www/html/phpldapadmin/config/config.php

Avviare servizio httpd ed impostarlo all'avvio
#service httpd restart
#chkconfig httpd on

Ora  se digitate http://ip server/phpldapadmin

Vi comparira la pagina di accesso

username: dn=admin,dc=domain,dc=local
pwd: quella impostata

___________________________________________________________________________________________________________________________________

Configurazione Selinux

Con questo comando visualizziamo le boolean disponibili per samba
# getsebool -a | grep samba

Diamo samba possibilita di essere domain controller
#setsebool -P samba_domain_controller on

Abilitiamo la directory home
#setsebool -P samba_enable_home_dirs on
#setsebool -P use_samba_home_dirs on
___________________________________________________________________________________________________________________________________

Ora lato linux e tutto ok quindi bisogna apportare le seguenti modifiche hai client windows 7

Da esegui aprire secpol.msc

RUN -> secpol.msc -> Security Settings -> Local Policies -> Security
Options -> "Network security:LAN Manager authentication level" to a "Send
LM & NTLM - use NTLMv2 if negotiated"

RUN -> secpol.msc -> Security Settings -> Local Policies -> Security
Options -> "Network security:Minimum sesion security for NTLM SSP based
(including secure RPC) clents" to a "No minimum"

RUN -> secpol.msc -> Security Settings -> Local Policies -> Security
Options -> "Network security:Minimum sesion security for NTLM SSP based
(including secure RPC) servers" to a "No minimum"

Modificare Regedit come segue.

Modificare queste due voci
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\LMCompatibilityLevel
from a 3 to a 1.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanworkstation\parameters\requiresecuritysignature
to a "0" (disabled)

Creare queste due voci.
HKLM\System\CCS\Services\LanmanWorkstation\Paramet ers
DWORD DomainCompatibilityMode = 1
DWORD DNSNameResolutionRequired = 0
___________________________________________________________________________________________________________________________________






SMF 2.0.15 | SMF © 2013, Simple Machines
TinyPortal © 2005-2012

Indietro all'articolo