Linux Forum Казахстан

Общий => Администрирование => Тема начата: kima от 27 Июня 2009, 14:22

Название: Openldap+tls+samba3+squid
Отправлено: kima от 27 Июня 2009, 14:22
Здравствуйте! помогите разобраться с smb.conf, долго мучился но нечего не выходит. и проблема создания пользов. в ЛДАПе делал как в статьях но у меня не было таких же веток что приводило к ошибкам. вообшем оставил только вот это
[root@localhost kimbat]# ldapsearch -x -LLL -b 'dc=aes,dc=kz' '(objectclass=*)'
dn: dc=aes,dc=kz
objectClass: organization
objectClass: dcObject
dc: aes
o: home
подскажите как дальше строить дерево для пользов. вышеописанных служб
сквид вроде работает (выдает окошко аутентификации и команда #ps -aux | grep squid показыв на ldaps://www.aes.kz)
а вот с самбой похуже даже не стартует! короче вот конфиги и лог самбы:
[codebox]log.smbd

[2009/06/26 23:14:41,  0] smbd/server.c:main(1267)
  smbd version 3.3.3 started.
  Copyright Andrew Tridgell and the Samba Team 1992-2009
[2009/06/26 23:14:41,  0] passdb/pdb_interface.c:make_pdb_method_name(149)
  No builtin nor plugin backend for ldapsam found
[2009/06/26 23:14:41,  0] lib/util.c:smb_panic(1673)
  PANIC (pid 3091): pdb_get_methods_reload: failed to get pdb methods for backen
d ldapsam:ldaps://www.aes.kz

[2009/06/26 23:14:41,  0] lib/util.c:log_stack_trace(1777)
  BACKTRACE: 7 stack frames:
   #0 ../sbin/smbd(log_stack_trace+0x26) [0xb4f345]
   #1 ../sbin/smbd(smb_panic+0x63) [0xb4f203]
   #2 ../sbin/smbd [0xb1935f]
   #3 ../sbin/smbd(initialize_password_db+0x26) [0xb1af1b]
   #4 ../sbin/smbd(main+0x68f) [0xd3a490]
   #5 /lib/libc.so.6(__libc_start_main+0xdf) [0x387d9f]
   #6 ../sbin/smbd [0x948bd1]
[2009/06/26 23:14:41,  0] lib/fault.c:dump_core(231)
  dumping core in /usr/local/samba/var/cores/smbd


smb.conf

[globals]
netbios name = samba
workgroup = MSHOME
security = user

passdb backend = ldapsam:ldaps://www.aes.kz
ldap ssl = off
ldap admin dn = "cn=admin,dc=aes,dc=kz"
ldap suffix = dc=aes,dc=kz
admin users = zombie
ldap admin dn = "cn=admin,dc=aes,dc=kz"
ldap user suffix = ou=Users
ldap group suffix = ou=Groups
ldap machine suffix = ou=Computers
ldap delete dn = no
ldap passwd sync = yes
preferred master = yes
domain master = Yes
domain logons = Yes
logon path = \\%N\profiles\%U
logon drive = N
#add machine script = /usr/sbin/smbldap-useradd -w %u
#add user script = /usr/local/sbin/smbldap-useradd -m %u
[homes]
comment = Home Directory
browseable = Yes
writable = Yes

[netlogon]
comment = Network Logon Service
browseable = Yes
path =/home/samba/netlogon
guest ok = yes
writable = yes

slapd.conf

include         /etc/openldap/schema/core.schema
include         /etc/openldap/schema/cosine.schema
include         /etc/openldap/schema/inetorgperson.schema
include         /etc/openldap/schema/misc.schema
include         /etc/openldap/schema/nis.schema
include         /etc/openldap/schema/samba.schema
include         /etc/openldap/schema/openldap.schema


allow bind_v2

pidfile         /var/run/slapd.pid
argsfile        /var/run/slapd.args

access to attr=userPassword
 by users write
 by anonymous auth
 by * none
access to *
 by users write
 by anonymous read
 by * none

#######################################################################
# ldbm and/or bdb database definitions
#######################################################################

database        bdb
suffix          "dc=aes,dc=kz"
rootdn          "cn=admin,dc=aes,dc=kz"
rootpw          secret

directory       /var/lib/ldap


index objectClass                       eq,pres
index ou,cn,mail,surname,givenname      eq,pres,sub
index uidNumber,gidNumber,loginShell    eq,pres
index uid,memberUid                     eq,pres,sub
index nisMapName,nisMapEntry            eq,pres,sub

loglevel 0

TLSCACertificateFile /etc/openldap/cacerts/ca.cert
TLSCertificateFile /etc/openldap/cacerts/ldap.cert
TLSCertificateKeyFile /etc/openldap/cacerts/ldap.key
TLSVerifyClient never


squid.conf

http_port 3128
hierarchy_stoplist cgi-bin ?
acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY
cache_dir ufs /var/spool/squid 6144 16 256
cache_access_log /var/log/squid/access.log
cache_log /var/log/squid/cache.log
cache_store_log /var/log/squid/store.log
cache_min 100 MB
maximum_object_size 102400 KB
cache_effective_user squid
cache_effective_group squid

auth_param basic program /usr/lib/squid/squid_ldap_auth -P -b dc=aes,dc=kz -f (uid=%s) -H "ldaps://www.aes.kz" -v 3 -p 636
external_acl_type ldap_group %LOGIN /usr/lib/squid/squid_ldap_group -P -b dc=aes,dc=kz -f (&(memberUid=%v)(cn=%a)) -H "ldaps://www.aes.kz" -v 3 -p 636

half_closed_clients off

acl all src 0.0.0.0/0.0.0.0
acl localhost src 127.0.0.1/255.255.255.255
acl to_localhost dst 127.0.0.0/8
acl allowedhost src 192.168.0.0/24
acl users external ldap_group squiduser
dns_nameserver 127.0.0.1
acl INET proxy_auth REQUIRED src 192.168.0.0/255.255.255.0
acl SSL_ports port 80 443 563 4662
acl Safe_ports port 80          # http
acl Safe_ports port 21          # ftp
acl Safe_ports port 443 563     # https, snews
acl Safe_ports port 70          # gopher
acl Safe_ports port 210         # wais
acl Safe_ports port 1025-65535  # unregistered ports
acl Safe_ports port 280         # http-mgmt
acl Safe_ports port 488         # gss-http
acl Safe_ports port 591         # filemaker
acl Safe_ports port 777         # multiling http
acl CONNECT method CONNECT
http_access allow users
http_access deny allowedhost all
http_access allow localhost
http_access allow INET
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access deny to_localhost
http_access deny localhost
http_access deny all
visible_hostname admin@aes.kz

append_domain .aes.kz
err_html_text admin@aes.kz
memory_pools off
coredump_dir /var/spool/squid
ie_refresh on
deny_info ERR_QUOTA all
[/codebox]
ах да забыл спросить, www.aes.kz в ДНСе имеет ip а aes.kz нет. это не критично
Название: Openldap+tls+samba3+squid
Отправлено: kima от 28 Июня 2009, 22:36
Здравствуйте! немного изменил самбовский конфиг, вот так:
[codebox][global]
        workgroup = MSHOME
        netbios name = SERVER
        server string = Samba
        security = user
        obey pam restrictions = no
        passdb backend = ldapsam:ldap://localhost/
        guest account = smbuser
        log level = 5

#    Begin: Custom LDAP Entries
#
ldap admin dn = cn=admin,dc=aes,dc=kz
ldap suffix = dc=aes,dc=kz
ldap group suffix = ou=Groups
ldap user suffix = ou=Users
ldap machine suffix = ou=Computers
ldap idmap suffix = ou=Users
; Do ldap passwd sync
ldap passwd sync = Yes
passwd program = /usr/sbin/smbldap-passwd %u
passwd chat = *New*password* %nn *Retype*new*password* %nn *all*authentication*tokens*updated*
add user script = /usr/sbin/smbldap-useradd -m "%u"
ldap delete dn = Yes
delete user script = /usr/sbin/smbldap-userdel "%u"
add machine script = /usr/sbin/smbldap-useradd -w "%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"
domain logons = yes

[netlogon]
   comment = Network Logon Service
   path = /home/public/samba/netlogon
   read only = yes
[root@localhost samba]#
[/codebox]

и вот его лог:
[codebox][root@localhost samba]# cat /var/log/samba/smbd.log | tail
[2009/06/28 20:03:44, 5] auth/auth_util.c:make_server_info_sam(603)
  make_server_info_sam: made server info for user smbuser -> smbuser
[2009/06/28 20:03:44, 5] lib/smbldap.c:smbldap_search_ext(1179)
  smbldap_search_ext: base => [ou=Groups,dc=aes,dc=kz], filter => [(&(objectClass=sambaGroupMapping)(sambaSID=S-1-5-32-544))], scope => [2]
[2009/06/28 20:03:44, 5] lib/smbldap.c:smbldap_search_ext(1179)
  smbldap_search_ext: base => [ou=Groups,dc=aes,dc=kz], filter => [(&(objectClass=sambaGroupMapping)(sambaSID=S-1-5-32-545))], scope => [2]
[2009/06/28 20:03:44, 5] lib/smbldap.c:smbldap_search_ext(1179)
  smbldap_search_ext: base => [ou=Groups,dc=aes,dc=kz], filter => [(&(|(objectclass=sambaGroupMapping)(sambaGroupType=4))(|(sambaSIDList=S-1-5-21-1839596575-4197305019-2497940423-501)(sambaSIDList=S-1-22-2-501)(sambaSIDList=S-1-1-0)(sambaSIDList=S-1-5-2)(sambaSIDList=S-1-5-32-546)))], scope => [2]
[2009/06/28 20:03:44, 0] smbd/server.c:main(960)
  ERROR: failed to setup guest info.
[root@localhost samba]#
[/codebox]

кажется это единственная ошибка. не связано ли это с нехваткой каких то модулей для самбы?
ПОМОГИТЕ ПОЖАЛУЙСТА!!! неделю мучаюсь! /wacko.gif\' class=\'bbc_emoticon\' alt=\':wacko:\' />
Название: Openldap+tls+samba3+squid
Отправлено: Vicpo от 28 Июня 2009, 22:50
guest account = smbuser попробуйте закомментировать
Название: Openldap+tls+samba3+squid
Отправлено: kima от 29 Июня 2009, 10:53
Спасибо помогло!
до этого пробобовал без гостевого аккаунта но тоже не работало, мистика какая та.
и хочется спросить для TLS какие нужно ввести изменения
Название: Openldap+tls+samba3+squid
Отправлено: kima от 29 Июня 2009, 11:33
что то поспешил. оказалось все просто
passdb backend = ldapsam:ldaps://(вводиш доменное имя на которое создавал сертификат) и ldap ssl = off (кажется даже по дефолту уже так стоит)
Название: Openldap+tls+samba3+squid
Отправлено: kima от 29 Июня 2009, 13:35
когда впервый раз запустил как Вы сказали все работало. но вот прошло время кое какие данные нужно было перекинуть на сервак, поэтому запустил другой конфиг самбы в режиме шеир(т.к. не настроены польз. в ЛДАПе). потом вернул старый конфиг и вот результат:
[codebox][root@localhost samba]# cat /var/log/samba/smbd.log | tail
[2009/06/29 01:06:25, 5] auth/auth_util.c:make_server_info_sam(603)
  make_server_info_sam: made server info for user nobody -> nobody
[2009/06/29 01:06:25, 5] lib/smbldap.c:smbldap_search_ext(1179)
  smbldap_search_ext: base => [ou=Groups,dc=aes,dc=kz], filter => [(&(objectClass=sambaGroupMapping)(sambaSID=S-1-5-32-544))], scope => [2]
[2009/06/29 01:06:25, 5] lib/smbldap.c:smbldap_search_ext(1179)
  smbldap_search_ext: base => [ou=Groups,dc=aes,dc=kz], filter => [(&(objectClass=sambaGroupMapping)(sambaSID=S-1-5-32-545))], scope => [2]
[2009/06/29 01:06:25, 5] lib/smbldap.c:smbldap_search_ext(1179)
  smbldap_search_ext: base => [ou=Groups,dc=aes,dc=kz], filter => [(&(|(objectclass=sambaGroupMapping)(sambaGroupType=4))(|(sambaSIDList=S-1-5-21-1839596575-4197305019-2497940423-501)(sambaSIDList=S-1-22-2-99)(sambaSIDList=S-1-1-0)(sambaSIDList=S-1-5-2)(sambaSIDList=S-1-5-32-546)))], scope => [2]
[2009/06/29 01:06:25, 0] smbd/server.c:main(960)
  ERROR: failed to setup guest info.
[root@localhost samba]#
[/codebox]
при том же конфиге
[codebox][root@localhost samba]# cat smb.conf
[global]
workgroup = MSHOME
netbios name = SERVER
server string = Samba
security = user
obey pam restrictions = no
passdb backend = ldapsam:ldaps://www.aes.kz
log level = 5
ldap ssl = off

# Begin: Custom LDAP Entries
#
ldap admin dn = cn=admin,dc=aes,dc=kz
ldap suffix = dc=aes,dc=kz
ldap group suffix = ou=Groups
ldap user suffix = ou=Users
ldap machine suffix = ou=Computers
ldap idmap suffix = ou=Users
; Do ldap passwd sync
ldap passwd sync = Yes
passwd program = /usr/sbin/smbldap-passwd %u
passwd chat = *New*password* %nn *Retype*new*password* %nn *all*authentication*tokens*updated*
add user script = /usr/sbin/smbldap-useradd -m "%u"
ldap delete dn = Yes
delete user script = /usr/sbin/smbldap-userdel "%u"
add machine script = /usr/sbin/smbldap-useradd -w "%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"
domain logons = yes

[netlogon]
comment = Network Logon Service
path = /home/public/samba/netlogon
read only = yes

[root@localhost samba]#
[/codebox]
и снова дежавю /wacko.gif\' class=\'bbc_emoticon\' alt=\':wacko:\' />
Название: Openldap+tls+samba3+squid
Отправлено: Vicpo от 29 Июня 2009, 13:57
в секцию global попробуйте добавить
map to guest = bad user
Название: Openldap+tls+samba3+squid
Отправлено: kima от 29 Июня 2009, 14:15
результат такой же
Название: Openldap+tls+samba3+squid
Отправлено: kima от 29 Июня 2009, 16:07
народ подсказал что нужно приготовить заготовку в ЛДАПе с помошью smbldap-populate
и действительно было дело что после удачного старта самбы ввел:
[root@localhost ~]# smbldap-populate -u 30000 -g 30000
Can't locate Net/LDAP.pm in @INC (@INC contains: /usr/sbin/ /usr/lib/perl5/site_perl/5.8.6/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.5/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.4/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.3/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.6 /usr/lib/perl5/site_perl/5.8.5 /usr/lib/perl5/site_perl/5.8.4 /usr/lib/perl5/site_perl/5.8.3 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.6/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.5/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.4/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.3/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.6 /usr/lib/perl5/vendor_perl/5.8.5 /usr/lib/perl5/vendor_perl/5.8.4 /usr/lib/perl5/vendor_perl/5.8.3 /usr/lib/perl5/vendor_perl /usr/lib/perl5/5.8.6/i386-linux-thread-multi /usr/lib/perl5/5.8.6 .) at /usr/sbin//smbldap_tools.pm line 26.
BEGIN failed--compilation aborted at /usr/sbin//smbldap_tools.pm line 26.
Compilation failed in require at /usr/sbin/smbldap-populate line 31.
BEGIN failed--compilation aborted at /usr/sbin/smbldap-populate line 31.
[root@localhost ~]#

здесь:
smbldap_tools.pm line 26 -> use Net::LDAP;
smbldap-populate line 31 -> use smbldap_tools;
Название: Openldap+tls+samba3+squid
Отправлено: kima от 29 Июня 2009, 17:05
выяснилось что нужно установить дополнительный пакет perl-Net-LDAP(вдруг кому пригодится) + еше зависимые пакеты. но мне пришлось бы с десяток устанавливать, это долго и трудно для запоминания всех зависимостей на случай если придется поднимать новую систему.
кто нибудь знает выход из этой ситуации?
в смысле не используя smbldap-populate
Название: Openldap+tls+samba3+squid
Отправлено: sotrud_nik от 29 Июня 2009, 20:36
Честно говоря, мы и сами не понимаем о чем тут речь. Удачи.