Добрый день. Кто нибудь может помочь? В ejabberd 2.x вобще можно создать разделение на пользователей которые могут пользоваться транспортом, и все остальные? Желательно по LDAP фильтру
To access the most up-to-date ejabberd documentation, please visit docs.ejabberd.im »
Добрый день. Кто нибудь может помочь? В ejabberd 2.x вобще можно создать разделение на пользователей которые могут пользоваться транспортом, и все остальные? Желательно по LDAP фильтру
можно, например используя ACL
можно, например используя ACL для доступа, как к этому прикрутить LDAP не знаю.
Если не затруднит, то можно
Если не затруднит, то можно пример? Мой конфиг почти дефолтовый, доступ необходимо ограничить к icq транспорту:
{acl, admin, {user, "kam", "gandalph"}}.
{hosts, ["gandalph"]}.
{loglevel, 4}.
{listen,
[
{5222, ejabberd_c2s, [
{access, c2s},
{shaper, c2s_shaper},
{max_stanza_size, 65536},
starttls, {certfile, "/etc/ejabberd/ejabberd.pem"}
]},
{5269, ejabberd_s2s_in, [
{shaper, s2s_shaper},
{max_stanza_size, 131072}
]},
{5347, ejabberd_service, [{host, "icq.gandalph",
[{password, "secret"}]}]},
{5280, ejabberd_http, [
http_poll,
web_admin
]}
]}.
{s2s_use_starttls, true}.
{s2s_certfile, "/etc/ejabberd/ejabberd.pem"}.
{auth_method, ldap}.
{ldap_servers, ["hq.domain.org"]}.
{ldap_rootdn, "CN=ejabberd,CN=Users,DC=hq,DC=domain,DC=org"}.
{ldap_password, "******"}.
{ldap_base, "DC=hq,DC=domain,DC=org"}.
{ldap_uids, [{"sAMAccountName"}]}.
{ldap_filter, "(&(objectCategory=user)(memberOf=CN=jabber,CN=Users,DC=hq,DC=domain,DC=org))"}.
{shaper, normal, {maxrate, 1000}}.
{shaper, fast, {maxrate, 50000}}.
{acl, local, {user_regexp, ""}}.
{access, max_user_sessions, [{10, all}]}.
{access, local, [{allow, local}]}.
{access, c2s, [{deny, blocked},
{allow, all}]}.
{access, c2s_shaper, [{none, admin},
{normal, all}]}.
{access, s2s_shaper, [{fast, all}]}.
{access, announce, [{allow, admin}]}.
{access, configure, [{allow, admin}]}.
{access, muc_admin, [{allow, admin}]}.
{access, muc, [{allow, all}]}.
{access, register, [{deny, all}]}.
{access, pubsub_createnode, [{allow, all}]}.
{language, "en"}.
{modules,
[
{mod_adhoc, []},
{mod_announce, [{access, announce}]}, % requires mod_adhoc
{mod_caps, []},
{mod_configure,[]}, % requires mod_adhoc
{mod_ctlextra, []},
{mod_disco, []},
{mod_irc, []},
{mod_last, []},
{mod_muc, [
{access, muc},
{access_create, muc},
{access_persistent, muc},
{access_admin, muc_admin},
{max_users, 500}
]},
{mod_offline, []},
{mod_privacy, []},
{mod_private, []},
{mod_proxy65, [
{access, local},
{shaper, c2s_shaper}
]},
{mod_pubsub, [ % requires mod_caps
{access_createnode, pubsub_createnode},
{plugins, ["default", "pep"]}
]},
{mod_register, [
{welcome_message, {"Welcome!",
"Welcome to a Jabber service powered by Debian. "
"For information about Jabber visit "
"http://www.jabber.org"}},
{access, register}
]},
{mod_roster, []},
{mod_shared_roster,[]},
{mod_stats, []},
{mod_time, []},
{mod_vcard_ldap, []},
{mod_version, []}
]}.
мне не трудно, но ещё более
мне не трудно, но ещё более не трудно думается поискать по форуму и заглянуть в документацию.
Первое что я сделал, это
Первое что я сделал, это воспользовался поиском(т.к. как это сделать просто прочитав документацию я не смог). Не помогло. Второе сам просмотрел форум. Ничего похожего не нашел. Третье, спросил у знакомых админящих ejabberd. Тоже не помогло, т.к. они сами начав чесать затылок ничего путного придумать не смогли. Осталась надежда на форум, но и тут меня посылают на мой первый и второй шаг. Можно хотябы небольшой пример?
странноватые у тебя ежовые
странноватые у тебя ежовые админы в знакомых водятся однако...
вот линк на форуме по теме
http://www.ejabberd.im/node/1321
вот линк на описание управления правами в Книге
http://www.process-one.net/docs/ejabberd/guide_en.html#htoc24
в целом, сначала ты назначаеш транспорту "атрибут" access, потом определяеш для него дефолтную политику, а потом для этого "атрибута" указываеш пользователей в него входящих.
Также, во время экспериментов, следует помнить что ACL не из конфига просто добавляются или меняются но не удаляются - чтобы переопределить все acl нужно в конфиге раскоментировать строчку override_acls. или менять их из клиента/web-морды но я так не делал, и синтаксис точно незнаю.