{"id":194582,"date":"2013-09-20T20:10:02","date_gmt":"2013-09-20T16:10:02","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=194582"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=194582","title":{"rendered":"<span class=\"post_title\">CentOC 5.x, 6.x \u0438 EJabberd v2.x + Win2008AD<\/span>"},"content":{"rendered":"<div class=\"content html_format\">   \t\u0414\u0430\u0432\u043d\u043e \u0445\u043e\u0442\u0435\u043b \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0438 \u043d\u0430 \u043a\u043e\u043d\u0435\u0446 \u044d\u0442\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u043e\u0441\u044c \u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0441\u0432\u044f\u0437\u043a\u0443 <b>EJabberd <\/b>\u0441 \u0443\u0447\u0435\u0442\u043d\u044b\u043c\u0438 \u0437\u0430\u043f\u0438\u0441\u044f\u043c\u0438 \u0438\u0437 <b>Active Directory Win 2008<\/b>. \u0421 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u0440\u043e\u0441\u0442\u0435\u0440\u0430 \u0438 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u043c\u044b\u0445 \u043f\u0441\u0435\u0432\u0434\u043e\u043d\u0438\u043c\u043e\u0432 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u0438\u0438 \u0441\u0432\u043e\u0439\u0441\u0442\u0432 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0445 \u0443\u0447\u0435\u0442\u043d\u044b\u0445 \u0437\u0430\u043f\u0438\u0441\u0435\u0439, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u044b\u043b\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u044b \u0432 <b>AD<\/b>. \u0422.\u043a. \u0434\u043e \u044d\u0442\u043e\u0433\u043e \u043f\u0435\u0440\u0435\u0447\u0438\u0442\u0430\u0432 \u043a\u0443\u0447\u0443 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u0430, \u0432\u0435\u0437\u0434\u0435 \u043a\u0443\u0441\u043a\u0430\u043c\u0438 \u0438 \u043d\u0435 \u0440\u0430\u0431\u043e\u0447\u0435\u0435.<br \/>  <a name=\"habracut\"><\/a><\/p>\n<p>  \u0427\u0442\u043e\u0431\u044b \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c <b>ejabberd <\/b>\u0438\u0437 \u043f\u0430\u043a\u0435\u0442\u0430, \u043d\u0443\u0436\u043d\u043e \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439 <b>EPEL<\/b>, \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u043c:<\/p>\n<p>  \u0414\u043b\u044f <b>CentOS 5<\/b>:<\/p>\n<p>  <b>rpm -Uvh <a href=\"http:\/\/dl.fedoraproject.org\/pub\/epel\/5\/i386\/epel-release-5-4.noarch.rpm\">dl.fedoraproject.org\/pub\/epel\/5\/i386\/epel-release-5-4.noarch.rpm<\/a><\/b><\/p>\n<p>  \u0414\u043b\u044f CentOS 6:<\/p>\n<p>  <b>rpm -Uvh <a href=\"http:\/\/dl.fedoraproject.org\/pub\/epel\/6\/i386\/epel-release-6-7.noarch.rpm\">dl.fedoraproject.org\/pub\/epel\/6\/i386\/epel-release-6-7.noarch.rpm<\/a><\/b><\/p>\n<p>  \u0438\u043b\u0438<\/p>\n<p>  <b>rpm -Uvh <a href=\"http:\/\/dl.fedoraproject.org\/pub\/epel\/6\/x86_64\/epel-release-6-8.noarch.rpm\">dl.fedoraproject.org\/pub\/epel\/6\/x86_64\/epel-release-6-8.noarch.rpm<\/a><\/b><\/p>\n<p>  \u0422\u0435\u043f\u0435\u0440\u044c \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u043f\u0430\u043a\u0435\u0442 <b>ejabberd<\/b>:<\/p>\n<p>  <b>yum install ejabberd<\/b><\/p>\n<p>  \u041e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u043c \u043d\u0430 \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043a\u043e\u043d\u0444\u0438\u0433<b> \/etc\/ejabberd\/ejabberd.cfg<\/b><\/p>\n<p>  \u041d\u0430\u0437\u043d\u0430\u0447\u0430\u0435\u043c \u043f\u0440\u0430\u0432\u0430 \u043d\u0430 \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u043e\u0435 \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e <b>admin<\/b>. \u041d\u0430\u0445\u043e\u0434\u0438\u043c \u0441\u0435\u043a\u0446\u0438\u044e:<\/p>\n<p>  <b>%%<br \/>  %% Remove the Access Control Lists before new ones are added.<br \/>  %%<br \/>  %%override_acls.<br \/>  <\/b><\/p>\n<p>  \u0418 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043c \u0441\u0442\u0440\u043e\u043a\u0443:<\/p>\n<p>  <b>{acl, admin, {user, \u00abadmin\u00bb, \u00abserver.int\u00bb}}.<\/b><\/p>\n<p>  \u041d\u0430\u0445\u043e\u0434\u0438\u043c \u0441\u0435\u043a\u0446\u0438\u044e <b>SERVED HOSTNAMES <\/b>\u0438 \u043f\u0440\u0430\u0432\u0438\u043c \u0438\u043c\u044f \u0434\u043e\u043c\u0435\u043d\u0430 \u0432 \u0441\u0442\u0440\u043e\u043a\u0435:<\/p>\n<p>  <b>{hosts, [\u00abserver.int\u00bb]}.<\/b><\/p>\n<p>  \u041f\u043e\u043f\u0440\u043e\u0431\u0443\u0435\u043c \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0441\u0435\u0440\u0432\u0438\u0441 ejabberd:<\/p>\n<p>  <b>service ejabberd start<\/b><\/p>\n<p>  \u0415\u0441\u043b\u0438 \u0441\u0435\u0440\u0432\u0438\u0441 \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043b\u0441\u044f, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0441\u043c\u043e\u0436\u0435\u0442 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u0432\u0441\u0435\u043c\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u043c\u0438 \u0441\u0435\u0440\u0432\u0438\u0441\u0430, \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u043c:<\/p>\n<p>  <b>ejabberdctl register admin server.int 123456<\/b><\/p>\n<p>  \u0422\u0435\u043f\u0435\u0440\u044c \u0438\u0434\u0435\u043c \u0432 \u0431\u0440\u0430\u0443\u0437\u0435\u0440: <\/p>\n<p>  \u041d\u0430\u0431\u0438\u0440\u0430\u0435\u043c<b> <a href=\"http:\/\/server.int\">server.int<\/a>:5280\/admin\/ <\/b>\u0438 \u0432\u0432\u043e\u0434\u0438\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f <b>admin@server.int <\/b>\u0438 \u043f\u0430\u0440\u043e\u043b\u044c <b>123456<\/b>. \u041f\u043e\u044f\u0432\u0438\u0442\u0441\u044f \u0430\u0434\u043c\u0438\u043d\u0441\u043a\u0430\u044f \u043f\u0430\u043d\u0435\u043b\u044c \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u043c <b>ejabberd<\/b>.<\/p>\n<p>  \u0414\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u0441\u0435\u0440\u0432\u0438\u0441 \u0432 \u0430\u0432\u0442\u043e\u0437\u0430\u043f\u0443\u0441\u043a:<\/p>\n<p>  <b>chkconfig ejabberd on<\/b><\/p>\n<p>  \u041f\u0435\u0440\u0432\u0443\u044e \u0438 \u043f\u0440\u043e\u0441\u0442\u0443\u044e \u0441\u0442\u0430\u0434\u0438\u044e \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u043b\u0438, <b>ejabberd <\/b>\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442, \u043d\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438 \u0432 \u044d\u0442\u043e\u0439 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u043d\u0443\u0436\u043d\u043e \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0442\u044c \u0440\u0443\u043a\u0430\u043c\u0438 \u0438 \u043e\u043d\u0438 \u0431\u0443\u0434\u0443\u0442 \u0445\u0440\u0430\u043d\u0438\u0442\u044c\u0441\u044f \u0432 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0439 \u0431\u0430\u0437\u0435 <b>ejabberd<\/b>. \u041d\u043e \u0442\u0430\u043a \u043a\u0430\u043a \u0431\u044b\u043b\u043e \u0440\u0435\u0448\u0435\u043d\u043e \u0441\u0432\u044f\u0437\u0430\u0442\u044c <b>EJabberd <\/b>\u0438 \u0443\u0447\u0435\u0442\u043d\u044b\u0435 \u0437\u0430\u043f\u0438\u0441\u0438<b> Win2008AD<\/b>, \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u0435\u043c \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0443.<\/p>\n<p>  \u041e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u043c \u043d\u0430 \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043a\u043e\u043d\u0444\u0438\u0433 <b>\/etc\/ejabberd\/ejabberd.cfg<\/b><\/p>\n<p>  \u041d\u0430\u0445\u043e\u0434\u0438\u043c \u0441\u0442\u0440\u043e\u043a\u0443 \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043c\u044b \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u043b\u0438 \u0434\u043b\u044f \u0432\u0445\u043e\u0434\u0430 \u0432 \u0430\u0434\u043c\u0438\u043d\u0441\u043a\u0443\u044e \u0432\u0435\u0431 \u043f\u0430\u043d\u0435\u043b\u044c:<\/p>\n<p>  <b>{acl, admin, {user, \u00abadmin\u00bb, \u00abserver.int\u00bb}}.<\/b><\/p>\n<p>  \u041f\u043e\u0441\u043b\u0435 \u043d\u0435\u0435 \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u043d\u043e\u0432\u0443\u044e \u0441\u0442\u0440\u043e\u043a\u0443:<\/p>\n<p>  <b>{acl, admin, {user, \u00abuserjabber\u00bb, \u00abserver.int\u00bb}}.<\/b><\/p>\n<p>  \u042d\u0442\u043e\u0442 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c <b>userjabber <\/b>\u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u0441\u043e\u0437\u0434\u0430\u043d \u0432 <b>AD<\/b>, \u0447\u0442\u043e\u0431\u044b \u0432 \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u043c \u0438\u043c\u0435\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u0430\u0434\u043c\u0438\u043d\u0441\u043a\u043e\u0439 \u0432\u0435\u0431 \u043f\u0430\u043d\u0435\u043b\u0438.<\/p>\n<p>  \u0412\u043d\u0438\u043c\u0430\u043d\u0438\u0435, \u043f\u043e\u0441\u043b\u0435 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u043a <b>AD <\/b>\u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c <b>admin<\/b>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0438\u043c\u0435\u043b \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u0430\u0434\u043c\u0438\u043d\u0441\u043a\u043e\u0439 \u0432\u0435\u0431 \u043f\u0430\u043d\u0435\u043b\u0438, \u0443\u0442\u0440\u0430\u0442\u0438\u0442 \u0441\u0438\u043b\u0443 \u0438 \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c <b>userjabber <\/b>\u0441\u043c\u043e\u0436\u0435\u0442 \u0432\u043e\u0439\u0442\u0438 \u0432 \u0430\u0434\u043c\u0438\u043d \u043f\u0430\u043d\u0435\u043b\u044c.<\/p>\n<p>  \u0414\u0430\u043b\u0435\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u043a <b>AD<\/b>.<\/p>\n<p>  \u041d\u0430\u0445\u043e\u0434\u0438\u043c \u0441\u0442\u0440\u043e\u043a\u0443 \u0438 \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u043c \u043a \u0432\u0438\u0434\u0443 (\u043e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u044e\u044e \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u044e):<\/p>\n<p>  <b>%%{auth_method, internal}.<\/b><\/p>\n<p>  \u041d\u0430\u0445\u043e\u0434\u0438\u043c \u0441\u0442\u0440\u043e\u043a\u0443 \u0438 \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u043c \u043a \u0432\u0438\u0434\u0443 (\u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u044e <b>LDAP<\/b>, <b>AD<\/b>):<\/p>\n<p>  <b>{auth_method, ldap}.<\/b><\/p>\n<p>  \u041d\u0430\u0445\u043e\u0434\u0438\u043c \u0431\u043b\u043e\u043a:<\/p>\n<p>  <b>%%<br \/>  %% Authentication using LDAP<br \/>  %%<\/b><\/p>\n<p>  \u0414\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0434\u043b\u044f \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u043a \u0441\u0435\u0440\u0432\u0435\u0440\u0443 <b>AD<\/b>:<\/p>\n<p>  <b>{ldap_servers, [\u00ab192.168.151.2\u00bb]}.<br \/>  {ldap_port, 389}.<\/p>\n<p>  {ldap_uids, [{\u00absAMAccountName\u00bb, &quot;%u&quot;}]}.<br \/>  {ldap_filter, &quot;(objectCategory=person)&quot;}.<\/p>\n<p>  {ldap_base, \u00abDC=developer,DC=com\u00bb}.<br \/>  {ldap_rootdn, \u00abuserjabber@developer.com\u00bb}.<br \/>  {ldap_password, \u00ab123456\u00bb}.<br \/>  <\/b><\/p>\n<p>  \u0422\u0435\u043f\u0435\u0440\u044c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043c\u043e\u0434\u0443\u043b\u0438, \u0434\u043b\u044f \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u0440\u043e\u0441\u0442\u0435\u0440\u0430 \u0438 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u043c\u044b\u0445 \u043f\u0441\u0435\u0432\u0434\u043e\u043d\u0438\u043c\u043e\u0432 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u0438\u0438 \u0441\u0432\u043e\u0439\u0441\u0442\u0432 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0445 \u0443\u0447\u0435\u0442\u043d\u044b\u0445 \u0437\u0430\u043f\u0438\u0441\u0435\u0439, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u044b\u043b\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u044b \u0432 <b>AD<\/b>. \u041a \u043f\u0440\u0438\u043c\u0435\u0440\u0443 \u043c\u044b \u0441\u043e\u0437\u0434\u0430\u043b\u0438 \u0432 <b>AD <\/b>\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439<b> ivanov.i,<\/b> <b>petrov.p<\/b>. \u0412 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430\u0445 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f, \u043d\u0430 \u0437\u0430\u043a\u043b\u0430\u0434\u043a\u0435 <b>\u0413\u043b\u0430\u0432\u043d\u0430\u044f<\/b>, \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c <b>ivanov.i<\/b> \u0438\u043c\u0435\u0435\u0442 \u0437\u0430\u043f\u0438\u0441\u0438 <b>\u0424\u0430\u043c\u0438\u043b\u0438\u044f: \u0418\u0432\u0430\u043d\u043e\u0432<\/b>, <b>\u0418\u043c\u044f: \u0418\u0432\u0430\u043d<\/b>, \u0430 \u043d\u0430 \u0437\u0430\u043a\u043b\u0430\u0434\u043a\u0435 <b>\u041e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u044f <\/b>\u0432 \u043f\u043e\u043b\u0435 <b>\u041e\u0442\u0434\u0435\u043b: \u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438<\/b>. \u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c<b> petrov.p<\/b>, \u0442\u0430\u043a \u0436\u0435 \u0438\u043c\u0435\u0435\u0442 \u0437\u0430\u043f\u0438\u0441\u044c \u0432 \u043f\u043e\u043b\u0435 <b>\u041e\u0442\u0434\u0435\u043b: \u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438<\/b>.<\/p>\n<p>  \u0427\u0442\u043e\u0431\u044b \u0442\u0435\u043f\u0435\u0440\u044c \u0432 \u0434\u0436\u0430\u0431\u0431\u0435\u0440 \u043a\u043b\u0438\u0435\u043d\u0442\u0435 \u0431\u044b\u043b\u0430 \u043a\u0440\u0430\u0441\u043e\u0442\u0430 \u0438 \u043f\u043e\u0440\u044f\u0434\u043e\u043a \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u043c\u043e\u0434\u0443\u043b\u0438<br \/>  <b>mod_shared_roster_ldap<\/b> \u0438 <b>mod_vcard_ldap<\/b>.<\/p>\n<p>  \u041d\u0430\u0445\u043e\u0434\u0438\u043c \u0441\u0442\u0440\u043e\u043a\u0443 \u0438 \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u043c \u043a \u0432\u0438\u0434\u0443:<\/p>\n<p>  <b>%%{mod_shared_roster,[]},<\/b><\/p>\n<p>  \u0414\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0440\u043e\u0441\u0442\u0435\u0440\u0430 (\u0424\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u043f\u0438\u0441\u043a\u0430 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u043f\u043e \u0433\u0440\u0443\u043f\u043f\u0430\u043c, \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u043c\u044b\u0435 \u0443 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u044b\u0445 \u043a\u043b\u0438\u0435\u043d\u0442\u043e\u0432. \u041f\u0440\u0438\u043d\u0430\u0434\u043b\u0435\u0436\u043d\u043e\u0441\u0442\u044c \u043a \u0433\u0440\u0443\u043f\u043f\u0435 \u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044f \u0438\u0437 \u0441\u0432\u043e\u0439\u0441\u0442\u0432 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u043e\u0433\u043e \u0432 <b>AD 2008<\/b>, \u0437\u0430\u043a\u043b\u0430\u0434\u043a\u0430 <b>\u041e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u044f<\/b>, \u043f\u043e\u043b\u0435 <b>\u041e\u0442\u0434\u0435\u043b<\/b>.):<\/p>\n<p>  <b>{mod_shared_roster_ldap,<br \/>   [{ldap_groupattr,\u00abdepartment\u00bb},<br \/>   {ldap_groupdesc,\u00abdepartment\u00bb},<br \/>   {ldap_rfilter, &quot;(objectCategory=person)&quot;},<br \/>   {ldap_memberattr,\u00absAMAccountName\u00bb},<br \/>   {ldap_userdesc,\u00abcn\u00bb}<br \/>   ]<br \/>  },<\/b><\/p>\n<p>  \u041d\u0430\u0445\u043e\u0434\u0438\u043c \u0441\u0442\u0440\u043e\u043a\u0443 \u0438 \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u043c \u043a \u0432\u0438\u0434\u0443:<\/p>\n<p>  <b>%%{mod_vcard, []},<\/b><\/p>\n<p>  \u0414\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u0441\u0435\u0432\u0434\u043e\u043d\u0438\u043c\u043e\u0432 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 (\u0427\u0442\u0435\u043d\u0438\u0435 <b>VCard <\/b>\u043f\u043e\u043b\u0435\u0439 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0438\u0437 <b>AD 2008<\/b>, \u0442.\u0435. \u043f\u043e\u043b\u0435\u0439 \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442\u0441\u044f \u0432 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430\u0445 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439. \u0418\u043c\u0435\u043d\u0430, \u0444\u0430\u043c\u0438\u043b\u0438\u0438 \u0438 \u0442.\u0434.):<\/p>\n<p>  <b>{mod_vcard_ldap,<br \/>   [{ldap_vcard_map,<br \/>   [{\u00abNICKNAME\u00bb, &quot;%s&quot;, [\u00abdisplayname\u00bb]},<br \/>   {\u00abGIVEN\u00bb, &quot;%s&quot;, [\u00abgivenName\u00bb]},<br \/>   {\u00abMIDDLE\u00bb, &quot;%s&quot;, [\u00abinitials\u00bb]},<br \/>   {\u00abFAMILY\u00bb, &quot;%s&quot;, [\u00absn\u00bb]},<br \/>   {\u00abFN\u00bb, &quot;%s&quot;, [\u00abdisplayName\u00bb]},<br \/>   {\u00abEMAIL\u00bb, &quot;%s&quot;, [\u00abmail\u00bb]},<br \/>   {\u00abORGNAME\u00bb, &quot;%s&quot;, [\u00abcompany\u00bb]},<br \/>   {\u00abORGUNIT\u00bb, &quot;%s&quot;, [\u00abdepartment\u00bb]},<br \/>   {\u00abCTRY\u00bb, &quot;%s&quot;, [\u00abc\u00bb]},<br \/>   {\u00abLOCALITY\u00bb, &quot;%s&quot;, [\u00abl\u00bb]},<br \/>   {\u00abSTREET\u00bb, &quot;%s&quot;, [\u00abstreetAddress\u00bb]},<br \/>   {\u00abREGION\u00bb, &quot;%s&quot;, [\u00abst\u00bb]},<br \/>   {\u00abPCODE\u00bb, &quot;%s&quot;, [\u00abpostalCode\u00bb]},<br \/>   {\u00abTITLE\u00bb, &quot;%s&quot;, [\u00abtitle\u00bb]},<br \/>   {\u00abURL\u00bb, &quot;%s&quot;, [\u00abwWWHomePage\u00bb]},<br \/>   {\u00abDESC\u00bb, &quot;%s&quot;, [\u00abdescription\u00bb]},<br \/>   {\u00abTEL\u00bb, &quot;%s&quot;, [\u00abtelephoneNumber\u00bb]}]},<br \/>   {ldap_search_fields,<br \/>   [{\u00abUser\u00bb, &quot;%u&quot;},<br \/>   {\u00abName\u00bb, \u00abgivenName\u00bb},<br \/>   {\u00abFamily Name\u00bb, \u00absn\u00bb},<br \/>   {\u00abEmail\u00bb, \u00abmail\u00bb},<br \/>   {\u00abCompany\u00bb, \u00abcompany\u00bb},<br \/>   {\u00abDepartment\u00bb, \u00abdepartment\u00bb},<br \/>   {\u00abRole\u00bb, \u00abtitle\u00bb},<br \/>   {\u00abDescription\u00bb, \u00abdescription\u00bb},<br \/>   {\u00abPhone\u00bb, \u00abtelephoneNumber\u00bb}]},<br \/>   {ldap_search_reported,<br \/>   [{\u00abFull Name\u00bb, \u00abFN\u00bb},<br \/>   {\u00abNickname\u00bb, \u00abNICKNAME\u00bb},<br \/>   {\u00abEmail\u00bb, \u00abEMAIL\u00bb}]}<br \/>   ]<br \/>  },<\/b><\/p>\n<p>  \u041f\u0435\u0440\u0435\u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c \u0441\u0435\u0440\u0432\u0438\u0441:<\/p>\n<p>  <b>service ejabberd restart<\/b><\/p>\n<p>  \u0415\u0441\u043b\u0438 \u043f\u0440\u043e\u0448\u043b\u043e \u0431\u0435\u0437 \u043e\u0448\u0438\u0431\u043e\u043a, \u043f\u0440\u043e\u0431\u0443\u0435\u043c \u0441\u043e\u0435\u0434\u0438\u043d\u0438\u0442\u044c\u0441\u044f \u0434\u0436\u0430\u0431\u0431\u0435\u0440 \u043a\u043b\u0438\u0435\u043d\u0442\u043e\u043c \u0441 \u043d\u0430\u0448\u0438\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u043c.<\/p>\n<p>  \u041e\u0448\u0438\u0431\u043a\u0438 \u0434\u0430 \u0438 \u0432\u0441\u0435 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0435 \u0437\u0430\u043f\u0438\u0441\u0438 \u043e \u0440\u0430\u0431\u043e\u0442\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u0430 \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0432 \u043b\u043e\u0433\u0430\u0445 \u0432 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0435 <b>\/var\/log\/ejabberd<\/b>.<\/p>\n<p>  \u041f\u043e\u0441\u043b\u0435 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u0432 \u043a\u043b\u0438\u0435\u043d\u0442\u0435 \u0434\u0436\u0430\u0431\u0431\u0435\u0440 \u0438\u043c\u0435\u0435\u043c \u043f\u0430\u043f\u043a\u0443 <b>\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 <\/b>\u0438 \u0432 \u043d\u0435\u0439 \u0434\u0432\u0430 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f, <b>\u0418\u0432\u0430\u043d\u043e\u0432 \u0418\u0432\u0430\u043d<\/b> \u0438<b> \u041f\u0435\u0442\u0440\u043e\u0432 \u041f\u0435\u0442\u0440<\/b>.<\/p>\n<p>  \u041f\u0440\u0438\u0432\u043e\u0436\u0443 <b>100%<\/b> \u0440\u0430\u0431\u043e\u0447\u0438\u0439 \u043a\u043e\u043d\u0444\u0438\u0433:<br \/>  <habracut\/><br \/>  <b>%%%<br \/>  %%% ejabberd configuration file<br \/>  %%%<br \/>  %%%&#8217;<\/p>\n<p>  %%% The parameters used in this configuration file are explained in more detail<br \/>  %%% in the ejabberd Installation and Operation Guide.<br \/>  %%% Please consult the Guide in case of doubts, it is included with<br \/>  %%% your copy of ejabberd, and is also available online at<br \/>  %%% <a href=\"http:\/\/www.process-one.net\/en\/ejabberd\/docs\/\">www.process-one.net\/en\/ejabberd\/docs\/<\/a><\/p>\n<p>  %%% This configuration file contains Erlang terms.<br \/>  %%% In case you want to understand the syntax, here are the concepts:<br \/>  %%%<br \/>  %%% \u2014 The character to comment a line is %<br \/>  %%%<br \/>  %%% \u2014 Each term ends in a dot, for example:<br \/>  %%% override_global.<br \/>  %%%<br \/>  %%% \u2014 A tuple has a fixed definition, its elements are<br \/>  %%% enclosed in {}, and separated with commas:<br \/>  %%% {loglevel, 4}.<br \/>  %%%<br \/>  %%% \u2014 A list can have as many elements as you want,<br \/>  %%% and is enclosed in [], for example:<br \/>  %%% [http_poll, web_admin, tls]<br \/>  %%%<br \/>  %%% \u2014 A keyword of ejabberd is a word in lowercase.<br \/>  %%% Strings are enclosed in &quot;&quot; and can contain spaces, dots,\u2026<br \/>  %%% {language, \u00aben\u00bb}.<br \/>  %%% {ldap_rootdn, \u00abdc=example,dc=com\u00bb}.<br \/>  %%%<br \/>  %%% \u2014 This term includes a tuple, a keyword, a list, and two strings:<br \/>  %%% {hosts, [\u00abjabber.example.net\u00bb, \u00abim.example.com\u00bb]}.<br \/>  %%%<\/p>\n<p>  %%%. =======================<br \/>  %%%&#8217; OVERRIDE STORED OPTIONS<\/p>\n<p>  %%<br \/>  %% Override the old values stored in the database.<br \/>  %%<\/p>\n<p>  %%<br \/>  %% Override global options (shared by all ejabberd nodes in a cluster).<br \/>  %%<br \/>  %%override_global.<\/p>\n<p>  %%<br \/>  %% Override local options (specific for this particular ejabberd node).<br \/>  %%<br \/>  %%override_local.<\/p>\n<p>  %%<br \/>  %% Remove the Access Control Lists before new ones are added.<br \/>  %%<br \/>  %%override_acls.<\/p>\n<p>  {acl, admin, {user, \u00abuserjabber\u00bb, \u00abserver.int\u00bb}}.<\/p>\n<p>  %%%. =========<br \/>  %%%&#8217; DEBUGGING<\/p>\n<p>  %%<br \/>  %% loglevel: Verbosity of log files generated by ejabberd.<br \/>  %% 0: No ejabberd log at all (not recommended)<br \/>  %% 1: Critical<br \/>  %% 2: Error<br \/>  %% 3: Warning<br \/>  %% 4: Info<br \/>  %% 5: Debug<br \/>  %%<br \/>  {loglevel, 4}.<\/p>\n<p>  %%<br \/>  %% watchdog_admins: Only useful for developers: if an ejabberd process<br \/>  %% consumes a lot of memory, send live notifications to these XMPP<br \/>  %% accounts.<br \/>  %%<br \/>  %%{watchdog_admins, [\u00abbob@example.com\u00bb]}.<\/p>\n<p>  %%%. ================<br \/>  %%%&#8217; SERVED HOSTNAMES<\/p>\n<p>  %%<br \/>  %% hosts: Domains served by ejabberd.<br \/>  %% You can define one or several, for example:<br \/>  %% {hosts, [\u00abexample.net\u00bb, \u00abexample.com\u00bb, \u00abexample.org\u00bb]}.<br \/>  %%<br \/>  {hosts, [\u00abserver.int\u00bb]}.<\/p>\n<p>  %%<br \/>  %% route_subdomains: Delegate subdomains to other XMPP servers.<br \/>  %% For example, if this ejabberd serves example.org and you want<br \/>  %% to allow communication with an XMPP server called im.example.org.<br \/>  %%<br \/>  %%{route_subdomains, s2s}.<\/p>\n<p>  %%%. ===============<br \/>  %%%&#8217; LISTENING PORTS<\/p>\n<p>  %%<br \/>  %% listen: The ports ejabberd will listen on, which service each is handled<br \/>  %% by and what options to start it with.<br \/>  %%<br \/>  {listen,<br \/>   [<\/p>\n<p>  {5222, ejabberd_c2s, [<\/p>\n<p>  %%<br \/>   %% If TLS is compiled in and you installed a SSL<br \/>   %% certificate, specify the full path to the<br \/>   %% file and uncomment this line:<br \/>   %%<br \/>   {certfile, &quot;\/etc\/ejabberd\/ejabberd.pem&quot;}, starttls,<\/p>\n<p>  {access, c2s},<br \/>   {shaper, c2s_shaper},<br \/>   {max_stanza_size, 65536}<br \/>   ]},<\/p>\n<p>  %%<br \/>   %% To enable the old SSL connection method on port 5223:<br \/>   %%<br \/>   %%{5223, ejabberd_c2s, [<br \/>   %% {access, c2s},<br \/>   %% {shaper, c2s_shaper},<br \/>   %% {certfile, &quot;\/etc\/ejabberd\/ejabberd.pem&quot;}, tls,<br \/>   %% {max_stanza_size, 65536}<br \/>   %% ]},<\/p>\n<p>  {5269, ejabberd_s2s_in, [<br \/>   {shaper, s2s_shaper},<br \/>   {max_stanza_size, 131072}<br \/>   ]},<\/p>\n<p>  %%<br \/>   %% ejabberd_service: Interact with external components (transports, &#8230;)<br \/>   %%<br \/>   %%{8888, ejabberd_service, [<br \/>   %% {access, all},<br \/>   %% {shaper_rule, fast},<br \/>   %% {ip, {127, 0, 0, 1}},<br \/>   %% {hosts, [\u00abicq.example.org\u00bb, \u00absms.example.org\u00bb],<br \/>   %% [{password, \u00absecret\u00bb}]<br \/>   %% }<br \/>   %% ]},<\/p>\n<p>  %%<br \/>   %% ejabberd_stun: Handles STUN Binding requests<br \/>   %%<br \/>   %%{{3478, udp}, ejabberd_stun, []},<\/p>\n<p>  {5280, ejabberd_http, [<br \/>   %%{request_handlers,<br \/>   %% [<br \/>   %% {[\u00abpub\u00bb, \u00abarchive\u00bb], mod_http_fileserver}<br \/>   %% ]},<br \/>   captcha,<br \/>   http_bind,<br \/>   http_poll,<br \/>   %%register,<br \/>   web_admin<br \/>   ]}<\/p>\n<p>  ]}.<\/p>\n<p>  %%<br \/>  %% s2s_use_starttls: Enable STARTTLS + Dialback for S2S connections.<br \/>  %% Allowed values are: false optional required required_trusted<br \/>  %% You must specify a certificate file.<br \/>  %%<br \/>  %%{s2s_use_starttls, optional}.<\/p>\n<p>  %%<br \/>  %% s2s_certfile: Specify a certificate file.<br \/>  %%<br \/>  %%{s2s_certfile, &quot;\/etc\/ejabberd\/ejabberd.pem&quot;}.<\/p>\n<p>  %%<br \/>  %% domain_certfile: Specify a different certificate for each served hostname.<br \/>  %%<br \/>  %%{domain_certfile, \u00abexample.org\u00bb, &quot;\/path\/to\/example_org.pem&quot;}.<br \/>  %%{domain_certfile, \u00abexample.com\u00bb, &quot;\/path\/to\/example_com.pem&quot;}.<\/p>\n<p>  %%<br \/>  %% S2S whitelist or blacklist<br \/>  %%<br \/>  %% Default s2s policy for undefined hosts.<br \/>  %%<br \/>  %%{s2s_default_policy, allow}.<\/p>\n<p>  %%<br \/>  %% Allow or deny communication with specific servers.<br \/>  %%<br \/>  %%{{s2s_host, \u00abgoodhost.org\u00bb}, allow}.<br \/>  %%{{s2s_host, \u00abbadhost.org\u00bb}, deny}.<\/p>\n<p>  %%<br \/>  %% Outgoing S2S options<br \/>  %%<br \/>  %% Preferred address families (which to try first) and connect timeout<br \/>  %% in milliseconds.<br \/>  %%<br \/>  %%{outgoing_s2s_options, [ipv4, ipv6], 10000}.<\/p>\n<p>  %%%. ==============<br \/>  %%%&#8217; AUTHENTICATION<\/p>\n<p>  %%<br \/>  %% auth_method: Method used to authenticate the users.<br \/>  %% The default method is the internal.<br \/>  %% If you want to use a different method,<br \/>  %% comment this line and enable the correct ones.<br \/>  %%<br \/>  %%{auth_method, internal}.<br \/>  %%<br \/>  %% Store the plain passwords or hashed for SCRAM:<br \/>  %%{auth_password_format, plain}.<br \/>  %%{auth_password_format, scram}.<br \/>  %%<br \/>  %% Define the FQDN if ejabberd doesn&#8217;t detect it:<br \/>  %%{fqdn, \u00abserver3.example.com\u00bb}.<\/p>\n<p>  %%<br \/>  %% Authentication using external script<br \/>  %% Make sure the script is executable by ejabberd.<br \/>  %%<br \/>  %%{auth_method, external}.<br \/>  %%{extauth_program, &quot;\/path\/to\/authentication\/script&quot;}.<\/p>\n<p>  %%<br \/>  %% Authentication using ODBC<br \/>  %% Remember to setup a database in the next section.<br \/>  %%<br \/>  %%{auth_method, odbc}.<\/p>\n<p>  %%<br \/>  %% Authentication using PAM<br \/>  %%<br \/>  %%{auth_method, pam}.<br \/>  %%{pam_service, \u00abejabberd\u00bb}.<\/p>\n<p>  %%<br \/>  %% Authentication using LDAP<br \/>  %%<\/p>\n<p>  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%<br \/>  %% \u041f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043a AD 2008. \u0414\u043b\u044f \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0441\u043f\u0438\u0441\u043a\u0430 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439.<br \/>  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%<br \/>  {auth_method, ldap}.<\/p>\n<p>  {ldap_servers, [\u00ab192.168.151.2\u00bb]}.<br \/>  {ldap_port, 389}.<\/p>\n<p>  {ldap_uids, [{\u00absAMAccountName\u00bb, &quot;%u&quot;}]}.<br \/>  {ldap_filter, &quot;(objectCategory=person)&quot;}.<\/p>\n<p>  {ldap_base, \u00abDC=developer,DC=com\u00bb}.<br \/>  {ldap_rootdn, \u00abuserjabber@developer.com\u00bb}.<br \/>  {ldap_password, \u00ab123456\u00bb}.<br \/>  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%<br \/>  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%<\/p>\n<p>  %%<br \/>  %% List of LDAP servers:<br \/>  %%{ldap_servers, [\u00ablocalhost\u00bb]}.<br \/>  %%<br \/>  %% Encryption of connection to LDAP servers:<br \/>  %%{ldap_encrypt, none}.<br \/>  %%{ldap_encrypt, tls}.<br \/>  %%<br \/>  %% Port to connect to on LDAP servers:<br \/>  %%{ldap_port, 389}.<br \/>  %%{ldap_port, 636}.<br \/>  %%<br \/>  %% LDAP manager:<br \/>  %%{ldap_rootdn, \u00abdc=example,dc=com\u00bb}.<br \/>  %%<br \/>  %% Password of LDAP manager:<br \/>  %%{ldap_password, &quot;******&quot;}.<br \/>  %%<br \/>  %% Search base of LDAP directory:<br \/>  %%{ldap_base, \u00abdc=example,dc=com\u00bb}.<br \/>  %%<br \/>  %% LDAP attribute that holds user ID:<br \/>  %%{ldap_uids, [{\u00abmail\u00bb, &quot;%u@mail.example.org&quot;}]}.<br \/>  %%<br \/>  %% LDAP filter:<br \/>  %%{ldap_filter, &quot;(objectClass=shadowAccount)&quot;}.<\/p>\n<p>  %%<br \/>  %% Anonymous login support:<br \/>  %% auth_method: anonymous<br \/>  %% anonymous_protocol: sasl_anon | login_anon | both<br \/>  %% allow_multiple_connections: true | false<br \/>  %%<br \/>  %%{host_config, \u00abpublic.example.org\u00bb, [{auth_method, anonymous},<br \/>  %% {allow_multiple_connections, false},<br \/>  %% {anonymous_protocol, sasl_anon}]}.<br \/>  %%<br \/>  %% To use both anonymous and internal authentication:<br \/>  %%<br \/>  %%{host_config, \u00abpublic.example.org\u00bb, [{auth_method, [internal, anonymous]}]}.<\/p>\n<p>  %%%. ==============<br \/>  %%%&#8217; DATABASE SETUP<\/p>\n<p>  %% ejabberd by default uses the internal Mnesia database,<br \/>  %% so you do not necessarily need this section.<br \/>  %% This section provides configuration examples in case<br \/>  %% you want to use other database backends.<br \/>  %% Please consult the ejabberd Guide for details on database creation.<\/p>\n<p>  %%<br \/>  %% MySQL server:<br \/>  %%<br \/>  %%{odbc_server, {mysql, \u00abserver\u00bb, \u00abdatabase\u00bb, \u00abusername\u00bb, \u00abpassword\u00bb}}.<br \/>  %%<br \/>  %% If you want to specify the port:<br \/>  %%{odbc_server, {mysql, \u00abserver\u00bb, 1234, \u00abdatabase\u00bb, \u00abusername\u00bb, \u00abpassword\u00bb}}.<\/p>\n<p>  %%<br \/>  %% PostgreSQL server:<br \/>  %%<br \/>  %%{odbc_server, {pgsql, \u00abserver\u00bb, \u00abdatabase\u00bb, \u00abusername\u00bb, \u00abpassword\u00bb}}.<br \/>  %%<br \/>  %% If you want to specify the port:<br \/>  %%{odbc_server, {pgsql, \u00abserver\u00bb, 1234, \u00abdatabase\u00bb, \u00abusername\u00bb, \u00abpassword\u00bb}}.<br \/>  %%<br \/>  %% If you use PostgreSQL, have a large database, and need a<br \/>  %% faster but inexact replacement for \u00abselect count(*) from users\u00bb<br \/>  %%<br \/>  %%{pgsql_users_number_estimate, true}.<\/p>\n<p>  %%<br \/>  %% ODBC compatible or MSSQL server:<br \/>  %%<br \/>  %%{odbc_server, \u00abDSN=ejabberd;UID=ejabberd;PWD=ejabberd\u00bb}.<\/p>\n<p>  %%<br \/>  %% Number of connections to open to the database for each virtual host<br \/>  %%<br \/>  %%{odbc_pool_size, 10}.<\/p>\n<p>  %%<br \/>  %% Interval to make a dummy SQL request to keep the connections to the<br \/>  %% database alive. Specify in seconds: for example 28800 means 8 hours<br \/>  %%<br \/>  %%{odbc_keepalive_interval, undefined}.<\/p>\n<p>  %%%. ===============<br \/>  %%%&#8217; TRAFFIC SHAPERS<\/p>\n<p>  %%<br \/>  %% The \u00abnormal\u00bb shaper limits traffic speed to 1000 B\/s<br \/>  %%<br \/>  {shaper, normal, {maxrate, 1000}}.<\/p>\n<p>  %%<br \/>  %% The \u00abfast\u00bb shaper limits traffic speed to 50000 B\/s<br \/>  %%<br \/>  {shaper, fast, {maxrate, 50000}}.<\/p>\n<p>  %%<br \/>  %% This option specifies the maximum number of elements in the queue<br \/>  %% of the FSM. Refer to the documentation for details.<br \/>  %%<br \/>  {max_fsm_queue, 1000}.<\/p>\n<p>  %%%. ====================<br \/>  %%%&#8217; ACCESS CONTROL LISTS<\/p>\n<p>  %%<br \/>  %% The &#8216;admin&#8217; ACL grants administrative privileges to XMPP accounts.<br \/>  %% You can put here as many accounts as you want.<br \/>  %%<br \/>  %%{acl, admin, {user, \u00abaleksey\u00bb, \u00ablocalhost\u00bb}}.<br \/>  %%{acl, admin, {user, \u00abermine\u00bb, \u00abexample.org\u00bb}}.<\/p>\n<p>  %%<br \/>  %% Blocked users<br \/>  %%<br \/>  %%{acl, blocked, {user, \u00abbaduser\u00bb, \u00abexample.org\u00bb}}.<br \/>  %%{acl, blocked, {user, \u00abtest\u00bb}}.<\/p>\n<p>  %%<br \/>  %% Local users: don&#8217;t modify this line.<br \/>  %%<br \/>  {acl, local, {user_regexp, &quot;&quot;}}.<\/p>\n<p>  %%<br \/>  %% More examples of ACLs<br \/>  %%<br \/>  %%{acl, jabberorg, {server, \u00abjabber.org\u00bb}}.<br \/>  %%{acl, aleksey, {user, \u00abaleksey\u00bb, \u00abjabber.ru\u00bb}}.<br \/>  %%{acl, test, {user_regexp, &quot;^test&quot;}}.<br \/>  %%{acl, test, {user_glob, \u00abtest*\u00bb}}.<\/p>\n<p>  %%<br \/>  %% Define specific ACLs in a virtual host.<br \/>  %%<br \/>  %%{host_config, \u00ablocalhost\u00bb,<br \/>  %% [<br \/>  %% {acl, admin, {user, \u00abbob-local\u00bb, \u00ablocalhost\u00bb}}<br \/>  %% ]<br \/>  %%}.<\/p>\n<p>  %%%. ============<br \/>  %%%&#8217; ACCESS RULES<\/p>\n<p>  %% Maximum number of simultaneous sessions allowed for a single user:<br \/>  {access, max_user_sessions, [{10, all}]}.<\/p>\n<p>  %% Maximum number of offline messages that users can have:<br \/>  {access, max_user_offline_messages, [{5000, admin}, {100, all}]}.<\/p>\n<p>  %% This rule allows access only for local users:<br \/>  {access, local, [{allow, local}]}.<\/p>\n<p>  %% Only non-blocked users can use c2s connections:<br \/>  {access, c2s, [{deny, blocked},<br \/>   {allow, all}]}.<\/p>\n<p>  %% For C2S connections, all users except admins use the \u00abnormal\u00bb shaper<br \/>  {access, c2s_shaper, [{none, admin},<br \/>   {normal, all}]}.<\/p>\n<p>  %% All S2S connections use the \u00abfast\u00bb shaper<br \/>  {access, s2s_shaper, [{fast, all}]}.<\/p>\n<p>  %% Only admins can send announcement messages:<br \/>  {access, announce, [{allow, admin}]}.<\/p>\n<p>  %% Only admins can use the configuration interface:<br \/>  {access, configure, [{allow, admin}]}.<\/p>\n<p>  %% Admins of this server are also admins of the MUC service:<br \/>  {access, muc_admin, [{allow, admin}]}.<\/p>\n<p>  %% Only accounts of the local ejabberd server can create rooms:<br \/>  {access, muc_create, [{allow, local}]}.<\/p>\n<p>  %% All users are allowed to use the MUC service:<br \/>  {access, muc, [{allow, all}]}.<\/p>\n<p>  %% Only accounts on the local ejabberd server can create Pubsub nodes:<br \/>  {access, pubsub_createnode, [{allow, local}]}.<\/p>\n<p>  %% In-band registration allows registration of any possible username.<br \/>  %% To disable in-band registration, replace &#8216;allow&#8217; with &#8216;deny&#8217;.<br \/>  {access, register, [{allow, all}]}.<\/p>\n<p>  %% By default the frequency of account registrations from the same IP<br \/>  %% is limited to 1 account every 10 minutes. To disable, specify: infinity<br \/>  %%{registration_timeout, 600}.<\/p>\n<p>  %%<br \/>  %% Define specific Access Rules in a virtual host.<br \/>  %%<br \/>  %%{host_config, \u00ablocalhost\u00bb,<br \/>  %% [<br \/>  %% {access, c2s, [{allow, admin}, {deny, all}]},<br \/>  %% {access, register, [{deny, all}]}<br \/>  %% ]<br \/>  %%}.<\/p>\n<p>  %%%. ================<br \/>  %%%&#8217; DEFAULT LANGUAGE<\/p>\n<p>  %%<br \/>  %% language: Default language used for server messages.<br \/>  %%<br \/>  {language, \u00abru\u00bb}.<\/p>\n<p>  %%<br \/>  %% Set a different default language in a virtual host.<br \/>  %%<br \/>  %%{host_config, \u00ablocalhost\u00bb,<br \/>  %% [{language, \u00abru\u00bb}]<br \/>  %%}.<\/p>\n<p>  %%%. =======<br \/>  %%%&#8217; CAPTCHA<\/p>\n<p>  %%<br \/>  %% Full path to a script that generates the image.<br \/>  %%<br \/>  %%{captcha_cmd, &quot;\/usr\/lib64\/ejabberd\/priv\/bin\/captcha.sh&quot;}.<\/p>\n<p>  %%<br \/>  %% Host for the URL and port where ejabberd listens for CAPTCHA requests.<br \/>  %%<br \/>  %%{captcha_host, \u00abexample.org:5280\u00bb}.<\/p>\n<p>  %%<br \/>  %% Limit CAPTCHA calls per minute for JID\/IP to avoid DoS.<br \/>  %%<br \/>  %%{captcha_limit, 5}.<\/p>\n<p>  %%%. =======<br \/>  %%%&#8217; MODULES<\/p>\n<p>  %%<br \/>  %% Modules enabled in all ejabberd virtual hosts.<br \/>  %%<br \/>  {modules,<br \/>   [<br \/>   {mod_adhoc, []},<br \/>   {mod_announce, [{access, announce}]}, % recommends mod_adhoc<br \/>   {mod_blocking,[]}, % requires mod_privacy<br \/>   {mod_caps, []},<br \/>   {mod_configure,[]}, % requires mod_adhoc<br \/>   {mod_disco, []},<br \/>   %%{mod_echo, [{host, \u00abecho.localhost\u00bb}]},<br \/>   {mod_irc, []},<br \/>   {mod_http_bind, []},<br \/>   %%{mod_http_fileserver, [<br \/>   %% {docroot, &quot;\/var\/www&quot;},<br \/>   %% {accesslog, &quot;\/var\/log\/ejabberd\/access.log&quot;}<br \/>   %% ]},<br \/>   {mod_last, []},<br \/>   {mod_muc, [<br \/>   %%{host, \u00abconference.<a href=\"http:\/\/habrahabr.ru\/users\/host\/\" class=\"user_link\">HOST<\/a>@\u00bb},<br \/>   {access, muc},<br \/>   {access_create, muc_create},<br \/>   {access_persistent, muc_create},<br \/>   {access_admin, muc_admin}<br \/>   ]},<br \/>   %%{mod_muc_log,[]},<br \/>   {mod_offline, [{access_max_user_messages, max_user_offline_messages}]},<br \/>   {mod_ping, []},<br \/>   %%{mod_pres_counter,[{count, 5}, {interval, 60}]},<br \/>   {mod_privacy, []},<br \/>   {mod_private, []},<br \/>   %%{mod_proxy65,[]},<br \/>   {mod_pubsub, [<br \/>   {access_createnode, pubsub_createnode},<br \/>   {ignore_pep_from_offline, true}, % reduces resource comsumption, but XEP incompliant<br \/>   %%{ignore_pep_from_offline, false}, % XEP compliant, but increases resource comsumption<br \/>   {last_item_cache, false},<br \/>   {plugins, [\u00abflat\u00bb, \u00abhometree\u00bb, \u00abpep\u00bb]} % pep requires mod_caps<br \/>   ]},<br \/>   {mod_register, [<br \/>   %%<br \/>   %% Protect In-Band account registrations with CAPTCHA.<br \/>   %%<br \/>   %%{captcha_protected, true},<\/p>\n<p>  %%<br \/>   %% Set the minimum informational entropy for passwords.<br \/>   %%<br \/>   %%{password_strength, 32},<\/p>\n<p>  %%<br \/>   %% After successful registration, the user receives<br \/>   %% a message with this subject and body.<br \/>   %%<br \/>   {welcome_message, {\u00abWelcome!\u00bb,<br \/>   \u00abHi.\\nWelcome to this XMPP server.\u00bb}},<\/p>\n<p>  %%<br \/>   %% When a user registers, send a notification to<br \/>   %% these XMPP accounts.<br \/>   %%<br \/>   %%{registration_watchers, [\u00abadmin1@example.org\u00bb]},<\/p>\n<p>  %%<br \/>   %% Only clients in the server machine can register accounts<br \/>   %%<br \/>   {ip_access, [{allow, \u00ab127.0.0.0\/8\u00bb},<br \/>   {deny, \u00ab0.0.0.0\/0\u00bb}]},<\/p>\n<p>  %%<br \/>   %% Local c2s or remote s2s users cannot register accounts<br \/>   %%<br \/>   %%{access_from, deny},<\/p>\n<p>  {access, register}<br \/>   ]},<br \/>   %%{mod_register_web, [<br \/>   %%<br \/>   %% When a user registers, send a notification to<br \/>   %% these XMPP accounts.<br \/>   %%<br \/>   %%{registration_watchers, [\u00abadmin1@example.org\u00bb]}<br \/>   %% ]},<br \/>   {mod_roster, []},<br \/>   %%{mod_service_log,[]},<br \/>   %%{mod_shared_roster,[]},<\/p>\n<p>  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%<br \/>  %% \u0420\u043e\u0441\u0442\u0435\u0440 \u0438\u0437 AD 2008.<br \/>  %% \u0424\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u043f\u0438\u0441\u043a\u0430 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u043f\u043e \u0433\u0440\u0443\u043f\u043f\u0430\u043c \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u043c\u044b\u0435 \u0443 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u044b\u0445<br \/>  %% \u043a\u043b\u0438\u0435\u043d\u0442\u043e\u0432. \u041f\u0440\u0438\u043d\u0430\u0434\u043b\u0435\u0436\u043d\u043e\u0441\u0442\u044c \u043a \u0433\u0440\u0443\u043f\u043f\u0435 \u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044f \u0438\u0437 \u0441\u0432\u043e\u0439\u0441\u0442\u0432 \u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u043e\u0433\u043e<br \/>  %% \u0432 AD 2008, \u0437\u0430\u043a\u043b\u0430\u0434\u043a\u0430 \u041e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u044f, \u043f\u043e\u043b\u0435 \u041e\u0442\u0434\u0435\u043b.<br \/>  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%<br \/>   {mod_shared_roster_ldap,<br \/>   [{ldap_groupattr,\u00abdepartment\u00bb},<br \/>   {ldap_groupdesc,\u00abdepartment\u00bb},<br \/>   {ldap_rfilter, &quot;(objectCategory=person)&quot;},<br \/>   {ldap_memberattr,\u00absAMAccountName\u00bb},<br \/>   {ldap_userdesc,\u00abcn\u00bb}<br \/>   ]<br \/>   },<br \/>  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%<br \/>  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%<\/p>\n<p>  {mod_stats, []},<br \/>   {mod_time, []},<br \/>   %%{mod_vcard, []},<\/p>\n<p>  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%<br \/>  %% \u0427\u0442\u0435\u043d\u0438\u0435 VCard \u043f\u043e\u043b\u0435\u0439 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0438\u0437 AD 2008, \u0442.\u0435. \u043f\u043e\u043b\u0435\u0439 \u043a\u043e\u0442\u043e\u0440\u044b\u0435<br \/>  %% \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442\u0441\u044f \u0432 \u0441\u0432\u043e\u0439\u0441\u0442\u0432\u0430\u0445 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439. \u0424\u0430\u043c\u0438\u043b\u0438, \u0438\u043c\u0435\u043d\u0430, \u0438 \u0442.\u0434.<br \/>  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%<\/p>\n<p>  {mod_vcard_ldap,<br \/>   [{ldap_vcard_map,<br \/>   [{\u00abNICKNAME\u00bb, &quot;%s&quot;, [\u00abdisplayname\u00bb]},<br \/>   {\u00abGIVEN\u00bb, &quot;%s&quot;, [\u00abgivenName\u00bb]},<br \/>   {\u00abMIDDLE\u00bb, &quot;%s&quot;, [\u00abinitials\u00bb]},<br \/>   {\u00abFAMILY\u00bb, &quot;%s&quot;, [\u00absn\u00bb]},<br \/>   {\u00abFN\u00bb, &quot;%s&quot;, [\u00abdisplayName\u00bb]},<br \/>   {\u00abEMAIL\u00bb, &quot;%s&quot;, [\u00abmail\u00bb]},<br \/>   {\u00abORGNAME\u00bb, &quot;%s&quot;, [\u00abcompany\u00bb]},<br \/>   {\u00abORGUNIT\u00bb, &quot;%s&quot;, [\u00abdepartment\u00bb]},<br \/>   {\u00abCTRY\u00bb, &quot;%s&quot;, [\u00abc\u00bb]},<br \/>   {\u00abLOCALITY\u00bb, &quot;%s&quot;, [\u00abl\u00bb]},<br \/>   {\u00abSTREET\u00bb, &quot;%s&quot;, [\u00abstreetAddress\u00bb]},<br \/>   {\u00abREGION\u00bb, &quot;%s&quot;, [\u00abst\u00bb]},<br \/>   {\u00abPCODE\u00bb, &quot;%s&quot;, [\u00abpostalCode\u00bb]},<br \/>   {\u00abTITLE\u00bb, &quot;%s&quot;, [\u00abtitle\u00bb]},<br \/>   {\u00abURL\u00bb, &quot;%s&quot;, [\u00abwWWHomePage\u00bb]},<br \/>   {\u00abDESC\u00bb, &quot;%s&quot;, [\u00abdescription\u00bb]},<br \/>   {\u00abTEL\u00bb, &quot;%s&quot;, [\u00abtelephoneNumber\u00bb]}]},<br \/>   {ldap_search_fields,<br \/>   [{\u00abUser\u00bb, &quot;%u&quot;},<br \/>   {\u00abName\u00bb, \u00abgivenName\u00bb},<br \/>   {\u00abFamily Name\u00bb, \u00absn\u00bb},<br \/>   {\u00abEmail\u00bb, \u00abmail\u00bb},<br \/>   {\u00abCompany\u00bb, \u00abcompany\u00bb},<br \/>   {\u00abDepartment\u00bb, \u00abdepartment\u00bb},<br \/>   {\u00abRole\u00bb, \u00abtitle\u00bb},<br \/>   {\u00abDescription\u00bb, \u00abdescription\u00bb},<br \/>   {\u00abPhone\u00bb, \u00abtelephoneNumber\u00bb}]},<br \/>   {ldap_search_reported,<br \/>   [{\u00abFull Name\u00bb, \u00abFN\u00bb},<br \/>   {\u00abNickname\u00bb, \u00abNICKNAME\u00bb},<br \/>   {\u00abEmail\u00bb, \u00abEMAIL\u00bb}]}<br \/>   ]<br \/>   },<br \/>  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%<br \/>  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%<\/p>\n<p>  {mod_version, []}<br \/>   ]}.<\/p>\n<p>  %%<br \/>  %% Enable modules with custom options in a specific virtual host<br \/>  %%<br \/>  %%{host_config, \u00ablocalhost\u00bb,<br \/>  %% [{{add, modules},<br \/>  %% [<br \/>  %% {mod_echo, [{host, \u00abmirror.localhost\u00bb}]}<br \/>  %% ]<br \/>  %% }<br \/>  %% ]}.<\/p>\n<p>  %%%.<br \/>  %%%&#8217;<\/p>\n<p>  %%% $Id$<\/p>\n<p>  %%% Local Variables:<br \/>  %%% mode: erlang<br \/>  %%% End:<br \/>  %%% vim: set filetype=erlang tabstop=8 foldmarker=%%%&#8217;,%%%. foldmethod=marker:<br \/>  <\/b>    \t<\/p>\n<div class=\"clear\"><\/div>\n<\/p><\/div>\n<p> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"http:\/\/habrahabr.ru\/post\/194582\/\"> http:\/\/habrahabr.ru\/post\/194582\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div class=\"content html_format\">   \t\u0414\u0430\u0432\u043d\u043e \u0445\u043e\u0442\u0435\u043b \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0438 \u043d\u0430 \u043a\u043e\u043d\u0435\u0446 \u044d\u0442\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u043e\u0441\u044c \u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0441\u0432\u044f\u0437\u043a\u0443 <b>EJabberd <\/b>\u0441 \u0443\u0447\u0435\u0442\u043d\u044b\u043c\u0438 \u0437\u0430\u043f\u0438\u0441\u044f\u043c\u0438 \u0438\u0437 <b>Active Directory Win 2008<\/b>. \u0421 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u0440\u043e\u0441\u0442\u0435\u0440\u0430 \u0438 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u043c\u044b\u0445 \u043f\u0441\u0435\u0432\u0434\u043e\u043d\u0438\u043c\u043e\u0432 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0430\u043d\u0438\u0438 \u0441\u0432\u043e\u0439\u0441\u0442\u0432 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0445 \u0443\u0447\u0435\u0442\u043d\u044b\u0445 \u0437\u0430\u043f\u0438\u0441\u0435\u0439, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u044b\u043b\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u044b \u0432 <b>AD<\/b>. \u0422.\u043a. \u0434\u043e \u044d\u0442\u043e\u0433\u043e \u043f\u0435\u0440\u0435\u0447\u0438\u0442\u0430\u0432 \u043a\u0443\u0447\u0443 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u0430, \u0432\u0435\u0437\u0434\u0435 \u043a\u0443\u0441\u043a\u0430\u043c\u0438 \u0438 \u043d\u0435 \u0440\u0430\u0431\u043e\u0447\u0435\u0435.  <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-194582","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/194582","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=194582"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/194582\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=194582"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=194582"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=194582"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}