From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: From: =?windows-1251?b?wuDk6OwgyOvr4PDo7u3u4g==?= Organization: =?windows-1251?b?0/Hu6/zlLdHo4ejw8ero6Q==?= =?windows-1251?b?IO/u9/Lg7PI=?= To: community@altlinux.ru Subject: Re: [Comm] ejabberd Date: Fri, 24 Jun 2005 18:14:00 +0900 User-Agent: KMail/1.7.2 References: <200506220845.17721.master@usib.irkps.ru> <200506241610.41324.master@usib.irkps.ru> <200506241217.53669.combr@vesna.ru> In-Reply-To: <200506241217.53669.combr@vesna.ru> MIME-Version: 1.0 Content-Type: text/plain; charset="windows-1251" Content-Transfer-Encoding: 8bit Content-Disposition: inline Message-Id: <200506241814.01027.master@usib.irkps.ru> X-Virus-Scanned: amavisd-new at localhost X-BeenThere: community@altlinux.ru X-Mailman-Version: 2.1.5 Precedence: list Reply-To: community@altlinux.ru List-Id: Mailing list for ALT Linux users List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 24 Jun 2005 09:14:03 -0000 Archived-At: List-Archive: List-Post: В сообщении от Пт 24 Июнь 2005 16:17 Mike Lykov написал(a): > В сообщении от Пятница 24 Июнь 2005 12:10 Вадим Илларионов написал: > > Покуда не пробовал. Хотя, видимо, стОит. После выходных постараюсь себя > > заставить. > > Кстати, про ejabberd + jit (да еще без jabber14) мне и самому интересно! %) Блин, так хотелось похвастаться без дальнейших обязательств - ан нет! К прискорбию, я уже под пивом (работа кончилась, ура выходным!), так что напишу сюда. Ежели кому не лениво озаботиться приведением повествования к соответствующему для публикации тону, не ленитесь - озаботьтесь. Сам ежабер поднялся без хлопот, хватило вдумчивого раскуривания доков. Суть проблемы (точней, три сути) состояла в следующем. 1. Не удавалось приконнектиться к веб-морде администрирования. Оно, вроде, и не очень надо (всё можно сделать из старой доброй командной строки), однако ж... Решение ======= Далее довольно пространно, зато на эту ремарку после только и буду, что ссылаться (если не забуду в процессе). В моей ситуации, когда машинка-маршрутизатор во внутренней сети зовётся router, а во внешней - хм... никак не зовётся, и привязать сервис надо к конкретному имени... В общем, геморроя хватило. Прежде на рутере имелся ещё и реальный айпишник, к которому было привязано реальное имя - скажем, usib.irkps.ru (тем более, что так оно и обстояло). Не так давно я для вящей безопасности да ради облегчения и без того непосильного админского труда ;) сныкался за аппаратным WAN-маршрутизатором. Благо, последний умеет прокидывать обращения извне на заданный адрес внутри и даже более того: при обращении изнутри на внешний адрес, возвращать обратившегося "куда надо" (блин, мозги вывихнешь). Так вот, почти всё дальнейшее повествование будет связано с именем usib.irkps.ru, если обратное не оговорено особо. Важно! В конфиге ejabber вместо директивы 'host' пользоваться директивой 'hosts', где в качестве параметров указать оба имени: и внутреннее, и внешнее; например: {hosts, ["router", "usib.irkps.ru"]} Почему именно так, оставлю до более светлых времён и умов. После первого запуска сервиса регистрируем в нём себя, любимого (кому ж ещё доверить роль админа!), причём с указанием домена. В моём случае: ejabberdctl register owner@usib.irkps.ru usib.irkps.ru Теперь в конфиг сервиса добавим (раскомментарим и поправим имеющуюся) строчку: {acl, admin, {user, "owner", "usib.irkps.ru"}} и перезапустим его. Всё, можно заходить на http://usib.irkps.ru:5280/admin с логином owner@usib.irkps.ru и паролем . (Гы. А вы подберите. =)) 2. При регистрации через JIT вываливалась "Ошибка отправки регистрационных данных. Причина: XDB troubles" Решение ======= Дело в следующем. Как я уже писал, jabber-jit не умеет жить без xdb_file.so, который принадлежит jabber-1.4. Но жабер-то остановлен! И в противовес ему рулит парадом Е-жабер. Значит, надо подсунуть эту библиотечку jit'y, чтоб выкручивался сам. (Майнтейнеры, ау!) Более того, в доке к е-жаберу есть рецепт, как это сделать. Просто переточим его под Альт, и добавим в /etc/jabber/jabber-jit.xml подправленную "подкоренную" секцию из примера ("корневее" только ): /usr/lib/jabber/xdb_file/xdb_file.so /var/lib/jabber # Лирическое отступление. Почему подправлена секция , можно увидеть тривиальным пролистыванием файловой системы. А вот о секции - в сути №... # Кранты лирическому отступлению. ...3. Попытка импорта экаунтов из jabber-1.4 (хоть поюзерно, хоть каталогом) обламывалась хоть и многословно, но всегда со словечком "eacces" (да-да, не опечатка). Решение ======= Всё просто. ejabberdctl import-something запускается от юзера ejabberd, тогда как права на /var/lib/jabber//* принадлежат юзеру.группе jabber.jabber с маской 700 на каталоги (начиная с /var/lib/jabber) и 600 на файлы. То есть, довольно НА МОМЕНТ ИМПОРТА отдать права ПРОЧИМ на чтение-исполнение, и - вуаля! По запросу: ejabberdctl import-file /var/lib/jabber//.xml или вообще: ejabberdctl import-file /var/lib/jabber/ из объектива вылетает кролик! Важно не забыть ПОТОМ вернуть допуски к файлам-каталогом в прежнее состояние, потому что... ...Вот и добрались до спула. Как я уже подмечал, JIT живёт без жабера, но как юзал спул жабера под жабером, так и будет юзать спул _жабера_ под Е-жабером (майнтейнеры, фиг ли). И если локальные клиенты имели регистрацию в аське, самым безболезненным вариантом станет не новая их регистрация в пресловутом, но достойном сервисе, а прозрачный своею незаметностию для означенных юзверей переход на новый, хоть и чуть более прогрессивный... Ой, наплёл-наплёл! Простите пиво, а? Надеюсь, теперь понятно, почему важные на мой затуманенный взгляд моменты касательно жабер-спула были выделены КАПСЛОКОМ. Если вы меня поняли, вашим юзерам не придётся перерегистрироваться в аське. Если нет - придётся не только ЭТО, но и после новой регистрации, для того, чтоб респонденты выглядели зеленовато при коннекте, не останется ничего иного, как по новой просить у каждого респондента авторизации (эту проблему я не описывал в запросе, однако ж сам в неё упёрся - после решения первых трёх). Постскриптум ============ Ремарка (вспомнил, ура!) на пункт 1. Если ваши юзера помимо жабер-сервиса, которого вполне хватает для внутреннего сообщения, юзают ещё и внешнюю аську (тогда почему бы не позволить им пользовать собственные жабер-экаунты наружу?), не отстраивайте icq-транспорт на имена icq.localhost и sms.localhost. Почему? Да хз. Каким-то образом jabber-1.4 с этим вариантом живёт себе, и в ус не дует, а Е-жабер отчего-то не уживается. Е-жаберу какого-то чёрта вынь да положь транспорты с расширением в виде FQDN. Впрочем, не настаиваю на собственной правоте. Если кому удастся их сдружить таким макаром, буду рад всяческим комментариям. ________________________ С уважением, Вадим Илларионов системный администратор Усолье-Сибирский почтамт JID: см. UIN: 7899517 Телефоны: Мобильный +7 904 658 41 54 Рабочий +7 395 43 444 00