Comments 21
Я бы Вас попросил написать еще к этому и авторизацию в squid через AD.
Вот, например. squid + SAMS, достаточно полно и внятно
www.helplinux.ru/wiki/en:kb:squid-kerberos-ldap-ad
Сквид уже научился понимать киррилические имена пользователей?
А то я специально для этого скрипт писал на Perl
А то я специально для этого скрипт писал на Perl
wbinfo_group обязывает устанавливать и использовать samba, проще и надёжнее использовать ldap_group
Примерно так:
# LDAP authentication
auth_param basic program /usr/lib/squid3/squid_ldap_auth \
-R \
-b "DC=company,DC=lan" \
-f "(sAMAccountName=%s)" \
-h dc1.company.lan \
-D "CN=squid,OU=Users_Special,DC=company,DC=lan" \
-W /etc/squid3/LDAP.pass
auth_param basic children 5
auth_param basic realm Company Proxy Authentication
auth_param basic credentialsttl 2 hours
# Define ACL type for groups (using AD)
external_acl_type group_dn %LOGIN /usr/lib/squid3/squid_ldap_group \
-R \
-b "DC=company,DC=lan" \
-f "(&(sAMAccountname=%u)(memberOf=%g))" \
-h dc1.company.lan \
-D "CN=squid,OU=Users_Special,DC=company,DC=lan" \
-W /etc/squid3/LDAP.pass -K
# Define AD groups
acl group-proxy-users external group_dn cn=proxy-users,ou=groups,dc=company,dc=lan
# Allow all for group-proxy-users
http_access allow group-proxy-users
При такой настройке basic у меня происходит странное: Basic авторизация проходит, но буквально на пол минуты серфинга. Потом спрашивается снова. При этом в консоль squid падают постоянно сообщения типа:
2012/06/29 05:11:46.631| ZPH: Preserving TOS on miss, TOS=0
2012/06/29 05:11:46.669| ConnStateData::swanSong: FD 8
У Вас случаем нет идей по этому поводу?
2012/06/29 05:11:46.631| ZPH: Preserving TOS on miss, TOS=0
2012/06/29 05:11:46.669| ConnStateData::swanSong: FD 8
У Вас случаем нет идей по этому поводу?
Информации по этой теме в интернете море, но вторая статья такая же объемная, как и первая и по идее должна претендовать на какой-то бест-практик что ли. На деле же этот материал нельзя использовать даже как how-to. Во-первых, не разъяснены очень многие параметры, во-вторых, совершенно непонятны некоторые тактические ходы, которые если и заложены для будущих статей, то об этом нужно упоминать в тексте. Лично у меня сложилось впечатление, что настройка выполнялась по нескольким хауту с бездумным засовыванием тех или иных параметров, а потом оно взлетело.
Поддерживаю. Совершенно непонятно зачем всё это. Samba самодостаточна и для её работы в домене не нужен ни Kerberos (по умолчанию используется NTLM), ни LDAP. Для включения в домен достаточно установить samba и поправить всего два конфига: smb.conf и nsswitch.conf.
Заметьте — nsswitch.conf мы здесь не трогали.
Значит nsswitch.conf был изменён автоматически, проверьте. По умолчанию в нём:
passwd: compat
group: compat
shadow: compat
После установки samba в первых двух полях, скорее всего, добавится winbind.
passwd: compat
group: compat
shadow: compat
После установки samba в первых двух полях, скорее всего, добавится winbind.
Вот такого конфига достаточно для включение samba в AD домен.
[global]
# Domain auth configuration
workgroup = COMPANY
realm = COMPANY.LAN
security = ADS
restrict anonymous = 2
idmap uid = 10000-100000
idmap gid = 10000-100000
winbind enum users = Yes
winbind enum groups = Yes
wins server = 172.20.1.101
# Logs
syslog = 0
log file = /var/log/samba/log.%m
log level = 3
# Disable print server
disable spoolss = Yes
# Allow to delete readonly files
delete readonly = yes
# Shared folders
[DEPTS]
path = /mnt/data/depts
admin users = "@COMPANY\localadmin zel"
read only = No
hide unreadable = Yes
# Full support MS ACL
vfs objects = acl_tdb
[SHARE1]
...
Собственно Ваш пример мало чем отличается от приведенного. У нас нет idmap uid и idmap gid, которые в последних версиях Samba уже особо и не нужны. testparm сообщает, что опции idmap uid и idmap gid нежелательны (deprecated). Мы только конкретизировали некоторые параметры, которые и так должны устанавливаться по умолчанию. Ну и wins не включали, поскольку есть DNS.
> testparm сообщает, что опции idmap uid и idmap gid нежелательны (deprecated)
Они по прежнему нужны, но теперь указываются через новый параметр idmap config вместо idmap uid/gid.
Они по прежнему нужны, но теперь указываются через новый параметр idmap config вместо idmap uid/gid.
> Собственно Ваш пример мало чем отличается от приведенного.
Но у вас ещё Keberos и LDAP. Keberos и LDAP имеют смысл, но только в том случае, когда есть понимание «зачем».
Но у вас ещё Keberos и LDAP. Keberos и LDAP имеют смысл, но только в том случае, когда есть понимание «зачем».
Так ведь и kerberos и ldap используются при аутентификации. Мы только уточнили их значения и упомянули. Поскольку протокол (и kerberos и ldap) присутствуют в схеме авторизации, то весьма желательно упомянуть их и в конфиге. Согласен, что можно и не упоминать, но тогда может сложится ситуация, когда про них забудут. А это может привести к трате лишнего времени при поиске неисправности и восстановлении.
Долгий путь, но всё расписано.
Если нужно на скорую руку, то вот прекрасный мануал:
http://wiki.squid-cache.org/ConfigExamples/Authenticate/NtlmCentOS5.
Заводится с пол-оборота :)
Если нужно на скорую руку, то вот прекрасный мануал:
http://wiki.squid-cache.org/ConfigExamples/Authenticate/NtlmCentOS5.
Заводится с пол-оборота :)
Sign up to leave a comment.
Аутентификация файловых серверов GNU/Linux в домене Windows на базе AD. Часть 2