Can't connect from client. Error in the logs: Option has invalid (outdated?) format.

Hi!

I am new to ejabberd.

Installed the latest version ejabberd-16.09-windows-installer.exe on a windows server 2008.
Opened the ports TCP 5222, 5269, 5280 on the firewall.
added my server / host .PEM to the config C:\Users\Administrator\AppData\Roaming\ejabberd\conf\ejabberd.yml like this:

listen:
  - 
    port: 5222
    module: ejabberd_c2s
    certfile: "C:\\Users\\Administrator\\AppData\\Roaming\\ejabberd\\conf\\hostname.de.pem"
    starttls: true

Web interface works fine.

But I can't connect to the server with my jabber client, after i created an account through the web interface.

Checked the logs and found this entry suspicious:

2016-11-15 19:24:14.552 [warning] <0.1692.0>@ejabberd_config:get_option:848
 Option {access,s2s_shaper,global} has invalid (outdated?) format. This is likely a bug

I can't find any connection attempt from my client (other then the web browser to connect to the webif) neither.

How can I troubleshoot this? Any ideas on the above?

Thank you very much in advance!

Cheers!

You only made that change in

You only made that change in the config file? The s2s_shaper (server to server) option problem is unrelated to your c2s (client to server) problem. If you tweaked other options, you can install from zero, and try to login even with no valid account, just to see if ejabberd receives the connection attempt.

I tried this:
1. I configure similar to you
2. Start ejabberd
3. In a webbrowser in the server machine I open the page: http://localhost:5222/
4. As expected, ejabberd receives the connection attempt:

13:17:17.809 [info] (#Port<0.17484>) Accepted
   connection 127.0.0.1:52946 -> 127.0.0.1:5222

5. And the browser receives some error report, because 5222 is for XMPP clients, not HTTP clients.

Alternatively:
3. I use a jabber client with bad auth details to login to ejabberd
4. ejabberd logs the connection attempt and rejects it:

13:24:39.744 [info] (#Port<0.17415>) Accepted connection 127.0.0.1:35889 -> 127.0.0.1:5222
13:24:40.104 [info] ({socket_state,fast_tls,{tlssock,#Port<0.17415>,#Port<0.17416>},<0.702.0>})
    Failed authentication for user1@localhost from 127.0.0.1

Found something suspicious in

Found something suspicious in the install log.

Found out that I installed ejabberd a couple of years ago and never deleted the debries.

Reinstalled new after renaming those two dirs mentioned.

Browser to http://localhost:5222/ gets me this:

<?xml version='1.0'?><stream:stream xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams' id='11101614011176778235' from='myhost.de' version='1.0'><stream:error><xml-not-well-formed xmlns='urn:ietf:params:xml:ns:xmpp-streams'></xml-not-well-formed></stream:error></stream:stream>

In the log i see this:

2016-11-17 20:30:17.003 [info] <0.7.0> Application lager started on node ejabberd@localhost
2016-11-17 20:30:17.183 [info] <0.7.0> Application crypto started on node ejabberd@localhost
2016-11-17 20:30:17.206 [info] <0.7.0> Application sasl started on node ejabberd@localhost
2016-11-17 20:30:17.601 [info] <0.7.0> Application asn1 started on node ejabberd@localhost
2016-11-17 20:30:17.602 [info] <0.7.0> Application public_key started on node ejabberd@localhost
2016-11-17 20:30:17.671 [info] <0.7.0> Application ssl started on node ejabberd@localhost
2016-11-17 20:30:17.936 [info] <0.7.0> Application fast_yaml started on node ejabberd@localhost
2016-11-17 20:30:18.248 [info] <0.7.0> Application fast_tls started on node ejabberd@localhost
2016-11-17 20:30:18.536 [info] <0.7.0> Application fast_xml started on node ejabberd@localhost
2016-11-17 20:30:18.576 [info] <0.7.0> Application stringprep started on node ejabberd@localhost
2016-11-17 20:30:18.821 [info] <0.7.0> Application cache_tab started on node ejabberd@localhost
2016-11-17 20:30:19.409 [info] <0.7.0> Application elixir started on node ejabberd@localhost
2016-11-17 20:30:20.182 [info] <0.7.0> Application mnesia started on node ejabberd@localhost
2016-11-17 20:30:25.712 [info] <0.7.0> Application inets started on node ejabberd@localhost
2016-11-17 20:30:33.473 [info] <0.37.0>@cyrsasl_digest:start:60 FQDN used to check DIGEST-MD5 SASL authentication: <<"CT115772">>
2016-11-17 20:30:33.473 [info] <0.37.0>@ejabberd_app:add_windows_nameservers:165 Adding machine's DNS IPs to Erlang system:
[]
2016-11-17 20:30:33.849 [warning] <0.37.0>@gen_mod:sort_modules:108 module 'mod_mam' is recommended for module 'mod_muc' but is not found in the config
2016-11-17 20:30:33.901 [info] <0.475.0>@ejabberd_listener:listen_tcp:189 Reusing listening port for {5222,{0,0,0,0},tcp}
2016-11-17 20:30:33.901 [info] <0.476.0>@ejabberd_listener:listen_tcp:189 Reusing listening port for {5269,{0,0,0,0},tcp}
2016-11-17 20:30:33.902 [info] <0.478.0>@ejabberd_listener:listen_tcp:189 Reusing listening port for {5280,{0,0,0,0},tcp}
2016-11-17 20:30:33.902 [info] <0.37.0>@ejabberd_app:start:81 ejabberd 16.09 is started in the node ejabberd@localhost
2016-11-17 20:30:33.902 [info] <0.7.0> Application ejabberd started on node ejabberd@localhost
2016-11-17 20:37:11.769 [info] <0.475.0>@ejabberd_listener:accept:333 (#Port<0.21703>) Accepted connection 127.0.0.1:55480 -> 127.0.0.1:5222
2016-11-17 20:37:12.052 [info] <0.475.0>@ejabberd_listener:accept:333 (#Port<0.21726>) Accepted connection 127.0.0.1:55481 -> 127.0.0.1:5222

Great, so your webbrowser can

Great, so your webbrowser can connect correctly to ejabberd. Then only problem is the obvious thing that it's attempt an HTTP query to a XMPP server.

Now try the "alternative" I mentioned earlier: Use a well-known Jabber client (like Gajim, Psi, Tkabber...) to login to your ejabberd server using a valid account. Also try with a non-existing account, just for testing.

Syndicate content