Форум русскоязычного сообщества Ubuntu


Считаете, что Ubuntu недостаточно дружелюбна к новичкам?
Помогите создать новое Руководство для новичков!

Автор Тема: [РЕШЕНО] SQUID + Active Directory (NTLM). Странная проблема с winbind. Помогите.  (Прочитано 65061 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Victor3D

  • Автор темы
  • Новичок
  • *
  • Сообщений: 5
    • Просмотр профиля
Здравствуйте, установлен Ubuntu Server 10.04, введен в домен. Настроены kerberos, samba, squid. Этот линукс сервер находится в домене Active Directory. Squid настроен таким образом, чтобы пускать в интернет только пользователей домена из определенной группы, с использованием ntlm авторизации (без запроса пароля). Все работает до перезагрузки. После перезагрузки сервера ничего не работает. Я выяснил, что по каким-то причинам не запущена служба winbind (хотя должна).
Если провести последовательность действий:
/etc/init.d/winbind start (запуск службы)
/etc/init.d/winbind-ch.sh start (самодельный скрипт исправления прав доступа на /var/run/samba/winbindd_privileged)
squid -k reconfigure (перезапуск сквида)
То все начинает работать как и требуется. И это до следующей перезагрузки... Вопрос - из-за чего? (Добавление этих команд в /etc/rc.local не дает положительного результата, только запуск в консоли эти 3 команды помогают).
Дальше мои конфиги:

Домен: SPSDATA.LOCAL
IP контроллера домена: 192.168.1.250
IP этого линукса: 192.168.1.201

/etc/krb5.conf
[logging]
default = FILE:
kdc = FILE:
admin_server = FILE:

[libdefaults]
default_realm = SPSDATA.LOCAL

[realms]
SPSDATA.LOCAL = {
   default_domain = SPSDATA.LOCAL
   kdc = 192.168.1.250
   admin_server = 192.168.1.250
}

[domain_realm]
.SPSDATA.LOCAL = SPSDATA.LOCAL

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

hosts:          files dns
networks:       files

protocols:      db files
services:       db files
ethers:         db files
rpc:            db files

netgroup:       nis

/etc/init.d/winbind-ch.sh
#!/bin/sh
#set -x
WINBINDD_PRIVILEGED=/var/run/samba/winbindd_privileged

chmodgrp() {
    chgrp proxy $WINBINDD_PRIVILEGED || return 1
    chmod g+w $WINBINDD_PRIVILEGED || return 1
}

case "$1" in
    start)
        chmodgrp
        ;;
    restart|reload|force-reload)
        echo "Error: argument '$1' not supported" >&2
        exit 3
        ;;
    stop)
        ;;
    *)
        echo "Usage: $0 start|stop" >&2
        exit 3
        ;;
esac

/etc/samba/smb.conf
[global]
log file = /var/log/samba/samba.log
idmap gid = 10000-20000
socket options = TCP_NODELAY
domain master = no
encrypt passwords = yes
hosts allow = 192.168.1.
winbind use default domain = yes
realm = SPSDATA.LOCAL
passdb backend = tdbsam
server string = Gate Sampo.ru
idmap uid = 10000-20000
winbind enum users = yes
password server = 192.168.1.250
local master = no
workgroup = SPSDATA
client use spnego = yes
client ntlmv2 auth = yes
winbind enum groups = yes
os level = 0
security = ads
preferred master = no
max log size = 500
domain logons = no

/etc/squid/squid.conf
http_port 192.168.1.201:3128
hierarchy_stoplist cgi-bin ?
acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY
access_log /var/log/squid/access.log
hosts_file /etc/hosts
cache_dir ufs /var/spool/squid 4096 16 256
maximum_object_size 10240 KB
dns_nameservers 192.168.1.201
acl all src 192.168.1.1-192.168.1.255
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl to_localhost dst 127.0.0.0/8
acl SSL_ports port 443 563
acl Safe_ports port 80
acl Safe_ports port 21
acl Safe_ports port 443 563
acl Safe_ports port 70
acl Safe_ports port 210
acl Safe_ports port 1025-65535
acl Safe_ports port 280
acl Safe_ports port 488
acl Safe_ports port 591
acl Safe_ports port 777
acl CONNECT method CONNECT
acl icq_ports port 5190        
# Это хорошие сайты для всех без авторизации
acl url_for_all url_regex "/etc/squid/url_for_all.txt"
http_access allow all url_for_all
# TAG: auth_param
# Здесь мы указываем squid как следуею производить аутентификацию и настраиваем
# соответствущие схемы аутентифиуации. Внимание: порядок описания схем имеет
# значение, поэтому первой должна идти ntlm аутентификация.
# C помощью таких настроек мы разрешили доступ к прокси серверу только для
# пользователей группы InternetUsers. Если нам необходимо закрыть доступ
# определенному человеку, мы просто удалим его из группы InternetUsers.
auth_param ntlm program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp --require-membership-of=S-1-5-21-926056156-4282430548-343822148-1322 --domain=SPSDATA
auth_param ntlm children 50
auth_param ntlm keep_alive on
#auth_param ntlm max_challenge_reuses 0
#auth_param ntlm max_challenge_lifetime 2 minutes
#auth_param ntlm use_ntlm_negotiate off

#Разрешим только пользователей из группы InternetUsers
auth_param basic program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-basic --require-membership-of=S-1-5-21-926056156-4282430548-343822148-1322
auth_param basic children 30
auth_param basic realm SPSDATA\username
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off

refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern . 0 20% 4320
refresh_pattern \.bz2$          43200   100%    43200 override-lastmod override-expire ignore-reload ignore-no-cache
refresh_pattern \.exe$          43200   100%    43200 override-lastmod override-expire ignore-reload ignore-no-cache
refresh_pattern \.gif$          43200   100%    43200 override-lastmod override-expire ignore-reload ignore-no-cache
refresh_pattern \.gz$           43200   100%    43200 override-lastmod override-expire ignore-reload ignore-no-cache
refresh_pattern \.ico$          43200   100%    43200 override-lastmod override-expire ignore-reload ignore-no-cache
refresh_pattern \.jpg$          43200   100%    43200 override-lastmod override-expire ignore-reload ignore-no-cache
refresh_pattern \.mid$          43200   100%    43200 override-lastmod override-expire ignore-reload ignore-no-cache
refresh_pattern \.mp3$          43200   100%    43200 override-lastmod override-expire ignore-reload ignore-no-cache
refresh_pattern \.pdf$          43200   100%    43200 override-lastmod override-expire ignore-reload ignore-no-cache
refresh_pattern \.swf$          43200   100%    43200 override-lastmod override-expire ignore-reload ignore-no-cache
refresh_pattern \.tar$          43200   100%    43200 override-lastmod override-expire ignore-reload ignore-no-cache
refresh_pattern \.tgz$          43200   100%    43200 override-lastmod override-expire ignore-reload ignore-no-cache
refresh_pattern \.zip$          43200   100%    43200 override-lastmod override-expire ignore-reload ignore-no-cache
refresh_pattern http://ad\.                        43200   100%    43200 override-lastmod override-expire ignore-reload ignore-no-cache
refresh_pattern http://ads\.                       43200   100%    43200 override-lastmod override-expire ignore-reload ignore-no-cache
refresh_pattern http://adv\.                       43200   100%    43200 override-lastmod override-expire ignore-reload ignore-no-cache
refresh_pattern http://click\.                     43200   100%    43200 override-lastmod override-expire ignore-reload ignore-no-cache
refresh_pattern http://count\.                     43200   100%    43200 override-lastmod override-expire ignore-reload ignore-no-cache
refresh_pattern http://counter\.                   43200   100%    43200 override-lastmod override-expire ignore-reload ignore-no-cache
refresh_pattern http://engine\.                    43200   100%    43200 override-lastmod override-expire ignore-reload ignore-no-cache
refresh_pattern http://img\.readme\.ru             43200   100%    43200 override-lastmod override-expire ignore-reload ignore-no-cache
refresh_pattern http://userpic\.livejournal\.com   43200   100%    43200 override-lastmod override-expire ignore-reload ignore-no-cache
refresh_pattern \.ru/bf-analyze                    43200   100%    43200 override-lastmod override-expire ignore-reload ignore-no-cache
refresh_pattern \.ru/bf-si                         43200   100%    43200 override-lastmod override-expire ignore-reload ignore-no-cache
refresh_pattern /advs/                             43200   100%    43200 override-lastmod override-expire ignore-reload ignore-no-cache
refresh_pattern /banners/                          43200   100%    43200 override-lastmod override-expire ignore-reload ignore-no-cache
refresh_pattern /cgi-bin/iframe/                   43200   100%    43200 override-lastmod override-expire ignore-reload ignore-no-cache

# TAG: acl
# ACL - Access Control List. Списки доступа к нашему прокси серверу.
# Здесь мы указываем кто имеет право, а кто нет, использовать наш прокси.
# ACL очень гибкое и мощное средство разграничения прав, но лично я для этих
# целей использую редиректор squidGuard.
# Разрешаем использовать наш прокси только прошедшим авторизацию.
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access deny icq_ports
http_access allow localhost
acl our_networks src 192.168.1.0/24
acl InternetUsers proxy_auth REQUIRED
acl deny_domains dstdomain "/etc/squid/deny_domains.txt"
external_acl_type nt_group %LOGIN /usr/lib/squid/wbinfo_group.pl
# Баннеры никому не нужны
acl url_ads url_regex "/etc/squid/denied_ads.acl"
http_access deny url_ads
# Всем админам из группы InternetAdmins можно все
acl InternetAdmins external nt_group InternetAdmins
http_access allow InternetAdmins all
# Запретим плохие сайты для простых смертных
http_access deny deny_domains
acl filetypes urlpath_regex -i "/etc/squid/denied_filetypes.acl"
http_access deny filetypes
# Пустим в инет обычных пользователей
http_access allow InternetUsers
# Больше никому не дадим инета
http_access deny all
http_reply_access allow all
icp_access allow all
#  TAG: http_reply_access
#       Разрешает ответы клиенту. Это дополнение к http_access.

#  TAG: cache_effective_user
# Пользователь и группа, от которых работает squid
cache_effective_user proxy

#  TAG: cache_effective_group
cache_effective_group proxy

#  TAG: visible_hostname
# Данное имя будет указываться в различных сообщениях (об ошибках и т.п.)
# По умолчанию будет подставляться значение, возвращаемое функцией gethostname()
visible_hostname gatesampo.spsdata.local

« Последнее редактирование: 27 Января 2011, 14:36:05 от Victor3D »

Оффлайн djrust

  • Активист
  • *
  • Сообщений: 861
    • Просмотр профиля
https://help.ubuntu.ru/wiki/%D0%B2%D0%B2%D0%BE%D0%B4_%D0%B2_%D0%B4%D0%BE%D0%BC%D0%B5%D0%BD_windows
тут говорится о вводе в домен и о запуске winbind после всех служб(самое последее)...Может поможет!

+ логи показывай!

Оффлайн Victor3D

  • Автор темы
  • Новичок
  • *
  • Сообщений: 5
    • Просмотр профиля
Спасибо!
Перенос winbind-а в самый конец загрузки реально помог!!!

 

Страница сгенерирована за 0.03 секунд. Запросов: 25.