[jitsi-dev] [jitsi-meet] [jitsi-videobridge] for firewall protected clients


#1

From what I’m seeing, it seems like you guys have plans to work on something like that still (or was all of this work already completed)?

https://jitsi.org/Development/GSoC

Wondering why I’m still having issues from some clients behind my firewall to be able to stream to and from the bridge. Do I need to open/forward specific port traffic from the public IP to the private one when configuring the NAT traversal options?

Roberto

···

From: Roberto Andrade
Date: Tuesday, July 21, 2015 at 3:17 PM
To: <dev@jitsi.org>
Subject: Re: jitsi-meet and jitsi-videobridge for firewall protected clients

From: Roberto Andrade
Date: Tuesday, July 21, 2015 at 3:00 PM
To: <dev@jitsi.org>
Subject: jitsi-meet and jitsi-videobridge for firewall protected clients

Hi, I recently stood up a server running jitsi-meet following the quick tutorial and have configured the NAT harvesting IPs on the sip-communicator.properties file as per some of the instructions on the site but am still having issues with firewall restricted clients being able to connect to the bridge.

Traditionally in a standard WebRTC deployment, the clients would be configured with both STUN/TURN servers to be able to work around these restrictive scenarios by routing/mapping the traffic through these public interfaces. I’m wondering how does that work with this combo as I recently was told “since the video bridge now supports TCP, TURN servers are no longer necessary” (https://github.com/jitsi/jitsi-meet/issues/324).

So how does the web clients know to work around firewall restrictions by connecting to the bridge some other way if whatever ports it’s trying to connect to fail because of firewall rules?

Roberto


#2

Hi Roberto,

Some answers inline.

From: Roberto Andrade
Date: Tuesday, July 21, 2015 at 3:17 PM
To: <dev@jitsi.org <mailto:dev@jitsi.org>>
Subject: Re: jitsi-meet and jitsi-videobridge for firewall protected clients

From what I’m seeing, it seems like you guys have plans to work on
something like that still (or was all of this work already completed)?

https://jitsi.org/Development/GSoC

The page is outdated. The TCP support is already finished, and the TURN stuff refer to improvements to the Jitsi client (not Jitsi Meet or Videobridge).

Wondering why I’m still having issues from some clients behind my
firewall to be able to stream to and from the bridge. Do I need to
open/forward specific port traffic from the public IP to the private one
when configuring the NAT traversal options?

If your videobridge instance is running with a public IP address, you do not need to configure NAT options.

If videobridge is running behind a NAT, you will need to forward the UDP port range that it uses (10000 to 20000 by default), and possibly TCP ports 443 and/or 4443.

Roberto

From: Roberto Andrade
Date: Tuesday, July 21, 2015 at 3:00 PM
To: <dev@jitsi.org <mailto:dev@jitsi.org>>
Subject: jitsi-meet and jitsi-videobridge for firewall protected clients

Hi, I recently stood up a server running jitsi-meet following the quick
tutorial and have configured the NAT harvesting IPs on the
sip-communicator.properties file as per some of the instructions on the
site but am still having issues with firewall restricted clients being
able to connect to the bridge.

Traditionally in a standard WebRTC deployment, the clients would be
configured with both STUN/TURN servers to be able to work around these
restrictive scenarios by routing/mapping the traffic through these
public interfaces. I’m wondering how does that work with this combo as I
recently was told “since the video bridge now supports TCP, TURN servers
are no longer necessary” (https://github.com/jitsi/jitsi-meet/issues/324).

We assume that the videobridge runs with a public IP address (or it has proper mappings setup). This solves the problem with NATs.

We used to use a TURN server to allow client to connect over TCP/443, in case their firewall was blocking UDP traffic or traffic on non-standard ports. Videobridge now supports TCP natively, so a separate TURN server is not necessary.

So how does the web clients know to work around firewall restrictions by
connecting to the bridge some other way if whatever ports it’s trying to
connect to fail because of firewall rules?

All clients use ICE -- they automatically try to connect via different addresses and use the connection which works.

Regards,
Boris

···

On 21/07/15 15:21, Roberto Andrade wrote:


#3

Ok, that’s what I did. My bridge already has the NAT parameters configured and UDP ports forwarded.

But like you mentioned in the case UDP is blocked by the firewall, how will the TCP support that the bridge offers enables the webRTC stack on the browser to try to connect to it through some other NATed route? Like in traditional TURN relay scenarios?

···

On 7/21/15, 4:39 PM, "dev on behalf of Boris Grozev" <dev-bounces@jitsi.org on behalf of boris@jitsi.org> wrote:

Hi Roberto,

Some answers inline.

On 21/07/15 15:21, Roberto Andrade wrote:

From: Roberto Andrade
Date: Tuesday, July 21, 2015 at 3:17 PM
To: <dev@jitsi.org <mailto:dev@jitsi.org>>
Subject: Re: jitsi-meet and jitsi-videobridge for firewall protected clients

From what I’m seeing, it seems like you guys have plans to work on
something like that still (or was all of this work already completed)?

https://jitsi.org/Development/GSoC

The page is outdated. The TCP support is already finished, and the TURN
stuff refer to improvements to the Jitsi client (not Jitsi Meet or
Videobridge).

Wondering why I’m still having issues from some clients behind my
firewall to be able to stream to and from the bridge. Do I need to
open/forward specific port traffic from the public IP to the private one
when configuring the NAT traversal options?

If your videobridge instance is running with a public IP address, you do
not need to configure NAT options.

If videobridge is running behind a NAT, you will need to forward the UDP
port range that it uses (10000 to 20000 by default), and possibly TCP
ports 443 and/or 4443.

Roberto

From: Roberto Andrade
Date: Tuesday, July 21, 2015 at 3:00 PM
To: <dev@jitsi.org <mailto:dev@jitsi.org>>
Subject: jitsi-meet and jitsi-videobridge for firewall protected clients

Hi, I recently stood up a server running jitsi-meet following the quick
tutorial and have configured the NAT harvesting IPs on the
sip-communicator.properties file as per some of the instructions on the
site but am still having issues with firewall restricted clients being
able to connect to the bridge.

Traditionally in a standard WebRTC deployment, the clients would be
configured with both STUN/TURN servers to be able to work around these
restrictive scenarios by routing/mapping the traffic through these
public interfaces. I’m wondering how does that work with this combo as I
recently was told “since the video bridge now supports TCP, TURN servers
are no longer necessary” (https://github.com/jitsi/jitsi-meet/issues/324).

We assume that the videobridge runs with a public IP address (or it has
proper mappings setup). This solves the problem with NATs.

We used to use a TURN server to allow client to connect over TCP/443, in
case their firewall was blocking UDP traffic or traffic on non-standard
ports. Videobridge now supports TCP natively, so a separate TURN server
is not necessary.

So how does the web clients know to work around firewall restrictions by
connecting to the bridge some other way if whatever ports it’s trying to
connect to fail because of firewall rules?

All clients use ICE -- they automatically try to connect via different
addresses and use the connection which works.

Regards,
Boris

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev


#4

The bridge will include an ICE candidate for TCP port 443, and the client will connect to it directly. Does that make sense?

Regards,
Boris

···

On 21/07/15 15:59, Roberto Andrade wrote:

Ok, that’s what I did. My bridge already has the NAT parameters
configured and UDP ports forwarded.

But like you mentioned in the case UDP is blocked by the firewall,
how will the TCP support that the bridge offers enables the webRTC
stack on the browser to try to connect to it through some other NATed
route? Like in traditional TURN relay scenarios?


#5

Ok. So wouldn't the nginx server then need to be configured to somehow
forward relevant traffic to the bridge rather than serving it as a regular
http/s request?

···

On Tuesday, July 21, 2015, Boris Grozev <boris@jitsi.org> wrote:

On 21/07/15 15:59, Roberto Andrade wrote:

Ok, that’s what I did. My bridge already has the NAT parameters
configured and UDP ports forwarded.

But like you mentioned in the case UDP is blocked by the firewall,
how will the TCP support that the bridge offers enables the webRTC
stack on the browser to try to connect to it through some other NATed
route? Like in traditional TURN relay scenarios?

The bridge will include an ICE candidate for TCP port 443, and the client
will connect to it directly. Does that make sense?

Regards,
Boris

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev


#6

You can either use a separate IP address for the bridge or use the newly added HTTP/media demultiplexing in the bridge (essentially replace nginx with videobridge).

Regards,
Boris

···

On 22/07/15 06:13, Roberto Andrade wrote:

Ok. So wouldn't the nginx server then need to be configured to somehow
forward relevant traffic to the bridge rather than serving it as a
regular http/s request?


#7

Ok, let me try to get this straight.

I’m talking about the setup that gets configured when you perform the quick install routines. It setups up prosody, jitsi-videobridge, jitsi-meet, jocofo and nginx.

I noticed nginx config is setup to listen on ports 80/443 and forward traffic coming in either for requests on /http-bind to the prosody 5280 port.

The bridge is configured to run on port 5347 but it’s currently not exposed to the internet.

From what I understand the bridge also accepts incoming requests on udp ports 10000-20000 so I exposed those in addition to 80/443.

Now, when it comes to the TCP relaying functionality you speak of, if the bridge will include an ICE candidate with the public IP and port 443 that will hit the nginx server which would need to forward that traffic onto the bridge (on port 5347?), no? How would one go about configuring such thing in nginx (should that already be part of the configuration scripts once you install that via the debian recipe?)?

Thanks in advance,

Roberto

···

On 7/22/15, 7:47 AM, "dev on behalf of Boris Grozev" <dev-bounces@jitsi.org on behalf of boris@jitsi.org> wrote:

On 22/07/15 06:13, Roberto Andrade wrote:

Ok. So wouldn't the nginx server then need to be configured to somehow
forward relevant traffic to the bridge rather than serving it as a
regular http/s request?

You can either use a separate IP address for the bridge or use the newly
added HTTP/media demultiplexing in the bridge (essentially replace nginx
with videobridge).

Regards,
Boris

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev


#8

Hey Roberto,

Ok, let me try to get this straight.

I’m talking about the setup that gets configured when you perform the quick install routines. It setups up prosody, jitsi-videobridge, jitsi-meet, jocofo and nginx.

I noticed nginx config is setup to listen on ports 80/443 and forward traffic coming in either for requests on /http-bind to the prosody 5280 port.

The bridge is configured to run on port 5347 but it’s currently not exposed to the internet.

From what I understand the bridge also accepts incoming requests on udp ports 10000-20000 so I exposed those in addition to 80/443.

Now, when it comes to the TCP relaying functionality you speak of, if the bridge will include an ICE candidate with the public IP and port 443 that will hit the nginx server which would need to forward that traffic onto the bridge (on port 5347?), no? How would one go about configuring such thing in nginx (should that already be part of the configuration scripts once you install that via the debian recipe?)?

What Boris meant was that there is no way to get your media through
nginx. At least I am not aware of one.

What you need to do is either:

A) Use separate IP addresses so that both JVB and nginx would be able
to listen on 443 without fighting for it or
B) You get rid of nginx and use JVB as both a media and a web server.
JVB supports that.

We implemented support for option B in order to solve cases exactly like yours.

Emil

···

On Wed, Jul 22, 2015 at 3:25 PM, Roberto Andrade <roberto.andrade@gmail.com> wrote:

Thanks in advance,

Roberto

On 7/22/15, 7:47 AM, "dev on behalf of Boris Grozev" <dev-bounces@jitsi.org on behalf of boris@jitsi.org> wrote:

On 22/07/15 06:13, Roberto Andrade wrote:

Ok. So wouldn't the nginx server then need to be configured to somehow
forward relevant traffic to the bridge rather than serving it as a
regular http/s request?

You can either use a separate IP address for the bridge or use the newly
added HTTP/media demultiplexing in the bridge (essentially replace nginx
with videobridge).

Regards,
Boris

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

--
https://jitsi.org


#9

Ok, makes sense. I had originally reported this as an issue on github because I felt like this was missing from either the instructions (quick or manual) or the default installation script.

Given that the default install has node/nginx one the same box as the bridge, option B in this case wouldn’t be a viable one as you’d lose a way to serve the jitsi-meet web site, no? Or will JVB proxy traffic and route to the node app too? And do the same http-bind forwarding to prosody as well?

On option A I guess traditionally you’d keep both the frontend and the different backends on different servers so naturally would have a different IP to talk to avoiding the conflict.

Shouldn’t there be instructions on either the jitsi-meet or the jitsi-videobridge repos describing this capability and how to take advantage of it?

Roberto

···

On 7/22/15, 9:30 AM, "dev on behalf of Emil Ivov" <dev-bounces@jitsi.org on behalf of emcho@jitsi.org> wrote:

Hey Roberto,

On Wed, Jul 22, 2015 at 3:25 PM, Roberto Andrade ><roberto.andrade@gmail.com> wrote:

Ok, let me try to get this straight.

I’m talking about the setup that gets configured when you perform the quick install routines. It setups up prosody, jitsi-videobridge, jitsi-meet, jocofo and nginx.

I noticed nginx config is setup to listen on ports 80/443 and forward traffic coming in either for requests on /http-bind to the prosody 5280 port.

The bridge is configured to run on port 5347 but it’s currently not exposed to the internet.

From what I understand the bridge also accepts incoming requests on udp ports 10000-20000 so I exposed those in addition to 80/443.

Now, when it comes to the TCP relaying functionality you speak of, if the bridge will include an ICE candidate with the public IP and port 443 that will hit the nginx server which would need to forward that traffic onto the bridge (on port 5347?), no? How would one go about configuring such thing in nginx (should that already be part of the configuration scripts once you install that via the debian recipe?)?

What Boris meant was that there is no way to get your media through
nginx. At least I am not aware of one.

What you need to do is either:

A) Use separate IP addresses so that both JVB and nginx would be able
to listen on 443 without fighting for it or
B) You get rid of nginx and use JVB as both a media and a web server.
JVB supports that.

We implemented support for option B in order to solve cases exactly like yours.

Emil

Thanks in advance,

Roberto

On 7/22/15, 7:47 AM, "dev on behalf of Boris Grozev" <dev-bounces@jitsi.org on behalf of boris@jitsi.org> wrote:

On 22/07/15 06:13, Roberto Andrade wrote:

Ok. So wouldn't the nginx server then need to be configured to somehow
forward relevant traffic to the bridge rather than serving it as a
regular http/s request?

You can either use a separate IP address for the bridge or use the newly
added HTTP/media demultiplexing in the bridge (essentially replace nginx
with videobridge).

Regards,
Boris

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

--
https://jitsi.org

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev


#10

Ok, makes sense. I had originally reported this as an issue on github because I felt like this was missing from either the instructions (quick or manual) or the default installation script.

The latest default installation scripts should end up putting you in
Option B which would solve your problem.

Given that the default install has node/nginx one the same box as the bridge, option B in this case wouldn’t be a viable one as you’d lose a way to serve the jitsi-meet web site, no? Or will JVB proxy traffic and route to the node app too? And do the same http-bind forwarding to prosody as well?

JVB now ships together with jetty which serves Meet and also allows
you to connect to prosody.

On option A I guess traditionally you’d keep both the frontend and the different backends on different servers so naturally would have a different IP to talk to avoiding the conflict.

Right.

Shouldn’t there be instructions on either the jitsi-meet or the jitsi-videobridge repos describing this capability and how to take advantage of it?

That's supposed to be the default in the debian package but we are not
there yet. We'll try to make this happen soon.

Emil

···

On Wed, Jul 22, 2015 at 3:56 PM, Roberto Andrade <roberto.andrade@gmail.com> wrote:

Roberto

On 7/22/15, 9:30 AM, "dev on behalf of Emil Ivov" <dev-bounces@jitsi.org on behalf of emcho@jitsi.org> wrote:

Hey Roberto,

On Wed, Jul 22, 2015 at 3:25 PM, Roberto Andrade >><roberto.andrade@gmail.com> wrote:

Ok, let me try to get this straight.

I’m talking about the setup that gets configured when you perform the quick install routines. It setups up prosody, jitsi-videobridge, jitsi-meet, jocofo and nginx.

I noticed nginx config is setup to listen on ports 80/443 and forward traffic coming in either for requests on /http-bind to the prosody 5280 port.

The bridge is configured to run on port 5347 but it’s currently not exposed to the internet.

From what I understand the bridge also accepts incoming requests on udp ports 10000-20000 so I exposed those in addition to 80/443.

Now, when it comes to the TCP relaying functionality you speak of, if the bridge will include an ICE candidate with the public IP and port 443 that will hit the nginx server which would need to forward that traffic onto the bridge (on port 5347?), no? How would one go about configuring such thing in nginx (should that already be part of the configuration scripts once you install that via the debian recipe?)?

What Boris meant was that there is no way to get your media through
nginx. At least I am not aware of one.

What you need to do is either:

A) Use separate IP addresses so that both JVB and nginx would be able
to listen on 443 without fighting for it or
B) You get rid of nginx and use JVB as both a media and a web server.
JVB supports that.

We implemented support for option B in order to solve cases exactly like yours.

Emil

Thanks in advance,

Roberto

On 7/22/15, 7:47 AM, "dev on behalf of Boris Grozev" <dev-bounces@jitsi.org on behalf of boris@jitsi.org> wrote:

On 22/07/15 06:13, Roberto Andrade wrote:

Ok. So wouldn't the nginx server then need to be configured to somehow
forward relevant traffic to the bridge rather than serving it as a
regular http/s request?

You can either use a separate IP address for the bridge or use the newly
added HTTP/media demultiplexing in the bridge (essentially replace nginx
with videobridge).

Regards,
Boris

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

--
https://jitsi.org

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

--
https://jitsi.org


#11

Hi,

as Emil pointed we will add this as default to the meet installation
soon. All the code that serves it, is there, but to do this manually
is not a straight forward task.
You need to stop nginx and configure jitsi-videobridge to serve meet.

1. Add prosody certificates to java keystore
2. Configure authbind to allow jvb to use port 443
3. And configure jvb itself in
/usr/share/jitsi-videobridge/.sip-communicator/sip-communicator.properties
org.jitsi.videobridge.rest.jetty.host=::
org.jitsi.videobridge.rest.jetty.port=443
org.jitsi.videobridge.rest.jetty.ProxyServlet.hostHeader=example.meet.jit.si
org.jitsi.videobridge.rest.jetty.ProxyServlet.pathSpec=/http-bind
org.jitsi.videobridge.rest.jetty.ProxyServlet.proxyTo=http://localhost:5280/http-bind
org.jitsi.videobridge.rest.jetty.ResourceHandler.resourceBase=/usr/share/jitsi-meet
org.jitsi.videobridge.rest.jetty.ResourceHandler.alias./config.js=/etc/jitsi/meet/example.meet.jit.si-config.js
org.jitsi.videobridge.rest.jetty.RewriteHandler.regex=^/([a-zA-Z0-9]+)$
org.jitsi.videobridge.rest.jetty.RewriteHandler.replacement=/
org.jitsi.videobridge.rest.jetty.tls.port=443
org.jitsi.videobridge.TCP_HARVESTER_PORT=443
org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePath=/etc/jitsi/videobridge/example.meet.jit.si.jks
org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePassword=changeit
4. You need to start jvb with rest and xmpp interface running. Add the
following to jvb config in etc:
JVB_OPTS="--apis=rest,xmpp"
AUTHBIND=yes

Hope this helps

Regards
damencho

···

On Wed, Jul 22, 2015 at 9:14 AM, Roberto Andrade <roberto.andrade@gmail.com> wrote:

Ok, glad to hear. So how do I go about fetching this latest default installation scripts to be able to have an environment with the Option B setup?

On 7/22/15, 10:05 AM, "dev on behalf of Emil Ivov" <dev-bounces@jitsi.org on behalf of emcho@jitsi.org> wrote:

On Wed, Jul 22, 2015 at 3:56 PM, Roberto Andrade >><roberto.andrade@gmail.com> wrote:

Ok, makes sense. I had originally reported this as an issue on github because I felt like this was missing from either the instructions (quick or manual) or the default installation script.

The latest default installation scripts should end up putting you in
Option B which would solve your problem.

Given that the default install has node/nginx one the same box as the bridge, option B in this case wouldn’t be a viable one as you’d lose a way to serve the jitsi-meet web site, no? Or will JVB proxy traffic and route to the node app too? And do the same http-bind forwarding to prosody as well?

JVB now ships together with jetty which serves Meet and also allows
you to connect to prosody.

On option A I guess traditionally you’d keep both the frontend and the different backends on different servers so naturally would have a different IP to talk to avoiding the conflict.

Right.

Shouldn’t there be instructions on either the jitsi-meet or the jitsi-videobridge repos describing this capability and how to take advantage of it?

That's supposed to be the default in the debian package but we are not
there yet. We'll try to make this happen soon.

Emil

Roberto

On 7/22/15, 9:30 AM, "dev on behalf of Emil Ivov" <dev-bounces@jitsi.org on behalf of emcho@jitsi.org> wrote:

Hey Roberto,

On Wed, Jul 22, 2015 at 3:25 PM, Roberto Andrade >>>><roberto.andrade@gmail.com> wrote:

Ok, let me try to get this straight.

I’m talking about the setup that gets configured when you perform the quick install routines. It setups up prosody, jitsi-videobridge, jitsi-meet, jocofo and nginx.

I noticed nginx config is setup to listen on ports 80/443 and forward traffic coming in either for requests on /http-bind to the prosody 5280 port.

The bridge is configured to run on port 5347 but it’s currently not exposed to the internet.

From what I understand the bridge also accepts incoming requests on udp ports 10000-20000 so I exposed those in addition to 80/443.

Now, when it comes to the TCP relaying functionality you speak of, if the bridge will include an ICE candidate with the public IP and port 443 that will hit the nginx server which would need to forward that traffic onto the bridge (on port 5347?), no? How would one go about configuring such thing in nginx (should that already be part of the configuration scripts once you install that via the debian recipe?)?

What Boris meant was that there is no way to get your media through
nginx. At least I am not aware of one.

What you need to do is either:

A) Use separate IP addresses so that both JVB and nginx would be able
to listen on 443 without fighting for it or
B) You get rid of nginx and use JVB as both a media and a web server.
JVB supports that.

We implemented support for option B in order to solve cases exactly like yours.

Emil

Thanks in advance,

Roberto

On 7/22/15, 7:47 AM, "dev on behalf of Boris Grozev" <dev-bounces@jitsi.org on behalf of boris@jitsi.org> wrote:

On 22/07/15 06:13, Roberto Andrade wrote:

Ok. So wouldn't the nginx server then need to be configured to somehow
forward relevant traffic to the bridge rather than serving it as a
regular http/s request?

You can either use a separate IP address for the bridge or use the newly
added HTTP/media demultiplexing in the bridge (essentially replace nginx
with videobridge).

Regards,
Boris

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

--
https://jitsi.org

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

--
https://jitsi.org

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev


#12

Ok, glad to hear. So how do I go about fetching this latest default installation scripts to be able to have an environment with the Option B setup?

···

On 7/22/15, 10:05 AM, "dev on behalf of Emil Ivov" <dev-bounces@jitsi.org on behalf of emcho@jitsi.org> wrote:

On Wed, Jul 22, 2015 at 3:56 PM, Roberto Andrade ><roberto.andrade@gmail.com> wrote:

Ok, makes sense. I had originally reported this as an issue on github because I felt like this was missing from either the instructions (quick or manual) or the default installation script.

The latest default installation scripts should end up putting you in
Option B which would solve your problem.

Given that the default install has node/nginx one the same box as the bridge, option B in this case wouldn’t be a viable one as you’d lose a way to serve the jitsi-meet web site, no? Or will JVB proxy traffic and route to the node app too? And do the same http-bind forwarding to prosody as well?

JVB now ships together with jetty which serves Meet and also allows
you to connect to prosody.

On option A I guess traditionally you’d keep both the frontend and the different backends on different servers so naturally would have a different IP to talk to avoiding the conflict.

Right.

Shouldn’t there be instructions on either the jitsi-meet or the jitsi-videobridge repos describing this capability and how to take advantage of it?

That's supposed to be the default in the debian package but we are not
there yet. We'll try to make this happen soon.

Emil

Roberto

On 7/22/15, 9:30 AM, "dev on behalf of Emil Ivov" <dev-bounces@jitsi.org on behalf of emcho@jitsi.org> wrote:

Hey Roberto,

On Wed, Jul 22, 2015 at 3:25 PM, Roberto Andrade >>><roberto.andrade@gmail.com> wrote:

Ok, let me try to get this straight.

I’m talking about the setup that gets configured when you perform the quick install routines. It setups up prosody, jitsi-videobridge, jitsi-meet, jocofo and nginx.

I noticed nginx config is setup to listen on ports 80/443 and forward traffic coming in either for requests on /http-bind to the prosody 5280 port.

The bridge is configured to run on port 5347 but it’s currently not exposed to the internet.

From what I understand the bridge also accepts incoming requests on udp ports 10000-20000 so I exposed those in addition to 80/443.

Now, when it comes to the TCP relaying functionality you speak of, if the bridge will include an ICE candidate with the public IP and port 443 that will hit the nginx server which would need to forward that traffic onto the bridge (on port 5347?), no? How would one go about configuring such thing in nginx (should that already be part of the configuration scripts once you install that via the debian recipe?)?

What Boris meant was that there is no way to get your media through
nginx. At least I am not aware of one.

What you need to do is either:

A) Use separate IP addresses so that both JVB and nginx would be able
to listen on 443 without fighting for it or
B) You get rid of nginx and use JVB as both a media and a web server.
JVB supports that.

We implemented support for option B in order to solve cases exactly like yours.

Emil

Thanks in advance,

Roberto

On 7/22/15, 7:47 AM, "dev on behalf of Boris Grozev" <dev-bounces@jitsi.org on behalf of boris@jitsi.org> wrote:

On 22/07/15 06:13, Roberto Andrade wrote:

Ok. So wouldn't the nginx server then need to be configured to somehow
forward relevant traffic to the bridge rather than serving it as a
regular http/s request?

You can either use a separate IP address for the bridge or use the newly
added HTTP/media demultiplexing in the bridge (essentially replace nginx
with videobridge).

Regards,
Boris

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

--
https://jitsi.org

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

--
https://jitsi.org

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev


#13

Ok, went ahead and tried this to no avail.

Imported the cert to jks:
keytool -import -trustcacerts -alias localhost -file /etc/prosody/certs/localhost.crt -keystore localhost.jks

JVB seems to be running and Jetty as well I can connect to port 443 but get an SSL handshake error either on the browser or via curl. From the logs the only thing I see that is suspicious is a WARNING (at the bottom of the log) regarding JDK8 (should I be running this on that version of Java? the default installed seems to have been 7):

The results of curl:

curl -vv https://localhost
* Rebuilt URL to: https://localhost/
* Hostname was NOT found in DNS cache
* Trying ::1...
* Connected to localhost (::1) port 443 (#0)
* successfully set certificate verify locations:
* CAfile: none
  CApath: /etc/ssl/certs
* SSLv3, TLS handshake, Client hello (1):
* Unknown SSL protocol error in connection to localhost:443
* Closing connection 0
curl: (35) Unknown SSL protocol error in connection to localhost:443

jvb.log:

2015-06-23 15:44:33.803 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.runtime.name=OpenJDK Runtime Environment
2015-06-23 15:44:33.803 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.videobridge.xmpp=true
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.boot.library.path=/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.version=24.79-b02
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.impl.neomedia.video.maxbandwidth=2147483647
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.vendor=Oracle Corporation
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vendor.url=http://java.oracle.com/
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.media.MAX_PORT_NUMBER=20000
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() path.separator=:
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.util.logging.config.file=/usr/share/jitsi-videobridge/lib/logging.properties
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.name=OpenJDK 64-Bit Server VM
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() file.encoding.pkg=sun.io
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.country=US
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.java.launcher=SUN_STANDARD
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.os.patch.level=unknown
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.media.DISABLE_AUDIO_SUPPORT=true
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.impl.neomedia.transform.csrc.SsrcTransformEngine.dropMutedAudioSourceInReverseTransform=true
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.specification.name=Java Virtual Machine Specification
2015-06-23 15:44:33.807 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.dir=/
2015-06-23 15:44:33.807 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.runtime.version=1.7.0_79-b14
2015-06-23 15:44:33.807 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.awt.graphicsenv=sun.awt.X11GraphicsEnvironment
2015-06-23 15:44:33.807 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.endorsed.dirs=/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/endorsed
2015-06-23 15:44:33.808 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() os.arch=amd64
2015-06-23 15:44:33.808 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.io.tmpdir=/tmp
2015-06-23 15:44:33.808 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() line.separator=

2015-06-23 15:44:33.809 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.specification.vendor=Oracle Corporation
2015-06-23 15:44:33.809 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() os.name=Linux
2015-06-23 15:44:33.809 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.protocol.MIN_MEDIA_PORT_NUMBER=10000
2015-06-23 15:44:33.809 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.jnu.encoding=ANSI_X3.4-1968
2015-06-23 15:44:33.810 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.CONFIGURATION_FILE_IS_READ_ONLY=true
2015-06-23 15:44:33.810 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.library.path=/usr/share/jitsi-videobridge/lib/native/linux-64
2015-06-23 15:44:33.810 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.videobridge.DISABLE_RETRANSMISSION_REQUESTS=true
2015-06-23 15:44:33.810 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.specification.name=Java Platform API Specification
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.class.version=51.0
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.service.audionotifier.AudioNotifierService=org.jitsi.impl.neomedia.notify.AudioNotifierServiceImpl
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.videobridge.rest=true
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.management.compiler=HotSpot 64-Bit Tiered Compilers
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() os.version=4.0.5-boot2docker
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.home=/usr/share/jitsi-videobridge
2015-06-23 15:44:33.812 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.timezone=Etc/UTC
2015-06-23 15:44:33.812 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.awt.printerjob=sun.print.PSPrinterJob
2015-06-23 15:44:33.812 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() file.encoding=ANSI_X3.4-1968
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.specification.version=1.7
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.media.DISABLE_VIDEO_SUPPORT=true
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.class.path=/usr/share/jitsi-videobridge/jitsi-videobridge.jar:/usr/share/jitsi-videobridge/lib/bccontrib.jar:/usr/share/jitsi-videobridge/lib/bcpkix-jdk15on-151.jar:/usr/share/jitsi-videobridge/lib/bouncycastle.jar:/usr/share/jitsi-videobridge/lib/concurrentlinkedhashmap-lru.jar:/usr/share/jitsi-videobridge/lib/configuration.jar:/usr/share/jitsi-videobridge/lib/dnsservice.jar:/usr/share/jitsi-videobridge/lib/dom4j.jar:/usr/share/jitsi-videobridge/lib/fileaccess.jar:/usr/share/jitsi-videobridge/lib/fmj.jar:/usr/share/jitsi-videobridge/lib/ice4j.jar:/usr/share/jitsi-videobridge/lib/jetty-client-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-http-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-io-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-proxy-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-rewrite-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-security-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-server-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-servlet-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-util-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jitsi-android-osgi.jar:/usr/share/jitsi-videobridge/lib/jitsi-lgpl-dependencies.jar:/usr/share/jitsi-videobridge/lib/jna.jar:/usr/share/jitsi-videobridge/lib/json.jar:/usr/share/jitsi-videobridge/lib/libidn.jar:/usr/share/jitsi-videobridge/lib/libjitsi.jar:/usr/share/jitsi-videobridge/lib/netaddr.jar:/usr/share/jitsi-videobridge/lib/osgi.core.jar:/usr/share/jitsi-videobridge/lib/packetlogging.jar:/usr/share/jitsi-videobridge/lib/protocol-jabber.jar:/usr/share/jitsi-videobridge/lib/protocol-media.jar:/usr/share/jitsi-videobridge/lib/protocol.jar:/usr/share/jitsi-videobridge/lib/resourcemanager.jar:/usr/share/jitsi-videobridge/lib/servlet-api-3.1.jar:/usr/share/jitsi-videobridge/lib/sigar.jar:/usr/share/jitsi-videobridge/lib/slf4j-api.jar:/usr/share/jitsi-videobridge/lib/slf4j-jdk14-1.7.7.jar:/usr/share/jitsi-videobridge/lib/smack.jar:/usr/share/jitsi-videobridge/lib/smackx.jar:/usr/share/jitsi-videobridge/lib/tinder.jar:/usr/share/jitsi-videobridge/lib/ui-service.jar:/usr/share/jitsi-videobridge/lib/util.jar:/usr/share/jitsi-videobridge/lib/weupnp-0.1.2-SNAPSHOT.jar:/usr/share/jitsi-videobridge/lib/whack.jar:/usr/share/jitsi-videobridge/lib/xpp3.jar:/usr/share/jitsi-videobridge/lib/zrtp4j.jar
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.name=jvb
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.service.neomedia.AudioMediaStream.DISABLE_DTMF_HANDLING=true
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.specification.version=1.7
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.ice4j.ice.harvest.DISABLE_LINK_LOCAL_ADDRESSES=true
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.java.command=org.jitsi.videobridge.Main --host=localhost --domain=localhost --port=5347 --secret=16x@##7h --apis=rest,xmpp
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.home=/usr/lib/jvm/java-7-openjdk-amd64/jre
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.arch.data.model=64
2015-06-23 15:44:33.815 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.language=en
2015-06-23 15:44:33.815 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.specification.vendor=Oracle Corporation
2015-06-23 15:44:33.815 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() awt.toolkit=sun.awt.X11.XToolkit
2015-06-23 15:44:33.815 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.info=mixed mode
2015-06-23 15:44:33.816 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.version=1.7.0_79
2015-06-23 15:44:33.816 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.ext.dirs=/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/ext:/usr/java/packages/lib/ext
2015-06-23 15:44:33.816 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.boot.class.path=/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/resources.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/rt.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/sunrsasign.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/jsse.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/jce.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/charsets.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/rhino.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/jfr.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/classes
2015-06-23 15:44:33.816 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.awt.headless=true
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vendor=Oracle Corporation
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() file.separator=/
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vendor.url.bug=http://bugreport.sun.com/bugreport/
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.io.unicode.encoding=UnicodeLittle
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.cpu.endian=little
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.impl.neomedia.transform.srtp.SRTPCryptoContext.checkReplay=false
2015-06-23 15:44:33.818 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.media.MIN_PORT_NUMBER=10000
2015-06-23 15:44:33.818 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.protocol.MAX_MEDIA_PORT_NUMBER=20000
2015-06-23 15:44:33.818 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.cpu.isalist=
2015-06-23 15:44:33.819 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() Normal classloader
2015-06-23 15:44:33.819 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() failed to find jitsi-defaults.properties with class loader, will continue without it.
2015-06-23 15:44:33.820 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() Normal classloader
2015-06-23 15:44:33.820 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() failed to find jitsi-default-overrides.properties with class loader, will continue without it.
2015-06-23 15:44:33.906 INFO: [9] impl.resources.ResourceManagementActivator.start().70 Resource manager STARTED
2015-06-23 15:44:33.907 INFO: [9] impl.resources.ResourceManagementActivator.start().79 Resource manager REGISTERED
2015-06-23 15:44:33.939 INFO: [9] impl.netaddr.NetworkAddressManagerServiceImpl.start().81 Network Address Manager ...[ STARTED ]
2015-06-23 15:44:33.940 INFO: [9] impl.netaddr.NetworkAddressManagerServiceImpl.start().87 Network Address Manager Service ...[REGISTERED]
2015-06-23 15:44:33.944 INFO: [9] impl.packetlogging.PacketLoggingActivator.start().89 Packet Logging Service ...[REGISTERED]
2015-06-23 15:44:33.956 INFO: [9] org.jitsi.videobridge.metrics.MetricLoggingHandler.info() Metric services enabled: 0
2015-06-23 15:44:34.109 INFO: [9] org.jitsi.videobridge.version.VersionActivator.start().76 Jitsi Videobridge Version: JVB 0.1.474
2015-06-23 15:44:34.166 INFO: [9] org.eclipse.jetty.util.log.initialized() Logging initialized @556ms
2015-06-23 15:44:34.265 INFO: [9] org.eclipse.jetty.server.Server.doStart() jetty-9.2.10.v20150310
2015-06-23 15:44:34.279 INFO: [9] org.eclipse.jetty.server.handler.ContextHandler.doStart() Started o.e.j.s.h.ContextHandler@53d8337b{/,null,AVAILABLE}
2015-06-23 15:44:34.285 INFO: [9] org.eclipse.jetty.server.handler.ContextHandler.doStart() Started o.e.j.s.ServletContextHandler@73cee4bb{/,null,AVAILABLE}
2015-06-23 15:44:34.288 WARNING: [9] org.ice4j.socket.MuxServerSocketChannelFactory.<clinit>() ICE4J does not support sharing of listening endpoints (probably because it is not running on JDK 8).
2015-06-23 15:44:34.524 INFO: [9] org.jitsi.videobridge.rest.MuxServerConnector.doStart() Started MuxServerConnector@2fcf1d75{SSL-http/1.1}{:::443}
2015-06-23 15:44:34.524 INFO: [9] org.eclipse.jetty.server.Server.doStart() Started @919ms
2015-06-23 15:44:34.530 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePassword=**********
2015-06-23 15:44:34.530 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ResourceHandler.alias./config.js=/etc/jitsi/meet/localhost-config.js
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ProxyServlet.pathSpec=/http-bind
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.tls.port=443
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.TCP_HARVESTER_PORT=443
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.RewriteHandler.replacement=/
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ResourceHandler.resourceBase=/usr/share/jitsi-meet
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.host=::
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.RewriteHandler.regex=^/([a-zA-Z0-9]+)$
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() net.java.sip.communicator.SC_HOME_DIR_LOCATION=/usr/share/jitsi-videobridge
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ProxyServlet.proxyTo=http://localhost:5280/http-bind
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.port=443
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ProxyServlet.hostHeader=localhost
2015-06-23 15:44:34.533 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() net.java.sip.communicator.SC_HOME_DIR_NAME=.sip-communicator
2015-06-23 15:44:34.533 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePath=/etc/jitsi/videobridge/localhost.jks

···

On 7/22/15, 10:50 AM, "dev on behalf of Damian Minkov" <dev-bounces@jitsi.org on behalf of damencho@jitsi.org> wrote:

Hi,

as Emil pointed we will add this as default to the meet installation
soon. All the code that serves it, is there, but to do this manually
is not a straight forward task.
You need to stop nginx and configure jitsi-videobridge to serve meet.

1. Add prosody certificates to java keystore
2. Configure authbind to allow jvb to use port 443
3. And configure jvb itself in
/usr/share/jitsi-videobridge/.sip-communicator/sip-communicator.properties
org.jitsi.videobridge.rest.jetty.host=::
org.jitsi.videobridge.rest.jetty.port=443
org.jitsi.videobridge.rest.jetty.ProxyServlet.hostHeader=example.meet.jit.si
org.jitsi.videobridge.rest.jetty.ProxyServlet.pathSpec=/http-bind
org.jitsi.videobridge.rest.jetty.ProxyServlet.proxyTo=http://localhost:5280/http-bind
org.jitsi.videobridge.rest.jetty.ResourceHandler.resourceBase=/usr/share/jitsi-meet
org.jitsi.videobridge.rest.jetty.ResourceHandler.alias./config.js=/etc/jitsi/meet/example.meet.jit.si-config.js
org.jitsi.videobridge.rest.jetty.RewriteHandler.regex=^/([a-zA-Z0-9]+)$
org.jitsi.videobridge.rest.jetty.RewriteHandler.replacement=/
org.jitsi.videobridge.rest.jetty.tls.port=443
org.jitsi.videobridge.TCP_HARVESTER_PORT=443
org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePath=/etc/jitsi/videobridge/example.meet.jit.si.jks
org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePassword=changeit
4. You need to start jvb with rest and xmpp interface running. Add the
following to jvb config in etc:
JVB_OPTS="--apis=rest,xmpp"
AUTHBIND=yes

Hope this helps

Regards
damencho

On Wed, Jul 22, 2015 at 9:14 AM, Roberto Andrade ><roberto.andrade@gmail.com> wrote:

Ok, glad to hear. So how do I go about fetching this latest default installation scripts to be able to have an environment with the Option B setup?

On 7/22/15, 10:05 AM, "dev on behalf of Emil Ivov" <dev-bounces@jitsi.org on behalf of emcho@jitsi.org> wrote:

On Wed, Jul 22, 2015 at 3:56 PM, Roberto Andrade >>><roberto.andrade@gmail.com> wrote:

Ok, makes sense. I had originally reported this as an issue on github because I felt like this was missing from either the instructions (quick or manual) or the default installation script.

The latest default installation scripts should end up putting you in
Option B which would solve your problem.

Given that the default install has node/nginx one the same box as the bridge, option B in this case wouldn’t be a viable one as you’d lose a way to serve the jitsi-meet web site, no? Or will JVB proxy traffic and route to the node app too? And do the same http-bind forwarding to prosody as well?

JVB now ships together with jetty which serves Meet and also allows
you to connect to prosody.

On option A I guess traditionally you’d keep both the frontend and the different backends on different servers so naturally would have a different IP to talk to avoiding the conflict.

Right.

Shouldn’t there be instructions on either the jitsi-meet or the jitsi-videobridge repos describing this capability and how to take advantage of it?

That's supposed to be the default in the debian package but we are not
there yet. We'll try to make this happen soon.

Emil

Roberto

On 7/22/15, 9:30 AM, "dev on behalf of Emil Ivov" <dev-bounces@jitsi.org on behalf of emcho@jitsi.org> wrote:

Hey Roberto,

On Wed, Jul 22, 2015 at 3:25 PM, Roberto Andrade >>>>><roberto.andrade@gmail.com> wrote:

Ok, let me try to get this straight.

I’m talking about the setup that gets configured when you perform the quick install routines. It setups up prosody, jitsi-videobridge, jitsi-meet, jocofo and nginx.

I noticed nginx config is setup to listen on ports 80/443 and forward traffic coming in either for requests on /http-bind to the prosody 5280 port.

The bridge is configured to run on port 5347 but it’s currently not exposed to the internet.

From what I understand the bridge also accepts incoming requests on udp ports 10000-20000 so I exposed those in addition to 80/443.

Now, when it comes to the TCP relaying functionality you speak of, if the bridge will include an ICE candidate with the public IP and port 443 that will hit the nginx server which would need to forward that traffic onto the bridge (on port 5347?), no? How would one go about configuring such thing in nginx (should that already be part of the configuration scripts once you install that via the debian recipe?)?

What Boris meant was that there is no way to get your media through
nginx. At least I am not aware of one.

What you need to do is either:

A) Use separate IP addresses so that both JVB and nginx would be able
to listen on 443 without fighting for it or
B) You get rid of nginx and use JVB as both a media and a web server.
JVB supports that.

We implemented support for option B in order to solve cases exactly like yours.

Emil

Thanks in advance,

Roberto

On 7/22/15, 7:47 AM, "dev on behalf of Boris Grozev" <dev-bounces@jitsi.org on behalf of boris@jitsi.org> wrote:

On 22/07/15 06:13, Roberto Andrade wrote:

Ok. So wouldn't the nginx server then need to be configured to somehow
forward relevant traffic to the bridge rather than serving it as a
regular http/s request?

You can either use a separate IP address for the bridge or use the newly
added HTTP/media demultiplexing in the bridge (essentially replace nginx
with videobridge).

Regards,
Boris

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

--
https://jitsi.org

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

--
https://jitsi.org

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev


#14

Hey one more thing, make sure you use java 8.

ICE4J does not support sharing of listening endpoints (probably because it is not running on JDK 8).

Regards
damencho

···

On Thu, Jul 23, 2015 at 10:58 AM, Roberto Andrade <roberto.andrade@gmail.com> wrote:

Ok, went ahead and tried this to no avail.

Imported the cert to jks:
keytool -import -trustcacerts -alias localhost -file /etc/prosody/certs/localhost.crt -keystore localhost.jks

JVB seems to be running and Jetty as well I can connect to port 443 but get an SSL handshake error either on the browser or via curl. From the logs the only thing I see that is suspicious is a WARNING (at the bottom of the log) regarding JDK8 (should I be running this on that version of Java? the default installed seems to have been 7):

The results of curl:

curl -vv https://localhost
* Rebuilt URL to: https://localhost/
* Hostname was NOT found in DNS cache
* Trying ::1...
* Connected to localhost (::1) port 443 (#0)
* successfully set certificate verify locations:
* CAfile: none
  CApath: /etc/ssl/certs
* SSLv3, TLS handshake, Client hello (1):
* Unknown SSL protocol error in connection to localhost:443
* Closing connection 0
curl: (35) Unknown SSL protocol error in connection to localhost:443

jvb.log:

2015-06-23 15:44:33.803 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.runtime.name=OpenJDK Runtime Environment
2015-06-23 15:44:33.803 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.videobridge.xmpp=true
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.boot.library.path=/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.version=24.79-b02
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.impl.neomedia.video.maxbandwidth=2147483647
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.vendor=Oracle Corporation
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vendor.url=http://java.oracle.com/
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.media.MAX_PORT_NUMBER=20000
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() path.separator=:
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.util.logging.config.file=/usr/share/jitsi-videobridge/lib/logging.properties
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.name=OpenJDK 64-Bit Server VM
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() file.encoding.pkg=sun.io
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.country=US
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.java.launcher=SUN_STANDARD
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.os.patch.level=unknown
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.media.DISABLE_AUDIO_SUPPORT=true
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.impl.neomedia.transform.csrc.SsrcTransformEngine.dropMutedAudioSourceInReverseTransform=true
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.specification.name=Java Virtual Machine Specification
2015-06-23 15:44:33.807 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.dir=/
2015-06-23 15:44:33.807 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.runtime.version=1.7.0_79-b14
2015-06-23 15:44:33.807 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.awt.graphicsenv=sun.awt.X11GraphicsEnvironment
2015-06-23 15:44:33.807 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.endorsed.dirs=/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/endorsed
2015-06-23 15:44:33.808 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() os.arch=amd64
2015-06-23 15:44:33.808 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.io.tmpdir=/tmp
2015-06-23 15:44:33.808 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() line.separator=

2015-06-23 15:44:33.809 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.specification.vendor=Oracle Corporation
2015-06-23 15:44:33.809 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() os.name=Linux
2015-06-23 15:44:33.809 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.protocol.MIN_MEDIA_PORT_NUMBER=10000
2015-06-23 15:44:33.809 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.jnu.encoding=ANSI_X3.4-1968
2015-06-23 15:44:33.810 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.CONFIGURATION_FILE_IS_READ_ONLY=true
2015-06-23 15:44:33.810 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.library.path=/usr/share/jitsi-videobridge/lib/native/linux-64
2015-06-23 15:44:33.810 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.videobridge.DISABLE_RETRANSMISSION_REQUESTS=true
2015-06-23 15:44:33.810 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.specification.name=Java Platform API Specification
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.class.version=51.0
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.service.audionotifier.AudioNotifierService=org.jitsi.impl.neomedia.notify.AudioNotifierServiceImpl
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.videobridge.rest=true
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.management.compiler=HotSpot 64-Bit Tiered Compilers
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() os.version=4.0.5-boot2docker
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.home=/usr/share/jitsi-videobridge
2015-06-23 15:44:33.812 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.timezone=Etc/UTC
2015-06-23 15:44:33.812 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.awt.printerjob=sun.print.PSPrinterJob
2015-06-23 15:44:33.812 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() file.encoding=ANSI_X3.4-1968
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.specification.version=1.7
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.media.DISABLE_VIDEO_SUPPORT=true
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.class.path=/usr/share/jitsi-videobridge/jitsi-videobridge.jar:/usr/share/jitsi-videobridge/lib/bccontrib.jar:/usr/share/jitsi-videobridge/lib/bcpkix-jdk15on-151.jar:/usr/share/jitsi-videobridge/lib/bouncycastle.jar:/usr/share/jitsi-videobridge/lib/concurrentlinkedhashmap-lru.jar:/usr/share/jitsi-videobridge/lib/configuration.jar:/usr/share/jitsi-videobridge/lib/dnsservice.jar:/usr/share/jitsi-videobridge/lib/dom4j.jar:/usr/share/jitsi-videobridge/lib/fileaccess.jar:/usr/share/jitsi-videobridge/lib/fmj.jar:/usr/share/jitsi-videobridge/lib/ice4j.jar:/usr/share/jitsi-videobridge/lib/jetty-client-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-http-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-io-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-proxy-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-rewrite-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-security-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-server-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-servlet-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-util-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jitsi-android-osgi.jar:/usr/share/jitsi-videobridge/lib/jitsi-lgpl-dependencies.jar:/usr/share/jitsi-videobridge/lib/jna.jar:/usr/share/jitsi-videobridge/lib/json.jar:/usr/share/jitsi-videobridge/lib/libidn.jar:/usr/share/jitsi-videobridge/lib/libjitsi.jar:/usr/share/jitsi-videobridge/lib/netaddr.jar:/usr/share/jitsi-videobridge/lib/osgi.core.jar:/usr/share/jitsi-videobridge/lib/packetlogging.jar:/usr/share/jitsi-videobridge/lib/protocol-jabber.jar:/usr/share/jitsi-videobridge/lib/protocol-media.jar:/usr/share/jitsi-videobridge/lib/protocol.jar:/usr/share/jitsi-videobridge/lib/resourcemanager.jar:/usr/share/jitsi-videobridge/lib/servlet-api-3.1.jar:/usr/share/jitsi-videobridge/lib/sigar.jar:/usr/share/jitsi-videobridge/lib/slf4j-api.jar:/usr/share/jitsi-videobridge/lib/slf4j-jdk14-1.7.7.jar:/usr/share/jitsi-videobridge/lib/smack.jar:/usr/share/jitsi-videobridge/lib/smackx.jar:/usr/share/jitsi-videobridge/lib/tinder.jar:/usr/share/jitsi-videobridge/lib/ui-service.jar:/usr/share/jitsi-videobridge/lib/util.jar:/usr/share/jitsi-videobridge/lib/weupnp-0.1.2-SNAPSHOT.jar:/usr/share/jitsi-videobridge/lib/whack.jar:/usr/share/jitsi-videobridge/lib/xpp3.jar:/usr/share/jitsi-videobridge/lib/zrtp4j.jar
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.name=jvb
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.service.neomedia.AudioMediaStream.DISABLE_DTMF_HANDLING=true
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.specification.version=1.7
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.ice4j.ice.harvest.DISABLE_LINK_LOCAL_ADDRESSES=true
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.java.command=org.jitsi.videobridge.Main --host=localhost --domain=localhost --port=5347 --secret=16x@##7h --apis=rest,xmpp
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.home=/usr/lib/jvm/java-7-openjdk-amd64/jre
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.arch.data.model=64
2015-06-23 15:44:33.815 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.language=en
2015-06-23 15:44:33.815 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.specification.vendor=Oracle Corporation
2015-06-23 15:44:33.815 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() awt.toolkit=sun.awt.X11.XToolkit
2015-06-23 15:44:33.815 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.info=mixed mode
2015-06-23 15:44:33.816 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.version=1.7.0_79
2015-06-23 15:44:33.816 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.ext.dirs=/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/ext:/usr/java/packages/lib/ext
2015-06-23 15:44:33.816 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.boot.class.path=/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/resources.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/rt.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/sunrsasign.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/jsse.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/jce.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/charsets.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/rhino.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/jfr.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/classes
2015-06-23 15:44:33.816 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.awt.headless=true
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vendor=Oracle Corporation
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() file.separator=/
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vendor.url.bug=http://bugreport.sun.com/bugreport/
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.io.unicode.encoding=UnicodeLittle
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.cpu.endian=little
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.impl.neomedia.transform.srtp.SRTPCryptoContext.checkReplay=false
2015-06-23 15:44:33.818 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.media.MIN_PORT_NUMBER=10000
2015-06-23 15:44:33.818 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.protocol.MAX_MEDIA_PORT_NUMBER=20000
2015-06-23 15:44:33.818 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.cpu.isalist=
2015-06-23 15:44:33.819 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() Normal classloader
2015-06-23 15:44:33.819 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() failed to find jitsi-defaults.properties with class loader, will continue without it.
2015-06-23 15:44:33.820 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() Normal classloader
2015-06-23 15:44:33.820 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() failed to find jitsi-default-overrides.properties with class loader, will continue without it.
2015-06-23 15:44:33.906 INFO: [9] impl.resources.ResourceManagementActivator.start().70 Resource manager STARTED
2015-06-23 15:44:33.907 INFO: [9] impl.resources.ResourceManagementActivator.start().79 Resource manager REGISTERED
2015-06-23 15:44:33.939 INFO: [9] impl.netaddr.NetworkAddressManagerServiceImpl.start().81 Network Address Manager ...[ STARTED ]
2015-06-23 15:44:33.940 INFO: [9] impl.netaddr.NetworkAddressManagerServiceImpl.start().87 Network Address Manager Service ...[REGISTERED]
2015-06-23 15:44:33.944 INFO: [9] impl.packetlogging.PacketLoggingActivator.start().89 Packet Logging Service ...[REGISTERED]
2015-06-23 15:44:33.956 INFO: [9] org.jitsi.videobridge.metrics.MetricLoggingHandler.info() Metric services enabled: 0
2015-06-23 15:44:34.109 INFO: [9] org.jitsi.videobridge.version.VersionActivator.start().76 Jitsi Videobridge Version: JVB 0.1.474
2015-06-23 15:44:34.166 INFO: [9] org.eclipse.jetty.util.log.initialized() Logging initialized @556ms
2015-06-23 15:44:34.265 INFO: [9] org.eclipse.jetty.server.Server.doStart() jetty-9.2.10.v20150310
2015-06-23 15:44:34.279 INFO: [9] org.eclipse.jetty.server.handler.ContextHandler.doStart() Started o.e.j.s.h.ContextHandler@53d8337b{/,null,AVAILABLE}
2015-06-23 15:44:34.285 INFO: [9] org.eclipse.jetty.server.handler.ContextHandler.doStart() Started o.e.j.s.ServletContextHandler@73cee4bb{/,null,AVAILABLE}
2015-06-23 15:44:34.288 WARNING: [9] org.ice4j.socket.MuxServerSocketChannelFactory.<clinit>() ICE4J does not support sharing of listening endpoints (probably because it is not running on JDK 8).
2015-06-23 15:44:34.524 INFO: [9] org.jitsi.videobridge.rest.MuxServerConnector.doStart() Started MuxServerConnector@2fcf1d75{SSL-http/1.1}{:::443}
2015-06-23 15:44:34.524 INFO: [9] org.eclipse.jetty.server.Server.doStart() Started @919ms
2015-06-23 15:44:34.530 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePassword=**********
2015-06-23 15:44:34.530 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ResourceHandler.alias./config.js=/etc/jitsi/meet/localhost-config.js
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ProxyServlet.pathSpec=/http-bind
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.tls.port=443
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.TCP_HARVESTER_PORT=443
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.RewriteHandler.replacement=/
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ResourceHandler.resourceBase=/usr/share/jitsi-meet
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.host=::
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.RewriteHandler.regex=^/([a-zA-Z0-9]+)$
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() net.java.sip.communicator.SC_HOME_DIR_LOCATION=/usr/share/jitsi-videobridge
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ProxyServlet.proxyTo=http://localhost:5280/http-bind
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.port=443
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ProxyServlet.hostHeader=localhost
2015-06-23 15:44:34.533 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() net.java.sip.communicator.SC_HOME_DIR_NAME=.sip-communicator
2015-06-23 15:44:34.533 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePath=/etc/jitsi/videobridge/localhost.jks

On 7/22/15, 10:50 AM, "dev on behalf of Damian Minkov" <dev-bounces@jitsi.org on behalf of damencho@jitsi.org> wrote:

Hi,

as Emil pointed we will add this as default to the meet installation
soon. All the code that serves it, is there, but to do this manually
is not a straight forward task.
You need to stop nginx and configure jitsi-videobridge to serve meet.

1. Add prosody certificates to java keystore
2. Configure authbind to allow jvb to use port 443
3. And configure jvb itself in
/usr/share/jitsi-videobridge/.sip-communicator/sip-communicator.properties
org.jitsi.videobridge.rest.jetty.host=::
org.jitsi.videobridge.rest.jetty.port=443
org.jitsi.videobridge.rest.jetty.ProxyServlet.hostHeader=example.meet.jit.si
org.jitsi.videobridge.rest.jetty.ProxyServlet.pathSpec=/http-bind
org.jitsi.videobridge.rest.jetty.ProxyServlet.proxyTo=http://localhost:5280/http-bind
org.jitsi.videobridge.rest.jetty.ResourceHandler.resourceBase=/usr/share/jitsi-meet
org.jitsi.videobridge.rest.jetty.ResourceHandler.alias./config.js=/etc/jitsi/meet/example.meet.jit.si-config.js
org.jitsi.videobridge.rest.jetty.RewriteHandler.regex=^/([a-zA-Z0-9]+)$
org.jitsi.videobridge.rest.jetty.RewriteHandler.replacement=/
org.jitsi.videobridge.rest.jetty.tls.port=443
org.jitsi.videobridge.TCP_HARVESTER_PORT=443
org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePath=/etc/jitsi/videobridge/example.meet.jit.si.jks
org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePassword=changeit
4. You need to start jvb with rest and xmpp interface running. Add the
following to jvb config in etc:
JVB_OPTS="--apis=rest,xmpp"
AUTHBIND=yes

Hope this helps

Regards
damencho

On Wed, Jul 22, 2015 at 9:14 AM, Roberto Andrade >><roberto.andrade@gmail.com> wrote:

Ok, glad to hear. So how do I go about fetching this latest default installation scripts to be able to have an environment with the Option B setup?

On 7/22/15, 10:05 AM, "dev on behalf of Emil Ivov" <dev-bounces@jitsi.org on behalf of emcho@jitsi.org> wrote:

On Wed, Jul 22, 2015 at 3:56 PM, Roberto Andrade >>>><roberto.andrade@gmail.com> wrote:

Ok, makes sense. I had originally reported this as an issue on github because I felt like this was missing from either the instructions (quick or manual) or the default installation script.

The latest default installation scripts should end up putting you in
Option B which would solve your problem.

Given that the default install has node/nginx one the same box as the bridge, option B in this case wouldn’t be a viable one as you’d lose a way to serve the jitsi-meet web site, no? Or will JVB proxy traffic and route to the node app too? And do the same http-bind forwarding to prosody as well?

JVB now ships together with jetty which serves Meet and also allows
you to connect to prosody.

On option A I guess traditionally you’d keep both the frontend and the different backends on different servers so naturally would have a different IP to talk to avoiding the conflict.

Right.

Shouldn’t there be instructions on either the jitsi-meet or the jitsi-videobridge repos describing this capability and how to take advantage of it?

That's supposed to be the default in the debian package but we are not
there yet. We'll try to make this happen soon.

Emil

Roberto

On 7/22/15, 9:30 AM, "dev on behalf of Emil Ivov" <dev-bounces@jitsi.org on behalf of emcho@jitsi.org> wrote:

Hey Roberto,

On Wed, Jul 22, 2015 at 3:25 PM, Roberto Andrade >>>>>><roberto.andrade@gmail.com> wrote:

Ok, let me try to get this straight.

I’m talking about the setup that gets configured when you perform the quick install routines. It setups up prosody, jitsi-videobridge, jitsi-meet, jocofo and nginx.

I noticed nginx config is setup to listen on ports 80/443 and forward traffic coming in either for requests on /http-bind to the prosody 5280 port.

The bridge is configured to run on port 5347 but it’s currently not exposed to the internet.

From what I understand the bridge also accepts incoming requests on udp ports 10000-20000 so I exposed those in addition to 80/443.

Now, when it comes to the TCP relaying functionality you speak of, if the bridge will include an ICE candidate with the public IP and port 443 that will hit the nginx server which would need to forward that traffic onto the bridge (on port 5347?), no? How would one go about configuring such thing in nginx (should that already be part of the configuration scripts once you install that via the debian recipe?)?

What Boris meant was that there is no way to get your media through
nginx. At least I am not aware of one.

What you need to do is either:

A) Use separate IP addresses so that both JVB and nginx would be able
to listen on 443 without fighting for it or
B) You get rid of nginx and use JVB as both a media and a web server.
JVB supports that.

We implemented support for option B in order to solve cases exactly like yours.

Emil

Thanks in advance,

Roberto

On 7/22/15, 7:47 AM, "dev on behalf of Boris Grozev" <dev-bounces@jitsi.org on behalf of boris@jitsi.org> wrote:

On 22/07/15 06:13, Roberto Andrade wrote:

Ok. So wouldn't the nginx server then need to be configured to somehow
forward relevant traffic to the bridge rather than serving it as a
regular http/s request?

You can either use a separate IP address for the bridge or use the newly
added HTTP/media demultiplexing in the bridge (essentially replace nginx
with videobridge).

Regards,
Boris

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

--
https://jitsi.org

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

--
https://jitsi.org

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev


#15

Tried JDK 8, nothing.

Get the same error connecting via SSL. I’m importing the self signed certificate that gets installed as part of the prosody setup, shouldn’t matter right?

···

On 7/23/15, 11:58 AM, "Roberto Andrade" <roberto.andrade@gmail.com> wrote:

Ok, went ahead and tried this to no avail.

Imported the cert to jks:
keytool -import -trustcacerts -alias localhost -file /etc/prosody/certs/localhost.crt -keystore localhost.jks

JVB seems to be running and Jetty as well I can connect to port 443 but get an SSL handshake error either on the browser or via curl. From the logs the only thing I see that is suspicious is a WARNING (at the bottom of the log) regarding JDK8 (should I be running this on that version of Java? the default installed seems to have been 7):

The results of curl:

curl -vv https://localhost
* Rebuilt URL to: https://localhost/
* Hostname was NOT found in DNS cache
* Trying ::1...
* Connected to localhost (::1) port 443 (#0)
* successfully set certificate verify locations:
* CAfile: none
CApath: /etc/ssl/certs
* SSLv3, TLS handshake, Client hello (1):
* Unknown SSL protocol error in connection to localhost:443
* Closing connection 0
curl: (35) Unknown SSL protocol error in connection to localhost:443

jvb.log:

2015-06-23 15:44:33.803 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.runtime.name=OpenJDK Runtime Environment
2015-06-23 15:44:33.803 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.videobridge.xmpp=true
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.boot.library.path=/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.version=24.79-b02
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.impl.neomedia.video.maxbandwidth=2147483647
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.vendor=Oracle Corporation
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vendor.url=http://java.oracle.com/
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.media.MAX_PORT_NUMBER=20000
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() path.separator=:
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.util.logging.config.file=/usr/share/jitsi-videobridge/lib/logging.properties
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.name=OpenJDK 64-Bit Server VM
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() file.encoding.pkg=sun.io
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.country=US
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.java.launcher=SUN_STANDARD
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.os.patch.level=unknown
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.media.DISABLE_AUDIO_SUPPORT=true
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.impl.neomedia.transform.csrc.SsrcTransformEngine.dropMutedAudioSourceInReverseTransform=true
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.specification.name=Java Virtual Machine Specification
2015-06-23 15:44:33.807 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.dir=/
2015-06-23 15:44:33.807 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.runtime.version=1.7.0_79-b14
2015-06-23 15:44:33.807 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.awt.graphicsenv=sun.awt.X11GraphicsEnvironment
2015-06-23 15:44:33.807 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.endorsed.dirs=/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/endorsed
2015-06-23 15:44:33.808 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() os.arch=amd64
2015-06-23 15:44:33.808 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.io.tmpdir=/tmp
2015-06-23 15:44:33.808 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() line.separator=

2015-06-23 15:44:33.809 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.specification.vendor=Oracle Corporation
2015-06-23 15:44:33.809 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() os.name=Linux
2015-06-23 15:44:33.809 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.protocol.MIN_MEDIA_PORT_NUMBER=10000
2015-06-23 15:44:33.809 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.jnu.encoding=ANSI_X3.4-1968
2015-06-23 15:44:33.810 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.CONFIGURATION_FILE_IS_READ_ONLY=true
2015-06-23 15:44:33.810 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.library.path=/usr/share/jitsi-videobridge/lib/native/linux-64
2015-06-23 15:44:33.810 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.videobridge.DISABLE_RETRANSMISSION_REQUESTS=true
2015-06-23 15:44:33.810 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.specification.name=Java Platform API Specification
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.class.version=51.0
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.service.audionotifier.AudioNotifierService=org.jitsi.impl.neomedia.notify.AudioNotifierServiceImpl
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.videobridge.rest=true
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.management.compiler=HotSpot 64-Bit Tiered Compilers
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() os.version=4.0.5-boot2docker
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.home=/usr/share/jitsi-videobridge
2015-06-23 15:44:33.812 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.timezone=Etc/UTC
2015-06-23 15:44:33.812 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.awt.printerjob=sun.print.PSPrinterJob
2015-06-23 15:44:33.812 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() file.encoding=ANSI_X3.4-1968
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.specification.version=1.7
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.media.DISABLE_VIDEO_SUPPORT=true
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.class.path=/usr/share/jitsi-videobridge/jitsi-videobridge.jar:/usr/share/jitsi-videobridge/lib/bccontrib.jar:/usr/share/jitsi-videobridge/lib/bcpkix-jdk15on-151.jar:/usr/share/jitsi-videobridge/lib/bouncycastle.jar:/usr/share/jitsi-videobridge/lib/concurrentlinkedhashmap-lru.jar:/usr/share/jitsi-videobridge/lib/configuration.jar:/usr/share/jitsi-videobridge/lib/dnsservice.jar:/usr/share/jitsi-videobridge/lib/dom4j.jar:/usr/share/jitsi-videobridge/lib/fileaccess.jar:/usr/share/jitsi-videobridge/lib/fmj.jar:/usr/share/jitsi-videobridge/lib/ice4j.jar:/usr/share/jitsi-videobridge/lib/jetty-client-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-http-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-io-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-proxy-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-rewrite-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-security-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-server-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-servlet-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-util-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jitsi-android-osgi.jar:/usr/share/jitsi-videobridge/lib/jitsi-lgpl-dependencies.jar:/usr/share/jitsi-videobridge/lib/jna.jar:/usr/share/jitsi-videobridge/lib/json.jar:/usr/share/jitsi-videobridge/lib/libidn.jar:/usr/share/jitsi-videobridge/lib/libjitsi.jar:/usr/share/jitsi-videobridge/lib/netaddr.jar:/usr/share/jitsi-videobridge/lib/osgi.core.jar:/usr/share/jitsi-videobridge/lib/packetlogging.jar:/usr/share/jitsi-videobridge/lib/protocol-jabber.jar:/usr/share/jitsi-videobridge/lib/protocol-media.jar:/usr/share/jitsi-videobridge/lib/protocol.jar:/usr/share/jitsi-videobridge/lib/resourcemanager.jar:/usr/share/jitsi-videobridge/lib/servlet-api-3.1.jar:/usr/share/jitsi-videobridge/lib/sigar.jar:/usr/share/jitsi-videobridge/lib/slf4j-api.jar:/usr/share/jitsi-videobridge/lib/slf4j-jdk14-1.7.7.jar:/usr/share/jitsi-videobridge/lib/smack.jar:/usr/share/jitsi-videobridge/lib/smackx.jar:/usr/share/jitsi-videobridge/lib/tinder.jar:/usr/share/jitsi-videobridge/lib/ui-service.jar:/usr/share/jitsi-videobridge/lib/util.jar:/usr/share/jitsi-videobridge/lib/weupnp-0.1.2-SNAPSHOT.jar:/usr/share/jitsi-videobridge/lib/whack.jar:/usr/share/jitsi-videobridge/lib/xpp3.jar:/usr/share/jitsi-videobridge/lib/zrtp4j.jar
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.name=jvb
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.service.neomedia.AudioMediaStream.DISABLE_DTMF_HANDLING=true
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.specification.version=1.7
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.ice4j.ice.harvest.DISABLE_LINK_LOCAL_ADDRESSES=true
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.java.command=org.jitsi.videobridge.Main --host=localhost --domain=localhost --port=5347 --secret=16x@##7h --apis=rest,xmpp
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.home=/usr/lib/jvm/java-7-openjdk-amd64/jre
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.arch.data.model=64
2015-06-23 15:44:33.815 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.language=en
2015-06-23 15:44:33.815 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.specification.vendor=Oracle Corporation
2015-06-23 15:44:33.815 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() awt.toolkit=sun.awt.X11.XToolkit
2015-06-23 15:44:33.815 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.info=mixed mode
2015-06-23 15:44:33.816 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.version=1.7.0_79
2015-06-23 15:44:33.816 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.ext.dirs=/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/ext:/usr/java/packages/lib/ext
2015-06-23 15:44:33.816 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.boot.class.path=/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/resources.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/rt.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/sunrsasign.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/jsse.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/jce.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/charsets.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/rhino.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/jfr.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/classes
2015-06-23 15:44:33.816 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.awt.headless=true
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vendor=Oracle Corporation
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() file.separator=/
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vendor.url.bug=http://bugreport.sun.com/bugreport/
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.io.unicode.encoding=UnicodeLittle
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.cpu.endian=little
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.impl.neomedia.transform.srtp.SRTPCryptoContext.checkReplay=false
2015-06-23 15:44:33.818 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.media.MIN_PORT_NUMBER=10000
2015-06-23 15:44:33.818 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.protocol.MAX_MEDIA_PORT_NUMBER=20000
2015-06-23 15:44:33.818 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.cpu.isalist=
2015-06-23 15:44:33.819 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() Normal classloader
2015-06-23 15:44:33.819 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() failed to find jitsi-defaults.properties with class loader, will continue without it.
2015-06-23 15:44:33.820 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() Normal classloader
2015-06-23 15:44:33.820 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() failed to find jitsi-default-overrides.properties with class loader, will continue without it.
2015-06-23 15:44:33.906 INFO: [9] impl.resources.ResourceManagementActivator.start().70 Resource manager STARTED
2015-06-23 15:44:33.907 INFO: [9] impl.resources.ResourceManagementActivator.start().79 Resource manager REGISTERED
2015-06-23 15:44:33.939 INFO: [9] impl.netaddr.NetworkAddressManagerServiceImpl.start().81 Network Address Manager ...[ STARTED ]
2015-06-23 15:44:33.940 INFO: [9] impl.netaddr.NetworkAddressManagerServiceImpl.start().87 Network Address Manager Service ...[REGISTERED]
2015-06-23 15:44:33.944 INFO: [9] impl.packetlogging.PacketLoggingActivator.start().89 Packet Logging Service ...[REGISTERED]
2015-06-23 15:44:33.956 INFO: [9] org.jitsi.videobridge.metrics.MetricLoggingHandler.info() Metric services enabled: 0
2015-06-23 15:44:34.109 INFO: [9] org.jitsi.videobridge.version.VersionActivator.start().76 Jitsi Videobridge Version: JVB 0.1.474
2015-06-23 15:44:34.166 INFO: [9] org.eclipse.jetty.util.log.initialized() Logging initialized @556ms
2015-06-23 15:44:34.265 INFO: [9] org.eclipse.jetty.server.Server.doStart() jetty-9.2.10.v20150310
2015-06-23 15:44:34.279 INFO: [9] org.eclipse.jetty.server.handler.ContextHandler.doStart() Started o.e.j.s.h.ContextHandler@53d8337b{/,null,AVAILABLE}
2015-06-23 15:44:34.285 INFO: [9] org.eclipse.jetty.server.handler.ContextHandler.doStart() Started o.e.j.s.ServletContextHandler@73cee4bb{/,null,AVAILABLE}
2015-06-23 15:44:34.288 WARNING: [9] org.ice4j.socket.MuxServerSocketChannelFactory.<clinit>() ICE4J does not support sharing of listening endpoints (probably because it is not running on JDK 8).
2015-06-23 15:44:34.524 INFO: [9] org.jitsi.videobridge.rest.MuxServerConnector.doStart() Started MuxServerConnector@2fcf1d75{SSL-http/1.1}{:::443}
2015-06-23 15:44:34.524 INFO: [9] org.eclipse.jetty.server.Server.doStart() Started @919ms
2015-06-23 15:44:34.530 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePassword=**********
2015-06-23 15:44:34.530 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ResourceHandler.alias./config.js=/etc/jitsi/meet/localhost-config.js
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ProxyServlet.pathSpec=/http-bind
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.tls.port=443
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.TCP_HARVESTER_PORT=443
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.RewriteHandler.replacement=/
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ResourceHandler.resourceBase=/usr/share/jitsi-meet
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.host=::
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.RewriteHandler.regex=^/([a-zA-Z0-9]+)$
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() net.java.sip.communicator.SC_HOME_DIR_LOCATION=/usr/share/jitsi-videobridge
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ProxyServlet.proxyTo=http://localhost:5280/http-bind
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.port=443
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ProxyServlet.hostHeader=localhost
2015-06-23 15:44:34.533 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() net.java.sip.communicator.SC_HOME_DIR_NAME=.sip-communicator
2015-06-23 15:44:34.533 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePath=/etc/jitsi/videobridge/localhost.jks

On 7/22/15, 10:50 AM, "dev on behalf of Damian Minkov" <dev-bounces@jitsi.org on behalf of damencho@jitsi.org> wrote:

Hi,

as Emil pointed we will add this as default to the meet installation
soon. All the code that serves it, is there, but to do this manually
is not a straight forward task.
You need to stop nginx and configure jitsi-videobridge to serve meet.

1. Add prosody certificates to java keystore
2. Configure authbind to allow jvb to use port 443
3. And configure jvb itself in
/usr/share/jitsi-videobridge/.sip-communicator/sip-communicator.properties
org.jitsi.videobridge.rest.jetty.host=::
org.jitsi.videobridge.rest.jetty.port=443
org.jitsi.videobridge.rest.jetty.ProxyServlet.hostHeader=example.meet.jit.si
org.jitsi.videobridge.rest.jetty.ProxyServlet.pathSpec=/http-bind
org.jitsi.videobridge.rest.jetty.ProxyServlet.proxyTo=http://localhost:5280/http-bind
org.jitsi.videobridge.rest.jetty.ResourceHandler.resourceBase=/usr/share/jitsi-meet
org.jitsi.videobridge.rest.jetty.ResourceHandler.alias./config.js=/etc/jitsi/meet/example.meet.jit.si-config.js
org.jitsi.videobridge.rest.jetty.RewriteHandler.regex=^/([a-zA-Z0-9]+)$
org.jitsi.videobridge.rest.jetty.RewriteHandler.replacement=/
org.jitsi.videobridge.rest.jetty.tls.port=443
org.jitsi.videobridge.TCP_HARVESTER_PORT=443
org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePath=/etc/jitsi/videobridge/example.meet.jit.si.jks
org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePassword=changeit
4. You need to start jvb with rest and xmpp interface running. Add the
following to jvb config in etc:
JVB_OPTS="--apis=rest,xmpp"
AUTHBIND=yes

Hope this helps

Regards
damencho

On Wed, Jul 22, 2015 at 9:14 AM, Roberto Andrade >><roberto.andrade@gmail.com> wrote:

Ok, glad to hear. So how do I go about fetching this latest default installation scripts to be able to have an environment with the Option B setup?

On 7/22/15, 10:05 AM, "dev on behalf of Emil Ivov" <dev-bounces@jitsi.org on behalf of emcho@jitsi.org> wrote:

On Wed, Jul 22, 2015 at 3:56 PM, Roberto Andrade >>>><roberto.andrade@gmail.com> wrote:

Ok, makes sense. I had originally reported this as an issue on github because I felt like this was missing from either the instructions (quick or manual) or the default installation script.

The latest default installation scripts should end up putting you in
Option B which would solve your problem.

Given that the default install has node/nginx one the same box as the bridge, option B in this case wouldn’t be a viable one as you’d lose a way to serve the jitsi-meet web site, no? Or will JVB proxy traffic and route to the node app too? And do the same http-bind forwarding to prosody as well?

JVB now ships together with jetty which serves Meet and also allows
you to connect to prosody.

On option A I guess traditionally you’d keep both the frontend and the different backends on different servers so naturally would have a different IP to talk to avoiding the conflict.

Right.

Shouldn’t there be instructions on either the jitsi-meet or the jitsi-videobridge repos describing this capability and how to take advantage of it?

That's supposed to be the default in the debian package but we are not
there yet. We'll try to make this happen soon.

Emil

Roberto

On 7/22/15, 9:30 AM, "dev on behalf of Emil Ivov" <dev-bounces@jitsi.org on behalf of emcho@jitsi.org> wrote:

Hey Roberto,

On Wed, Jul 22, 2015 at 3:25 PM, Roberto Andrade >>>>>><roberto.andrade@gmail.com> wrote:

Ok, let me try to get this straight.

I’m talking about the setup that gets configured when you perform the quick install routines. It setups up prosody, jitsi-videobridge, jitsi-meet, jocofo and nginx.

I noticed nginx config is setup to listen on ports 80/443 and forward traffic coming in either for requests on /http-bind to the prosody 5280 port.

The bridge is configured to run on port 5347 but it’s currently not exposed to the internet.

From what I understand the bridge also accepts incoming requests on udp ports 10000-20000 so I exposed those in addition to 80/443.

Now, when it comes to the TCP relaying functionality you speak of, if the bridge will include an ICE candidate with the public IP and port 443 that will hit the nginx server which would need to forward that traffic onto the bridge (on port 5347?), no? How would one go about configuring such thing in nginx (should that already be part of the configuration scripts once you install that via the debian recipe?)?

What Boris meant was that there is no way to get your media through
nginx. At least I am not aware of one.

What you need to do is either:

A) Use separate IP addresses so that both JVB and nginx would be able
to listen on 443 without fighting for it or
B) You get rid of nginx and use JVB as both a media and a web server.
JVB supports that.

We implemented support for option B in order to solve cases exactly like yours.

Emil

Thanks in advance,

Roberto

On 7/22/15, 7:47 AM, "dev on behalf of Boris Grozev" <dev-bounces@jitsi.org on behalf of boris@jitsi.org> wrote:

On 22/07/15 06:13, Roberto Andrade wrote:

Ok. So wouldn't the nginx server then need to be configured to somehow
forward relevant traffic to the bridge rather than serving it as a
regular http/s request?

You can either use a separate IP address for the bridge or use the newly
added HTTP/media demultiplexing in the bridge (essentially replace nginx
with videobridge).

Regards,
Boris

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

--
https://jitsi.org

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

--
https://jitsi.org

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev


#16

Had to export both public/private keys onto a p12 key store and then convert that into a jks for it to work:

cd /etc/jitsi/videobridge
openssl pkcs12 -export -in /etc/prosody/certs/localhost.crt -inkey /etc/prosody/certs/localhost.key -password pass:changeit > localhost.p12
keytool -importkeystore -srckeystore localhost.p12 -destkeystore localhost.jks -srcstoretype pkcs12 -srcstorepass changeit -deststorepass changeit

···

On 7/23/15, 8:43 PM, "Roberto Andrade" <roberto.andrade@gmail.com> wrote:

Tried JDK 8, nothing.

Get the same error connecting via SSL. I’m importing the self signed certificate that gets installed as part of the prosody setup, shouldn’t matter right?

On 7/23/15, 11:58 AM, "Roberto Andrade" <roberto.andrade@gmail.com> wrote:

Ok, went ahead and tried this to no avail.

Imported the cert to jks:
keytool -import -trustcacerts -alias localhost -file /etc/prosody/certs/localhost.crt -keystore localhost.jks

JVB seems to be running and Jetty as well I can connect to port 443 but get an SSL handshake error either on the browser or via curl. From the logs the only thing I see that is suspicious is a WARNING (at the bottom of the log) regarding JDK8 (should I be running this on that version of Java? the default installed seems to have been 7):

The results of curl:

curl -vv https://localhost
* Rebuilt URL to: https://localhost/
* Hostname was NOT found in DNS cache
* Trying ::1...
* Connected to localhost (::1) port 443 (#0)
* successfully set certificate verify locations:
* CAfile: none
CApath: /etc/ssl/certs
* SSLv3, TLS handshake, Client hello (1):
* Unknown SSL protocol error in connection to localhost:443
* Closing connection 0
curl: (35) Unknown SSL protocol error in connection to localhost:443

jvb.log:

2015-06-23 15:44:33.803 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.runtime.name=OpenJDK Runtime Environment
2015-06-23 15:44:33.803 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.videobridge.xmpp=true
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.boot.library.path=/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.version=24.79-b02
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.impl.neomedia.video.maxbandwidth=2147483647
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.vendor=Oracle Corporation
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vendor.url=http://java.oracle.com/
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.media.MAX_PORT_NUMBER=20000
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() path.separator=:
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.util.logging.config.file=/usr/share/jitsi-videobridge/lib/logging.properties
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.name=OpenJDK 64-Bit Server VM
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() file.encoding.pkg=sun.io
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.country=US
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.java.launcher=SUN_STANDARD
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.os.patch.level=unknown
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.media.DISABLE_AUDIO_SUPPORT=true
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.impl.neomedia.transform.csrc.SsrcTransformEngine.dropMutedAudioSourceInReverseTransform=true
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.specification.name=Java Virtual Machine Specification
2015-06-23 15:44:33.807 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.dir=/
2015-06-23 15:44:33.807 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.runtime.version=1.7.0_79-b14
2015-06-23 15:44:33.807 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.awt.graphicsenv=sun.awt.X11GraphicsEnvironment
2015-06-23 15:44:33.807 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.endorsed.dirs=/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/endorsed
2015-06-23 15:44:33.808 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() os.arch=amd64
2015-06-23 15:44:33.808 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.io.tmpdir=/tmp
2015-06-23 15:44:33.808 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() line.separator=

2015-06-23 15:44:33.809 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.specification.vendor=Oracle Corporation
2015-06-23 15:44:33.809 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() os.name=Linux
2015-06-23 15:44:33.809 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.protocol.MIN_MEDIA_PORT_NUMBER=10000
2015-06-23 15:44:33.809 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.jnu.encoding=ANSI_X3.4-1968
2015-06-23 15:44:33.810 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.CONFIGURATION_FILE_IS_READ_ONLY=true
2015-06-23 15:44:33.810 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.library.path=/usr/share/jitsi-videobridge/lib/native/linux-64
2015-06-23 15:44:33.810 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.videobridge.DISABLE_RETRANSMISSION_REQUESTS=true
2015-06-23 15:44:33.810 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.specification.name=Java Platform API Specification
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.class.version=51.0
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.service.audionotifier.AudioNotifierService=org.jitsi.impl.neomedia.notify.AudioNotifierServiceImpl
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.videobridge.rest=true
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.management.compiler=HotSpot 64-Bit Tiered Compilers
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() os.version=4.0.5-boot2docker
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.home=/usr/share/jitsi-videobridge
2015-06-23 15:44:33.812 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.timezone=Etc/UTC
2015-06-23 15:44:33.812 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.awt.printerjob=sun.print.PSPrinterJob
2015-06-23 15:44:33.812 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() file.encoding=ANSI_X3.4-1968
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.specification.version=1.7
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.media.DISABLE_VIDEO_SUPPORT=true
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.class.path=/usr/share/jitsi-videobridge/jitsi-videobridge.jar:/usr/share/jitsi-videobridge/lib/bccontrib.jar:/usr/share/jitsi-videobridge/lib/bcpkix-jdk15on-151.jar:/usr/share/jitsi-videobridge/lib/bouncycastle.jar:/usr/share/jitsi-videobridge/lib/concurrentlinkedhashmap-lru.jar:/usr/share/jitsi-videobridge/lib/configuration.jar:/usr/share/jitsi-videobridge/lib/dnsservice.jar:/usr/share/jitsi-videobridge/lib/dom4j.jar:/usr/share/jitsi-videobridge/lib/fileaccess.jar:/usr/share/jitsi-videobridge/lib/fmj.jar:/usr/share/jitsi-videobridge/lib/ice4j.jar:/usr/share/jitsi-videobridge/lib/jetty-client-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-http-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-io-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-proxy-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-rewrite-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-security-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-server-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-servlet-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-util-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jitsi-android-osgi.jar:/usr/share/jitsi-videobridge/lib/jitsi-lgpl-dependencies.jar:/usr/share/jitsi-videobridge/lib/jna.jar:/usr/share/jitsi-videobridge/lib/json.jar:/usr/share/jitsi-videobridge/lib/libidn.jar:/usr/share/jitsi-videobridge/lib/libjitsi.jar:/usr/share/jitsi-videobridge/lib/netaddr.jar:/usr/share/jitsi-videobridge/lib/osgi.core.jar:/usr/share/jitsi-videobridge/lib/packetlogging.jar:/usr/share/jitsi-videobridge/lib/protocol-jabber.jar:/usr/share/jitsi-videobridge/lib/protocol-media.jar:/usr/share/jitsi-videobridge/lib/protocol.jar:/usr/share/jitsi-videobridge/lib/resourcemanager.jar:/usr/share/jitsi-videobridge/lib/servlet-api-3.1.jar:/usr/share/jitsi-videobridge/lib/sigar.jar:/usr/share/jitsi-videobridge/lib/slf4j-api.jar:/usr/share/jitsi-videobridge/lib/slf4j-jdk14-1.7.7.jar:/usr/share/jitsi-videobridge/lib/smack.jar:/usr/share/jitsi-videobridge/lib/smackx.jar:/usr/share/jitsi-videobridge/lib/tinder.jar:/usr/share/jitsi-videobridge/lib/ui-service.jar:/usr/share/jitsi-videobridge/lib/util.jar:/usr/share/jitsi-videobridge/lib/weupnp-0.1.2-SNAPSHOT.jar:/usr/share/jitsi-videobridge/lib/whack.jar:/usr/share/jitsi-videobridge/lib/xpp3.jar:/usr/share/jitsi-videobridge/lib/zrtp4j.jar
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.name=jvb
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.service.neomedia.AudioMediaStream.DISABLE_DTMF_HANDLING=true
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.specification.version=1.7
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.ice4j.ice.harvest.DISABLE_LINK_LOCAL_ADDRESSES=true
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.java.command=org.jitsi.videobridge.Main --host=localhost --domain=localhost --port=5347 --secret=16x@##7h --apis=rest,xmpp
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.home=/usr/lib/jvm/java-7-openjdk-amd64/jre
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.arch.data.model=64
2015-06-23 15:44:33.815 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.language=en
2015-06-23 15:44:33.815 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.specification.vendor=Oracle Corporation
2015-06-23 15:44:33.815 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() awt.toolkit=sun.awt.X11.XToolkit
2015-06-23 15:44:33.815 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.info=mixed mode
2015-06-23 15:44:33.816 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.version=1.7.0_79
2015-06-23 15:44:33.816 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.ext.dirs=/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/ext:/usr/java/packages/lib/ext
2015-06-23 15:44:33.816 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.boot.class.path=/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/resources.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/rt.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/sunrsasign.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/jsse.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/jce.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/charsets.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/rhino.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/jfr.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/classes
2015-06-23 15:44:33.816 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.awt.headless=true
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vendor=Oracle Corporation
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() file.separator=/
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vendor.url.bug=http://bugreport.sun.com/bugreport/
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.io.unicode.encoding=UnicodeLittle
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.cpu.endian=little
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.impl.neomedia.transform.srtp.SRTPCryptoContext.checkReplay=false
2015-06-23 15:44:33.818 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.media.MIN_PORT_NUMBER=10000
2015-06-23 15:44:33.818 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.protocol.MAX_MEDIA_PORT_NUMBER=20000
2015-06-23 15:44:33.818 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.cpu.isalist=
2015-06-23 15:44:33.819 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() Normal classloader
2015-06-23 15:44:33.819 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() failed to find jitsi-defaults.properties with class loader, will continue without it.
2015-06-23 15:44:33.820 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() Normal classloader
2015-06-23 15:44:33.820 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() failed to find jitsi-default-overrides.properties with class loader, will continue without it.
2015-06-23 15:44:33.906 INFO: [9] impl.resources.ResourceManagementActivator.start().70 Resource manager STARTED
2015-06-23 15:44:33.907 INFO: [9] impl.resources.ResourceManagementActivator.start().79 Resource manager REGISTERED
2015-06-23 15:44:33.939 INFO: [9] impl.netaddr.NetworkAddressManagerServiceImpl.start().81 Network Address Manager ...[ STARTED ]
2015-06-23 15:44:33.940 INFO: [9] impl.netaddr.NetworkAddressManagerServiceImpl.start().87 Network Address Manager Service ...[REGISTERED]
2015-06-23 15:44:33.944 INFO: [9] impl.packetlogging.PacketLoggingActivator.start().89 Packet Logging Service ...[REGISTERED]
2015-06-23 15:44:33.956 INFO: [9] org.jitsi.videobridge.metrics.MetricLoggingHandler.info() Metric services enabled: 0
2015-06-23 15:44:34.109 INFO: [9] org.jitsi.videobridge.version.VersionActivator.start().76 Jitsi Videobridge Version: JVB 0.1.474
2015-06-23 15:44:34.166 INFO: [9] org.eclipse.jetty.util.log.initialized() Logging initialized @556ms
2015-06-23 15:44:34.265 INFO: [9] org.eclipse.jetty.server.Server.doStart() jetty-9.2.10.v20150310
2015-06-23 15:44:34.279 INFO: [9] org.eclipse.jetty.server.handler.ContextHandler.doStart() Started o.e.j.s.h.ContextHandler@53d8337b{/,null,AVAILABLE}
2015-06-23 15:44:34.285 INFO: [9] org.eclipse.jetty.server.handler.ContextHandler.doStart() Started o.e.j.s.ServletContextHandler@73cee4bb{/,null,AVAILABLE}
2015-06-23 15:44:34.288 WARNING: [9] org.ice4j.socket.MuxServerSocketChannelFactory.<clinit>() ICE4J does not support sharing of listening endpoints (probably because it is not running on JDK 8).
2015-06-23 15:44:34.524 INFO: [9] org.jitsi.videobridge.rest.MuxServerConnector.doStart() Started MuxServerConnector@2fcf1d75{SSL-http/1.1}{:::443}
2015-06-23 15:44:34.524 INFO: [9] org.eclipse.jetty.server.Server.doStart() Started @919ms
2015-06-23 15:44:34.530 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePassword=**********
2015-06-23 15:44:34.530 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ResourceHandler.alias./config.js=/etc/jitsi/meet/localhost-config.js
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ProxyServlet.pathSpec=/http-bind
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.tls.port=443
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.TCP_HARVESTER_PORT=443
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.RewriteHandler.replacement=/
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ResourceHandler.resourceBase=/usr/share/jitsi-meet
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.host=::
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.RewriteHandler.regex=^/([a-zA-Z0-9]+)$
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() net.java.sip.communicator.SC_HOME_DIR_LOCATION=/usr/share/jitsi-videobridge
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ProxyServlet.proxyTo=http://localhost:5280/http-bind
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.port=443
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ProxyServlet.hostHeader=localhost
2015-06-23 15:44:34.533 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() net.java.sip.communicator.SC_HOME_DIR_NAME=.sip-communicator
2015-06-23 15:44:34.533 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePath=/etc/jitsi/videobridge/localhost.jks

On 7/22/15, 10:50 AM, "dev on behalf of Damian Minkov" <dev-bounces@jitsi.org on behalf of damencho@jitsi.org> wrote:

Hi,

as Emil pointed we will add this as default to the meet installation
soon. All the code that serves it, is there, but to do this manually
is not a straight forward task.
You need to stop nginx and configure jitsi-videobridge to serve meet.

1. Add prosody certificates to java keystore
2. Configure authbind to allow jvb to use port 443
3. And configure jvb itself in
/usr/share/jitsi-videobridge/.sip-communicator/sip-communicator.properties
org.jitsi.videobridge.rest.jetty.host=::
org.jitsi.videobridge.rest.jetty.port=443
org.jitsi.videobridge.rest.jetty.ProxyServlet.hostHeader=example.meet.jit.si
org.jitsi.videobridge.rest.jetty.ProxyServlet.pathSpec=/http-bind
org.jitsi.videobridge.rest.jetty.ProxyServlet.proxyTo=http://localhost:5280/http-bind
org.jitsi.videobridge.rest.jetty.ResourceHandler.resourceBase=/usr/share/jitsi-meet
org.jitsi.videobridge.rest.jetty.ResourceHandler.alias./config.js=/etc/jitsi/meet/example.meet.jit.si-config.js
org.jitsi.videobridge.rest.jetty.RewriteHandler.regex=^/([a-zA-Z0-9]+)$
org.jitsi.videobridge.rest.jetty.RewriteHandler.replacement=/
org.jitsi.videobridge.rest.jetty.tls.port=443
org.jitsi.videobridge.TCP_HARVESTER_PORT=443
org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePath=/etc/jitsi/videobridge/example.meet.jit.si.jks
org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePassword=changeit
4. You need to start jvb with rest and xmpp interface running. Add the
following to jvb config in etc:
JVB_OPTS="--apis=rest,xmpp"
AUTHBIND=yes

Hope this helps

Regards
damencho

On Wed, Jul 22, 2015 at 9:14 AM, Roberto Andrade >>><roberto.andrade@gmail.com> wrote:

Ok, glad to hear. So how do I go about fetching this latest default installation scripts to be able to have an environment with the Option B setup?

On 7/22/15, 10:05 AM, "dev on behalf of Emil Ivov" <dev-bounces@jitsi.org on behalf of emcho@jitsi.org> wrote:

On Wed, Jul 22, 2015 at 3:56 PM, Roberto Andrade >>>>><roberto.andrade@gmail.com> wrote:

Ok, makes sense. I had originally reported this as an issue on github because I felt like this was missing from either the instructions (quick or manual) or the default installation script.

The latest default installation scripts should end up putting you in
Option B which would solve your problem.

Given that the default install has node/nginx one the same box as the bridge, option B in this case wouldn’t be a viable one as you’d lose a way to serve the jitsi-meet web site, no? Or will JVB proxy traffic and route to the node app too? And do the same http-bind forwarding to prosody as well?

JVB now ships together with jetty which serves Meet and also allows
you to connect to prosody.

On option A I guess traditionally you’d keep both the frontend and the different backends on different servers so naturally would have a different IP to talk to avoiding the conflict.

Right.

Shouldn’t there be instructions on either the jitsi-meet or the jitsi-videobridge repos describing this capability and how to take advantage of it?

That's supposed to be the default in the debian package but we are not
there yet. We'll try to make this happen soon.

Emil

Roberto

On 7/22/15, 9:30 AM, "dev on behalf of Emil Ivov" <dev-bounces@jitsi.org on behalf of emcho@jitsi.org> wrote:

Hey Roberto,

On Wed, Jul 22, 2015 at 3:25 PM, Roberto Andrade >>>>>>><roberto.andrade@gmail.com> wrote:

Ok, let me try to get this straight.

I’m talking about the setup that gets configured when you perform the quick install routines. It setups up prosody, jitsi-videobridge, jitsi-meet, jocofo and nginx.

I noticed nginx config is setup to listen on ports 80/443 and forward traffic coming in either for requests on /http-bind to the prosody 5280 port.

The bridge is configured to run on port 5347 but it’s currently not exposed to the internet.

From what I understand the bridge also accepts incoming requests on udp ports 10000-20000 so I exposed those in addition to 80/443.

Now, when it comes to the TCP relaying functionality you speak of, if the bridge will include an ICE candidate with the public IP and port 443 that will hit the nginx server which would need to forward that traffic onto the bridge (on port 5347?), no? How would one go about configuring such thing in nginx (should that already be part of the configuration scripts once you install that via the debian recipe?)?

What Boris meant was that there is no way to get your media through
nginx. At least I am not aware of one.

What you need to do is either:

A) Use separate IP addresses so that both JVB and nginx would be able
to listen on 443 without fighting for it or
B) You get rid of nginx and use JVB as both a media and a web server.
JVB supports that.

We implemented support for option B in order to solve cases exactly like yours.

Emil

Thanks in advance,

Roberto

On 7/22/15, 7:47 AM, "dev on behalf of Boris Grozev" <dev-bounces@jitsi.org on behalf of boris@jitsi.org> wrote:

On 22/07/15 06:13, Roberto Andrade wrote:

Ok. So wouldn't the nginx server then need to be configured to somehow
forward relevant traffic to the bridge rather than serving it as a
regular http/s request?

You can either use a separate IP address for the bridge or use the newly
added HTTP/media demultiplexing in the bridge (essentially replace nginx
with videobridge).

Regards,
Boris

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

--
https://jitsi.org

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

--
https://jitsi.org

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev


#17

With the suggested config I’m getting a port conflict between jetty and the harvester as both are trying to listen on port 443?

2015-06-24 09:09:59.974 INFO: [11] impl.netaddr.NetworkAddressManagerServiceImpl.start().81 Network Address Manager ...[ STARTED ]
2015-06-24 09:09:59.975 INFO: [11] impl.netaddr.NetworkAddressManagerServiceImpl.start().87 Network Address Manager Service ...[REGISTERED]
2015-06-24 09:09:59.978 INFO: [11] impl.packetlogging.PacketLoggingActivator.start().89 Packet Logging Service ...[REGISTERED]
2015-06-24 09:09:59.988 INFO: [11] org.jitsi.videobridge.metrics.MetricLoggingHandler.info() Metric services enabled: 0
2015-06-24 09:10:00.085 INFO: [11] org.jitsi.videobridge.version.VersionActivator.start().76 Jitsi Videobridge Version: JVB 0.1.478
2015-06-24 09:10:00.116 INFO: [11] org.eclipse.jetty.util.log.initialized() Logging initialized @443ms
2015-06-24 09:10:00.185 INFO: [11] org.eclipse.jetty.server.Server.doStart() jetty-9.2.10.v20150310
2015-06-24 09:10:00.198 INFO: [11] org.eclipse.jetty.server.handler.ContextHandler.doStart() Started o.e.j.s.h.ContextHandler@b1f2850{/,null,AVAILABLE}
2015-06-24 09:10:00.202 INFO: [11] org.eclipse.jetty.server.handler.ContextHandler.doStart() Started o.e.j.s.ServletContextHandler@2a8af07a{/,null,AVAILABLE}
2015-06-24 09:10:00.341 INFO: [11] org.jitsi.videobridge.rest.MuxServerConnector.doStart() Started MuxServerConnector@1b68a97c{SSL-http/1.1}{:::443}
2015-06-24 09:10:00.341 INFO: [11] org.eclipse.jetty.server.Server.doStart() Started @671ms
2015-06-24 09:10:00.346 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ProxyServlet.hostHeader=localhost
2015-06-24 09:10:00.347 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.TCP_HARVESTER_PORT=443
2015-06-24 09:10:00.347 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.RewriteHandler.regex=^/([a-zA-Z0-9]+)$
2015-06-24 09:10:00.347 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ResourceHandler.resourceBase=/usr/share/jitsi-meet
2015-06-24 09:10:00.347 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePath=/etc/jitsi/videobridge/localhost.jks
2015-06-24 09:10:00.347 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ProxyServlet.pathSpec=/http-bind
2015-06-24 09:10:00.347 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.NAT_HARVESTER_LOCAL_ADDRESS=172.17.1.128
2015-06-24 09:10:00.348 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePassword=**********
2015-06-24 09:10:00.348 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.RewriteHandler.replacement=/
2015-06-24 09:10:00.348 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.port=443
2015-06-24 09:10:00.348 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.NAT_HARVESTER_PUBLIC_ADDRESS=192.168.59.103
2015-06-24 09:10:00.348 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.tls.port=443
2015-06-24 09:10:00.355 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() net.java.sip.communicator.SC_HOME_DIR_LOCATION=/usr/share/jitsi-videobridge
2015-06-24 09:10:00.355 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.host=::
2015-06-24 09:10:00.355 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.impl.neomedia.transform.srtp.SRTPCryptoContext.checkReplay=false
2015-06-24 09:10:00.355 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ProxyServlet.proxyTo=http://localhost:5280/http-bind
2015-06-24 09:10:00.355 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ResourceHandler.alias./config.js=/etc/jitsi/meet/localhost-config.js
2015-06-24 09:10:00.355 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() net.java.sip.communicator.SC_HOME_DIR_NAME=.sip-communicator
2015-06-24 09:10:00.364 INFO: [1] java.util.prefs.run() Created user preferences directory.
2015-06-24 09:10:20.882 INFO: [50] org.jitsi.videobridge.xmpp.ComponentImpl.info() RECV: <iq type=“get” to=“jitsi-videobridge.localhost” from=“focus@auth.localhost/focus206914580784414” id=“MWIQP-15”><con
ference xmlns=“http://jitsi.org/protocol/colibri”><content name=“audio”><channel channel-bundle-id=“3e832d00” initiator=“true” last-n="-1" endpoint=“3e832d00”><payload-type name=“opus” clockrate=“48000” i
d=“111” channels=“2”><parameter value=“10” name=“minptime”/></payload-type><payload-type id=“103” name=“ISAC” clockrate=“16000”/><payload-type id=“104” name=“ISAC” clockrate=“32000”/><payload-type id=“0”
name=“PCMU” clockrate=“8000”/><payload-type id=“8” name=“PCMA” clockrate=“8000”/><payload-type id=“106” name=“CN” clockrate=“32000”/><payload-type id=“105” name=“CN” clockrate=“16000”/><payload-type id=“1
3” name=“CN” clockrate=“8000”/><payload-type id=“126” name=“telephone-event” clockrate=“8000”/><rtp-hdrext id=“1” uri=“urn:ietf:params:rtp-hdrext:ssrc-audio-level”/></channel></content><content name=“vide
o”><channel channel-bundle-id=“3e832d00” initiator=“true” last-n="-1" endpoint=“3e832d00”><payload-type id=“100” name=“VP8” clockrate=“90000”><rtcp-fb xmlns=“urn:xmpp:jingle:apps:rtp:rtcp-fb:0” type=“ccm”
subtype=“fir”/><rtcp-fb xmlns=“urn:xmpp:jingle:apps:rtp:rtcp-fb:0” type=“nack”/><rtcp-fb xmlns=“urn:xmpp:jingle:apps:rtp:rtcp-fb:0” type=“nack” subtype=“pli”/><rtcp-fb xmlns=“urn:xmpp:jingle:apps:rtp:rtc
p-fb:0” type=“goog-remb”/></payload-type><payload-type id=“116” name=“red” clockrate=“90000”/><payload-type id=“117” name=“ulpfec” clockrate=“90000”/><rtp-hdrext id=“2” uri=“urn:ietf:params:rtp-hdrext:tof
fset”/><rtp-hdrext id=“3” uri=“http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time”/></channel></content><content name=“data”><sctpconnection channel-bundle-id=“3e832d00” port=“5000” initiator=“tru
e” endpoint=“3e832d00”/></content><channel-bundle id=“3e832d00”><transport xmlns=“urn:xmpp:jingle:transports:ice-udp:1”><fingerprint xmlns=“urn:xmpp:jingle:apps:dtls:0” required=“false”/></transport></cha
nnel-bundle></conference></iq>
2015-06-24 09:10:20.909 INFO: [50] org.jitsi.videobridge.Videobridge.info() Created conference c8efd725d5adca13. The total number of conferences is now 1, channels 0, video streams 0.
2015-06-24 09:10:20.923 INFO: [50] org.jitsi.videobridge.Conference.info() Created content audio of conference c8efd725d5adca13. The total number of conferences is now 1, channels 0, video streams 0.
2015-06-24 09:10:21.171 INFO: [50] org.ice4j.ice.harvest.MultiplexingTcpHostHarvester.addLocalAddresses() Not using link-local address /fe80:0:0:0:42:acff:fe11:181%eth0 for TCP candidates.
2015-06-24 09:10:21.177 WARNING: [50] org.jitsi.videobridge.IceUdpTransportManager.warn() Failed to initialize TCP harvester on port 443: java.net.BindException: Address already in use.

···

On 7/24/15, 5:03 AM, "Roberto Andrade" <roberto.andrade@gmail.com> wrote:

Had to export both public/private keys onto a p12 key store and then convert that into a jks for it to work:

cd /etc/jitsi/videobridge
openssl pkcs12 -export -in /etc/prosody/certs/localhost.crt -inkey /etc/prosody/certs/localhost.key -password pass:changeit > localhost.p12
keytool -importkeystore -srckeystore localhost.p12 -destkeystore localhost.jks -srcstoretype pkcs12 -srcstorepass changeit -deststorepass changeit

On 7/23/15, 8:43 PM, "Roberto Andrade" <roberto.andrade@gmail.com> wrote:

Tried JDK 8, nothing.

Get the same error connecting via SSL. I’m importing the self signed certificate that gets installed as part of the prosody setup, shouldn’t matter right?

On 7/23/15, 11:58 AM, "Roberto Andrade" <roberto.andrade@gmail.com> wrote:

Ok, went ahead and tried this to no avail.

Imported the cert to jks:
keytool -import -trustcacerts -alias localhost -file /etc/prosody/certs/localhost.crt -keystore localhost.jks

JVB seems to be running and Jetty as well I can connect to port 443 but get an SSL handshake error either on the browser or via curl. From the logs the only thing I see that is suspicious is a WARNING (at the bottom of the log) regarding JDK8 (should I be running this on that version of Java? the default installed seems to have been 7):

The results of curl:

curl -vv https://localhost
* Rebuilt URL to: https://localhost/
* Hostname was NOT found in DNS cache
* Trying ::1...
* Connected to localhost (::1) port 443 (#0)
* successfully set certificate verify locations:
* CAfile: none
CApath: /etc/ssl/certs
* SSLv3, TLS handshake, Client hello (1):
* Unknown SSL protocol error in connection to localhost:443
* Closing connection 0
curl: (35) Unknown SSL protocol error in connection to localhost:443

jvb.log:

2015-06-23 15:44:33.803 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.runtime.name=OpenJDK Runtime Environment
2015-06-23 15:44:33.803 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.videobridge.xmpp=true
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.boot.library.path=/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.version=24.79-b02
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.impl.neomedia.video.maxbandwidth=2147483647
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.vendor=Oracle Corporation
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vendor.url=http://java.oracle.com/
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.media.MAX_PORT_NUMBER=20000
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() path.separator=:
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.util.logging.config.file=/usr/share/jitsi-videobridge/lib/logging.properties
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.name=OpenJDK 64-Bit Server VM
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() file.encoding.pkg=sun.io
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.country=US
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.java.launcher=SUN_STANDARD
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.os.patch.level=unknown
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.media.DISABLE_AUDIO_SUPPORT=true
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.impl.neomedia.transform.csrc.SsrcTransformEngine.dropMutedAudioSourceInReverseTransform=true
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.specification.name=Java Virtual Machine Specification
2015-06-23 15:44:33.807 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.dir=/
2015-06-23 15:44:33.807 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.runtime.version=1.7.0_79-b14
2015-06-23 15:44:33.807 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.awt.graphicsenv=sun.awt.X11GraphicsEnvironment
2015-06-23 15:44:33.807 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.endorsed.dirs=/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/endorsed
2015-06-23 15:44:33.808 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() os.arch=amd64
2015-06-23 15:44:33.808 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.io.tmpdir=/tmp
2015-06-23 15:44:33.808 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() line.separator=

2015-06-23 15:44:33.809 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.specification.vendor=Oracle Corporation
2015-06-23 15:44:33.809 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() os.name=Linux
2015-06-23 15:44:33.809 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.protocol.MIN_MEDIA_PORT_NUMBER=10000
2015-06-23 15:44:33.809 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.jnu.encoding=ANSI_X3.4-1968
2015-06-23 15:44:33.810 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.CONFIGURATION_FILE_IS_READ_ONLY=true
2015-06-23 15:44:33.810 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.library.path=/usr/share/jitsi-videobridge/lib/native/linux-64
2015-06-23 15:44:33.810 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.videobridge.DISABLE_RETRANSMISSION_REQUESTS=true
2015-06-23 15:44:33.810 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.specification.name=Java Platform API Specification
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.class.version=51.0
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.service.audionotifier.AudioNotifierService=org.jitsi.impl.neomedia.notify.AudioNotifierServiceImpl
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.videobridge.rest=true
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.management.compiler=HotSpot 64-Bit Tiered Compilers
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() os.version=4.0.5-boot2docker
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.home=/usr/share/jitsi-videobridge
2015-06-23 15:44:33.812 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.timezone=Etc/UTC
2015-06-23 15:44:33.812 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.awt.printerjob=sun.print.PSPrinterJob
2015-06-23 15:44:33.812 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() file.encoding=ANSI_X3.4-1968
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.specification.version=1.7
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.media.DISABLE_VIDEO_SUPPORT=true
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.class.path=/usr/share/jitsi-videobridge/jitsi-videobridge.jar:/usr/share/jitsi-videobridge/lib/bccontrib.jar:/usr/share/jitsi-videobridge/lib/bcpkix-jdk15on-151.jar:/usr/share/jitsi-videobridge/lib/bouncycastle.jar:/usr/share/jitsi-videobridge/lib/concurrentlinkedhashmap-lru.jar:/usr/share/jitsi-videobridge/lib/configuration.jar:/usr/share/jitsi-videobridge/lib/dnsservice.jar:/usr/share/jitsi-videobridge/lib/dom4j.jar:/usr/share/jitsi-videobridge/lib/fileaccess.jar:/usr/share/jitsi-videobridge/lib/fmj.jar:/usr/share/jitsi-videobridge/lib/ice4j.jar:/usr/share/jitsi-videobridge/lib/jetty-client-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-http-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-io-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-proxy-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-rewrite-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-security-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-server-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-servlet-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-util-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jitsi-android-osgi.jar:/usr/share/jitsi-videobridge/lib/jitsi-lgpl-dependencies.jar:/usr/share/jitsi-videobridge/lib/jna.jar:/usr/share/jitsi-videobridge/lib/json.jar:/usr/share/jitsi-videobridge/lib/libidn.jar:/usr/share/jitsi-videobridge/lib/libjitsi.jar:/usr/share/jitsi-videobridge/lib/netaddr.jar:/usr/share/jitsi-videobridge/lib/osgi.core.jar:/usr/share/jitsi-videobridge/lib/packetlogging.jar:/usr/share/jitsi-videobridge/lib/protocol-jabber.jar:/usr/share/jitsi-videobridge/lib/protocol-media.jar:/usr/share/jitsi-videobridge/lib/protocol.jar:/usr/share/jitsi-videobridge/lib/resourcemanager.jar:/usr/share/jitsi-videobridge/lib/servlet-api-3.1.jar:/usr/share/jitsi-videobridge/lib/sigar.jar:/usr/share/jitsi-videobridge/lib/slf4j-api.jar:/usr/share/jitsi-videobridge/lib/slf4j-jdk14-1.7.7.jar:/usr/share/jitsi-videobridge/lib/smack.jar:/usr/share/jitsi-videobridge/lib/smackx.jar:/usr/share/jitsi-videobridge/lib/tinder.jar:/usr/share/jitsi-videobridge/lib/ui-service.jar:/usr/share/jitsi-videobridge/lib/util.jar:/usr/share/jitsi-videobridge/lib/weupnp-0.1.2-SNAPSHOT.jar:/usr/share/jitsi-videobridge/lib/whack.jar:/usr/share/jitsi-videobridge/lib/xpp3.jar:/usr/share/jitsi-videobridge/lib/zrtp4j.jar
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.name=jvb
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.service.neomedia.AudioMediaStream.DISABLE_DTMF_HANDLING=true
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.specification.version=1.7
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.ice4j.ice.harvest.DISABLE_LINK_LOCAL_ADDRESSES=true
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.java.command=org.jitsi.videobridge.Main --host=localhost --domain=localhost --port=5347 --secret=16x@##7h --apis=rest,xmpp
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.home=/usr/lib/jvm/java-7-openjdk-amd64/jre
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.arch.data.model=64
2015-06-23 15:44:33.815 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.language=en
2015-06-23 15:44:33.815 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.specification.vendor=Oracle Corporation
2015-06-23 15:44:33.815 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() awt.toolkit=sun.awt.X11.XToolkit
2015-06-23 15:44:33.815 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.info=mixed mode
2015-06-23 15:44:33.816 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.version=1.7.0_79
2015-06-23 15:44:33.816 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.ext.dirs=/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/ext:/usr/java/packages/lib/ext
2015-06-23 15:44:33.816 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.boot.class.path=/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/resources.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/rt.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/sunrsasign.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/jsse.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/jce.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/charsets.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/rhino.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/jfr.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/classes
2015-06-23 15:44:33.816 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.awt.headless=true
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vendor=Oracle Corporation
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() file.separator=/
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vendor.url.bug=http://bugreport.sun.com/bugreport/
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.io.unicode.encoding=UnicodeLittle
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.cpu.endian=little
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.impl.neomedia.transform.srtp.SRTPCryptoContext.checkReplay=false
2015-06-23 15:44:33.818 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.media.MIN_PORT_NUMBER=10000
2015-06-23 15:44:33.818 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.protocol.MAX_MEDIA_PORT_NUMBER=20000
2015-06-23 15:44:33.818 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.cpu.isalist=
2015-06-23 15:44:33.819 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() Normal classloader
2015-06-23 15:44:33.819 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() failed to find jitsi-defaults.properties with class loader, will continue without it.
2015-06-23 15:44:33.820 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() Normal classloader
2015-06-23 15:44:33.820 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() failed to find jitsi-default-overrides.properties with class loader, will continue without it.
2015-06-23 15:44:33.906 INFO: [9] impl.resources.ResourceManagementActivator.start().70 Resource manager STARTED
2015-06-23 15:44:33.907 INFO: [9] impl.resources.ResourceManagementActivator.start().79 Resource manager REGISTERED
2015-06-23 15:44:33.939 INFO: [9] impl.netaddr.NetworkAddressManagerServiceImpl.start().81 Network Address Manager ...[ STARTED ]
2015-06-23 15:44:33.940 INFO: [9] impl.netaddr.NetworkAddressManagerServiceImpl.start().87 Network Address Manager Service ...[REGISTERED]
2015-06-23 15:44:33.944 INFO: [9] impl.packetlogging.PacketLoggingActivator.start().89 Packet Logging Service ...[REGISTERED]
2015-06-23 15:44:33.956 INFO: [9] org.jitsi.videobridge.metrics.MetricLoggingHandler.info() Metric services enabled: 0
2015-06-23 15:44:34.109 INFO: [9] org.jitsi.videobridge.version.VersionActivator.start().76 Jitsi Videobridge Version: JVB 0.1.474
2015-06-23 15:44:34.166 INFO: [9] org.eclipse.jetty.util.log.initialized() Logging initialized @556ms
2015-06-23 15:44:34.265 INFO: [9] org.eclipse.jetty.server.Server.doStart() jetty-9.2.10.v20150310
2015-06-23 15:44:34.279 INFO: [9] org.eclipse.jetty.server.handler.ContextHandler.doStart() Started o.e.j.s.h.ContextHandler@53d8337b{/,null,AVAILABLE}
2015-06-23 15:44:34.285 INFO: [9] org.eclipse.jetty.server.handler.ContextHandler.doStart() Started o.e.j.s.ServletContextHandler@73cee4bb{/,null,AVAILABLE}
2015-06-23 15:44:34.288 WARNING: [9] org.ice4j.socket.MuxServerSocketChannelFactory.<clinit>() ICE4J does not support sharing of listening endpoints (probably because it is not running on JDK 8).
2015-06-23 15:44:34.524 INFO: [9] org.jitsi.videobridge.rest.MuxServerConnector.doStart() Started MuxServerConnector@2fcf1d75{SSL-http/1.1}{:::443}
2015-06-23 15:44:34.524 INFO: [9] org.eclipse.jetty.server.Server.doStart() Started @919ms
2015-06-23 15:44:34.530 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePassword=**********
2015-06-23 15:44:34.530 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ResourceHandler.alias./config.js=/etc/jitsi/meet/localhost-config.js
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ProxyServlet.pathSpec=/http-bind
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.tls.port=443
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.TCP_HARVESTER_PORT=443
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.RewriteHandler.replacement=/
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ResourceHandler.resourceBase=/usr/share/jitsi-meet
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.host=::
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.RewriteHandler.regex=^/([a-zA-Z0-9]+)$
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() net.java.sip.communicator.SC_HOME_DIR_LOCATION=/usr/share/jitsi-videobridge
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ProxyServlet.proxyTo=http://localhost:5280/http-bind
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.port=443
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ProxyServlet.hostHeader=localhost
2015-06-23 15:44:34.533 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() net.java.sip.communicator.SC_HOME_DIR_NAME=.sip-communicator
2015-06-23 15:44:34.533 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePath=/etc/jitsi/videobridge/localhost.jks

On 7/22/15, 10:50 AM, "dev on behalf of Damian Minkov" <dev-bounces@jitsi.org on behalf of damencho@jitsi.org> wrote:

Hi,

as Emil pointed we will add this as default to the meet installation
soon. All the code that serves it, is there, but to do this manually
is not a straight forward task.
You need to stop nginx and configure jitsi-videobridge to serve meet.

1. Add prosody certificates to java keystore
2. Configure authbind to allow jvb to use port 443
3. And configure jvb itself in
/usr/share/jitsi-videobridge/.sip-communicator/sip-communicator.properties
org.jitsi.videobridge.rest.jetty.host=::
org.jitsi.videobridge.rest.jetty.port=443
org.jitsi.videobridge.rest.jetty.ProxyServlet.hostHeader=example.meet.jit.si
org.jitsi.videobridge.rest.jetty.ProxyServlet.pathSpec=/http-bind
org.jitsi.videobridge.rest.jetty.ProxyServlet.proxyTo=http://localhost:5280/http-bind
org.jitsi.videobridge.rest.jetty.ResourceHandler.resourceBase=/usr/share/jitsi-meet
org.jitsi.videobridge.rest.jetty.ResourceHandler.alias./config.js=/etc/jitsi/meet/example.meet.jit.si-config.js
org.jitsi.videobridge.rest.jetty.RewriteHandler.regex=^/([a-zA-Z0-9]+)$
org.jitsi.videobridge.rest.jetty.RewriteHandler.replacement=/
org.jitsi.videobridge.rest.jetty.tls.port=443
org.jitsi.videobridge.TCP_HARVESTER_PORT=443
org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePath=/etc/jitsi/videobridge/example.meet.jit.si.jks
org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePassword=changeit
4. You need to start jvb with rest and xmpp interface running. Add the
following to jvb config in etc:
JVB_OPTS="--apis=rest,xmpp"
AUTHBIND=yes

Hope this helps

Regards
damencho

On Wed, Jul 22, 2015 at 9:14 AM, Roberto Andrade >>>><roberto.andrade@gmail.com> wrote:

Ok, glad to hear. So how do I go about fetching this latest default installation scripts to be able to have an environment with the Option B setup?

On 7/22/15, 10:05 AM, "dev on behalf of Emil Ivov" <dev-bounces@jitsi.org on behalf of emcho@jitsi.org> wrote:

On Wed, Jul 22, 2015 at 3:56 PM, Roberto Andrade >>>>>><roberto.andrade@gmail.com> wrote:

Ok, makes sense. I had originally reported this as an issue on github because I felt like this was missing from either the instructions (quick or manual) or the default installation script.

The latest default installation scripts should end up putting you in
Option B which would solve your problem.

Given that the default install has node/nginx one the same box as the bridge, option B in this case wouldn’t be a viable one as you’d lose a way to serve the jitsi-meet web site, no? Or will JVB proxy traffic and route to the node app too? And do the same http-bind forwarding to prosody as well?

JVB now ships together with jetty which serves Meet and also allows
you to connect to prosody.

On option A I guess traditionally you’d keep both the frontend and the different backends on different servers so naturally would have a different IP to talk to avoiding the conflict.

Right.

Shouldn’t there be instructions on either the jitsi-meet or the jitsi-videobridge repos describing this capability and how to take advantage of it?

That's supposed to be the default in the debian package but we are not
there yet. We'll try to make this happen soon.

Emil

Roberto

On 7/22/15, 9:30 AM, "dev on behalf of Emil Ivov" <dev-bounces@jitsi.org on behalf of emcho@jitsi.org> wrote:

Hey Roberto,

On Wed, Jul 22, 2015 at 3:25 PM, Roberto Andrade >>>>>>>><roberto.andrade@gmail.com> wrote:

Ok, let me try to get this straight.

I’m talking about the setup that gets configured when you perform the quick install routines. It setups up prosody, jitsi-videobridge, jitsi-meet, jocofo and nginx.

I noticed nginx config is setup to listen on ports 80/443 and forward traffic coming in either for requests on /http-bind to the prosody 5280 port.

The bridge is configured to run on port 5347 but it’s currently not exposed to the internet.

From what I understand the bridge also accepts incoming requests on udp ports 10000-20000 so I exposed those in addition to 80/443.

Now, when it comes to the TCP relaying functionality you speak of, if the bridge will include an ICE candidate with the public IP and port 443 that will hit the nginx server which would need to forward that traffic onto the bridge (on port 5347?), no? How would one go about configuring such thing in nginx (should that already be part of the configuration scripts once you install that via the debian recipe?)?

What Boris meant was that there is no way to get your media through
nginx. At least I am not aware of one.

What you need to do is either:

A) Use separate IP addresses so that both JVB and nginx would be able
to listen on 443 without fighting for it or
B) You get rid of nginx and use JVB as both a media and a web server.
JVB supports that.

We implemented support for option B in order to solve cases exactly like yours.

Emil

Thanks in advance,

Roberto

On 7/22/15, 7:47 AM, "dev on behalf of Boris Grozev" <dev-bounces@jitsi.org on behalf of boris@jitsi.org> wrote:

On 22/07/15 06:13, Roberto Andrade wrote:

Ok. So wouldn't the nginx server then need to be configured to somehow
forward relevant traffic to the bridge rather than serving it as a
regular http/s request?

You can either use a separate IP address for the bridge or use the newly
added HTTP/media demultiplexing in the bridge (essentially replace nginx
with videobridge).

Regards,
Boris

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

--
https://jitsi.org

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

--
https://jitsi.org

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev


#18

Is there something I need to do (i.e.: change either jetty or the harvester ports and make one forward to the other?) to make it work?

···

On 7/24/15, 5:21 AM, "Roberto Andrade" <roberto.andrade@gmail.com> wrote:

With the suggested config I’m getting a port conflict between jetty and the harvester as both are trying to listen on port 443?

2015-06-24 09:09:59.974 INFO: [11] impl.netaddr.NetworkAddressManagerServiceImpl.start().81 Network Address Manager ...[ STARTED ]
2015-06-24 09:09:59.975 INFO: [11] impl.netaddr.NetworkAddressManagerServiceImpl.start().87 Network Address Manager Service ...[REGISTERED]
2015-06-24 09:09:59.978 INFO: [11] impl.packetlogging.PacketLoggingActivator.start().89 Packet Logging Service ...[REGISTERED]
2015-06-24 09:09:59.988 INFO: [11] org.jitsi.videobridge.metrics.MetricLoggingHandler.info() Metric services enabled: 0
2015-06-24 09:10:00.085 INFO: [11] org.jitsi.videobridge.version.VersionActivator.start().76 Jitsi Videobridge Version: JVB 0.1.478
2015-06-24 09:10:00.116 INFO: [11] org.eclipse.jetty.util.log.initialized() Logging initialized @443ms
2015-06-24 09:10:00.185 INFO: [11] org.eclipse.jetty.server.Server.doStart() jetty-9.2.10.v20150310
2015-06-24 09:10:00.198 INFO: [11] org.eclipse.jetty.server.handler.ContextHandler.doStart() Started o.e.j.s.h.ContextHandler@b1f2850{/,null,AVAILABLE}
2015-06-24 09:10:00.202 INFO: [11] org.eclipse.jetty.server.handler.ContextHandler.doStart() Started o.e.j.s.ServletContextHandler@2a8af07a{/,null,AVAILABLE}
2015-06-24 09:10:00.341 INFO: [11] org.jitsi.videobridge.rest.MuxServerConnector.doStart() Started MuxServerConnector@1b68a97c{SSL-http/1.1}{:::443}
2015-06-24 09:10:00.341 INFO: [11] org.eclipse.jetty.server.Server.doStart() Started @671ms
2015-06-24 09:10:00.346 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ProxyServlet.hostHeader=localhost
2015-06-24 09:10:00.347 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.TCP_HARVESTER_PORT=443
2015-06-24 09:10:00.347 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.RewriteHandler.regex=^/([a-zA-Z0-9]+)$
2015-06-24 09:10:00.347 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ResourceHandler.resourceBase=/usr/share/jitsi-meet
2015-06-24 09:10:00.347 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePath=/etc/jitsi/videobridge/localhost.jks
2015-06-24 09:10:00.347 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ProxyServlet.pathSpec=/http-bind
2015-06-24 09:10:00.347 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.NAT_HARVESTER_LOCAL_ADDRESS=172.17.1.128
2015-06-24 09:10:00.348 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePassword=**********
2015-06-24 09:10:00.348 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.RewriteHandler.replacement=/
2015-06-24 09:10:00.348 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.port=443
2015-06-24 09:10:00.348 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.NAT_HARVESTER_PUBLIC_ADDRESS=192.168.59.103
2015-06-24 09:10:00.348 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.tls.port=443
2015-06-24 09:10:00.355 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() net.java.sip.communicator.SC_HOME_DIR_LOCATION=/usr/share/jitsi-videobridge
2015-06-24 09:10:00.355 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.host=::
2015-06-24 09:10:00.355 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.impl.neomedia.transform.srtp.SRTPCryptoContext.checkReplay=false
2015-06-24 09:10:00.355 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ProxyServlet.proxyTo=http://localhost:5280/http-bind
2015-06-24 09:10:00.355 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ResourceHandler.alias./config.js=/etc/jitsi/meet/localhost-config.js
2015-06-24 09:10:00.355 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() net.java.sip.communicator.SC_HOME_DIR_NAME=.sip-communicator
2015-06-24 09:10:00.364 INFO: [1] java.util.prefs.run() Created user preferences directory.
2015-06-24 09:10:20.882 INFO: [50] org.jitsi.videobridge.xmpp.ComponentImpl.info() RECV: <iq type=“get” to=“jitsi-videobridge.localhost” from=“focus@auth.localhost/focus206914580784414” id=“MWIQP-15”><con
ference xmlns=“http://jitsi.org/protocol/colibri”><content name=“audio”><channel channel-bundle-id=“3e832d00” initiator=“true” last-n="-1" endpoint=“3e832d00”><payload-type name=“opus” clockrate=“48000” i
d=“111” channels=“2”><parameter value=“10” name=“minptime”/></payload-type><payload-type id=“103” name=“ISAC” clockrate=“16000”/><payload-type id=“104” name=“ISAC” clockrate=“32000”/><payload-type id=“0”
name=“PCMU” clockrate=“8000”/><payload-type id=“8” name=“PCMA” clockrate=“8000”/><payload-type id=“106” name=“CN” clockrate=“32000”/><payload-type id=“105” name=“CN” clockrate=“16000”/><payload-type id=“1
3” name=“CN” clockrate=“8000”/><payload-type id=“126” name=“telephone-event” clockrate=“8000”/><rtp-hdrext id=“1” uri=“urn:ietf:params:rtp-hdrext:ssrc-audio-level”/></channel></content><content name=“vide
o”><channel channel-bundle-id=“3e832d00” initiator=“true” last-n="-1" endpoint=“3e832d00”><payload-type id=“100” name=“VP8” clockrate=“90000”><rtcp-fb xmlns=“urn:xmpp:jingle:apps:rtp:rtcp-fb:0” type=“ccm”
subtype=“fir”/><rtcp-fb xmlns=“urn:xmpp:jingle:apps:rtp:rtcp-fb:0” type=“nack”/><rtcp-fb xmlns=“urn:xmpp:jingle:apps:rtp:rtcp-fb:0” type=“nack” subtype=“pli”/><rtcp-fb xmlns=“urn:xmpp:jingle:apps:rtp:rtc
p-fb:0” type=“goog-remb”/></payload-type><payload-type id=“116” name=“red” clockrate=“90000”/><payload-type id=“117” name=“ulpfec” clockrate=“90000”/><rtp-hdrext id=“2” uri=“urn:ietf:params:rtp-hdrext:tof
fset”/><rtp-hdrext id=“3” uri=“http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time”/></channel></content><content name=“data”><sctpconnection channel-bundle-id=“3e832d00” port=“5000” initiator=“tru
e” endpoint=“3e832d00”/></content><channel-bundle id=“3e832d00”><transport xmlns=“urn:xmpp:jingle:transports:ice-udp:1”><fingerprint xmlns=“urn:xmpp:jingle:apps:dtls:0” required=“false”/></transport></cha
nnel-bundle></conference></iq>
2015-06-24 09:10:20.909 INFO: [50] org.jitsi.videobridge.Videobridge.info() Created conference c8efd725d5adca13. The total number of conferences is now 1, channels 0, video streams 0.
2015-06-24 09:10:20.923 INFO: [50] org.jitsi.videobridge.Conference.info() Created content audio of conference c8efd725d5adca13. The total number of conferences is now 1, channels 0, video streams 0.
2015-06-24 09:10:21.171 INFO: [50] org.ice4j.ice.harvest.MultiplexingTcpHostHarvester.addLocalAddresses() Not using link-local address /fe80:0:0:0:42:acff:fe11:181%eth0 for TCP candidates.
2015-06-24 09:10:21.177 WARNING: [50] org.jitsi.videobridge.IceUdpTransportManager.warn() Failed to initialize TCP harvester on port 443: java.net.BindException: Address already in use.

On 7/24/15, 5:03 AM, "Roberto Andrade" <roberto.andrade@gmail.com> wrote:

Had to export both public/private keys onto a p12 key store and then convert that into a jks for it to work:

cd /etc/jitsi/videobridge
openssl pkcs12 -export -in /etc/prosody/certs/localhost.crt -inkey /etc/prosody/certs/localhost.key -password pass:changeit > localhost.p12
keytool -importkeystore -srckeystore localhost.p12 -destkeystore localhost.jks -srcstoretype pkcs12 -srcstorepass changeit -deststorepass changeit

On 7/23/15, 8:43 PM, "Roberto Andrade" <roberto.andrade@gmail.com> wrote:

Tried JDK 8, nothing.

Get the same error connecting via SSL. I’m importing the self signed certificate that gets installed as part of the prosody setup, shouldn’t matter right?

On 7/23/15, 11:58 AM, "Roberto Andrade" <roberto.andrade@gmail.com> wrote:

Ok, went ahead and tried this to no avail.

Imported the cert to jks:
keytool -import -trustcacerts -alias localhost -file /etc/prosody/certs/localhost.crt -keystore localhost.jks

JVB seems to be running and Jetty as well I can connect to port 443 but get an SSL handshake error either on the browser or via curl. From the logs the only thing I see that is suspicious is a WARNING (at the bottom of the log) regarding JDK8 (should I be running this on that version of Java? the default installed seems to have been 7):

The results of curl:

curl -vv https://localhost
* Rebuilt URL to: https://localhost/
* Hostname was NOT found in DNS cache
* Trying ::1...
* Connected to localhost (::1) port 443 (#0)
* successfully set certificate verify locations:
* CAfile: none
CApath: /etc/ssl/certs
* SSLv3, TLS handshake, Client hello (1):
* Unknown SSL protocol error in connection to localhost:443
* Closing connection 0
curl: (35) Unknown SSL protocol error in connection to localhost:443

jvb.log:

2015-06-23 15:44:33.803 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.runtime.name=OpenJDK Runtime Environment
2015-06-23 15:44:33.803 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.videobridge.xmpp=true
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.boot.library.path=/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.version=24.79-b02
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.impl.neomedia.video.maxbandwidth=2147483647
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.vendor=Oracle Corporation
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vendor.url=http://java.oracle.com/
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.media.MAX_PORT_NUMBER=20000
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() path.separator=:
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.util.logging.config.file=/usr/share/jitsi-videobridge/lib/logging.properties
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.name=OpenJDK 64-Bit Server VM
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() file.encoding.pkg=sun.io
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.country=US
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.java.launcher=SUN_STANDARD
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.os.patch.level=unknown
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.media.DISABLE_AUDIO_SUPPORT=true
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.impl.neomedia.transform.csrc.SsrcTransformEngine.dropMutedAudioSourceInReverseTransform=true
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.specification.name=Java Virtual Machine Specification
2015-06-23 15:44:33.807 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.dir=/
2015-06-23 15:44:33.807 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.runtime.version=1.7.0_79-b14
2015-06-23 15:44:33.807 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.awt.graphicsenv=sun.awt.X11GraphicsEnvironment
2015-06-23 15:44:33.807 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.endorsed.dirs=/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/endorsed
2015-06-23 15:44:33.808 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() os.arch=amd64
2015-06-23 15:44:33.808 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.io.tmpdir=/tmp
2015-06-23 15:44:33.808 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() line.separator=

2015-06-23 15:44:33.809 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.specification.vendor=Oracle Corporation
2015-06-23 15:44:33.809 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() os.name=Linux
2015-06-23 15:44:33.809 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.protocol.MIN_MEDIA_PORT_NUMBER=10000
2015-06-23 15:44:33.809 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.jnu.encoding=ANSI_X3.4-1968
2015-06-23 15:44:33.810 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.CONFIGURATION_FILE_IS_READ_ONLY=true
2015-06-23 15:44:33.810 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.library.path=/usr/share/jitsi-videobridge/lib/native/linux-64
2015-06-23 15:44:33.810 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.videobridge.DISABLE_RETRANSMISSION_REQUESTS=true
2015-06-23 15:44:33.810 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.specification.name=Java Platform API Specification
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.class.version=51.0
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.service.audionotifier.AudioNotifierService=org.jitsi.impl.neomedia.notify.AudioNotifierServiceImpl
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.videobridge.rest=true
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.management.compiler=HotSpot 64-Bit Tiered Compilers
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() os.version=4.0.5-boot2docker
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.home=/usr/share/jitsi-videobridge
2015-06-23 15:44:33.812 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.timezone=Etc/UTC
2015-06-23 15:44:33.812 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.awt.printerjob=sun.print.PSPrinterJob
2015-06-23 15:44:33.812 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() file.encoding=ANSI_X3.4-1968
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.specification.version=1.7
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.media.DISABLE_VIDEO_SUPPORT=true
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.class.path=/usr/share/jitsi-videobridge/jitsi-videobridge.jar:/usr/share/jitsi-videobridge/lib/bccontrib.jar:/usr/share/jitsi-videobridge/lib/bcpkix-jdk15on-151.jar:/usr/share/jitsi-videobridge/lib/bouncycastle.jar:/usr/share/jitsi-videobridge/lib/concurrentlinkedhashmap-lru.jar:/usr/share/jitsi-videobridge/lib/configuration.jar:/usr/share/jitsi-videobridge/lib/dnsservice.jar:/usr/share/jitsi-videobridge/lib/dom4j.jar:/usr/share/jitsi-videobridge/lib/fileaccess.jar:/usr/share/jitsi-videobridge/lib/fmj.jar:/usr/share/jitsi-videobridge/lib/ice4j.jar:/usr/share/jitsi-videobridge/lib/jetty-client-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-http-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-io-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-proxy-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-rewrite-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-security-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-server-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-servlet-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-util-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jitsi-android-osgi.jar:/usr/share/jitsi-videobridge/lib/jitsi-lgpl-dependencies.jar:/usr/share/jitsi-videobridge/lib/jna.jar:/usr/share/jitsi-videobridge/lib/json.jar:/usr/share/jitsi-videobridge/lib/libidn.jar:/usr/share/jitsi-videobridge/lib/libjitsi.jar:/usr/share/jitsi-videobridge/lib/netaddr.jar:/usr/share/jitsi-videobridge/lib/osgi.core.jar:/usr/share/jitsi-videobridge/lib/packetlogging.jar:/usr/share/jitsi-videobridge/lib/protocol-jabber.jar:/usr/share/jitsi-videobridge/lib/protocol-media.jar:/usr/share/jitsi-videobridge/lib/protocol.jar:/usr/share/jitsi-videobridge/lib/resourcemanager.jar:/usr/share/jitsi-videobridge/lib/servlet-api-3.1.jar:/usr/share/jitsi-videobridge/lib/sigar.jar:/usr/share/jitsi-videobridge/lib/slf4j-api.jar:/usr/share/jitsi-videobridge/lib/slf4j-jdk14-1.7.7.jar:/usr/share/jitsi-videobridge/lib/smack.jar:/usr/share/jitsi-videobridge/lib/smackx.jar:/usr/share/jitsi-videobridge/lib/tinder.jar:/usr/share/jitsi-videobridge/lib/ui-service.jar:/usr/share/jitsi-videobridge/lib/util.jar:/usr/share/jitsi-videobridge/lib/weupnp-0.1.2-SNAPSHOT.jar:/usr/share/jitsi-videobridge/lib/whack.jar:/usr/share/jitsi-videobridge/lib/xpp3.jar:/usr/share/jitsi-videobridge/lib/zrtp4j.jar
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.name=jvb
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.service.neomedia.AudioMediaStream.DISABLE_DTMF_HANDLING=true
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.specification.version=1.7
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.ice4j.ice.harvest.DISABLE_LINK_LOCAL_ADDRESSES=true
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.java.command=org.jitsi.videobridge.Main --host=localhost --domain=localhost --port=5347 --secret=16x@##7h --apis=rest,xmpp
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.home=/usr/lib/jvm/java-7-openjdk-amd64/jre
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.arch.data.model=64
2015-06-23 15:44:33.815 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.language=en
2015-06-23 15:44:33.815 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.specification.vendor=Oracle Corporation
2015-06-23 15:44:33.815 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() awt.toolkit=sun.awt.X11.XToolkit
2015-06-23 15:44:33.815 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.info=mixed mode
2015-06-23 15:44:33.816 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.version=1.7.0_79
2015-06-23 15:44:33.816 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.ext.dirs=/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/ext:/usr/java/packages/lib/ext
2015-06-23 15:44:33.816 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.boot.class.path=/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/resources.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/rt.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/sunrsasign.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/jsse.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/jce.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/charsets.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/rhino.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/jfr.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/classes
2015-06-23 15:44:33.816 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.awt.headless=true
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vendor=Oracle Corporation
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() file.separator=/
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vendor.url.bug=http://bugreport.sun.com/bugreport/
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.io.unicode.encoding=UnicodeLittle
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.cpu.endian=little
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.impl.neomedia.transform.srtp.SRTPCryptoContext.checkReplay=false
2015-06-23 15:44:33.818 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.media.MIN_PORT_NUMBER=10000
2015-06-23 15:44:33.818 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.protocol.MAX_MEDIA_PORT_NUMBER=20000
2015-06-23 15:44:33.818 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.cpu.isalist=
2015-06-23 15:44:33.819 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() Normal classloader
2015-06-23 15:44:33.819 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() failed to find jitsi-defaults.properties with class loader, will continue without it.
2015-06-23 15:44:33.820 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() Normal classloader
2015-06-23 15:44:33.820 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() failed to find jitsi-default-overrides.properties with class loader, will continue without it.
2015-06-23 15:44:33.906 INFO: [9] impl.resources.ResourceManagementActivator.start().70 Resource manager STARTED
2015-06-23 15:44:33.907 INFO: [9] impl.resources.ResourceManagementActivator.start().79 Resource manager REGISTERED
2015-06-23 15:44:33.939 INFO: [9] impl.netaddr.NetworkAddressManagerServiceImpl.start().81 Network Address Manager ...[ STARTED ]
2015-06-23 15:44:33.940 INFO: [9] impl.netaddr.NetworkAddressManagerServiceImpl.start().87 Network Address Manager Service ...[REGISTERED]
2015-06-23 15:44:33.944 INFO: [9] impl.packetlogging.PacketLoggingActivator.start().89 Packet Logging Service ...[REGISTERED]
2015-06-23 15:44:33.956 INFO: [9] org.jitsi.videobridge.metrics.MetricLoggingHandler.info() Metric services enabled: 0
2015-06-23 15:44:34.109 INFO: [9] org.jitsi.videobridge.version.VersionActivator.start().76 Jitsi Videobridge Version: JVB 0.1.474
2015-06-23 15:44:34.166 INFO: [9] org.eclipse.jetty.util.log.initialized() Logging initialized @556ms
2015-06-23 15:44:34.265 INFO: [9] org.eclipse.jetty.server.Server.doStart() jetty-9.2.10.v20150310
2015-06-23 15:44:34.279 INFO: [9] org.eclipse.jetty.server.handler.ContextHandler.doStart() Started o.e.j.s.h.ContextHandler@53d8337b{/,null,AVAILABLE}
2015-06-23 15:44:34.285 INFO: [9] org.eclipse.jetty.server.handler.ContextHandler.doStart() Started o.e.j.s.ServletContextHandler@73cee4bb{/,null,AVAILABLE}
2015-06-23 15:44:34.288 WARNING: [9] org.ice4j.socket.MuxServerSocketChannelFactory.<clinit>() ICE4J does not support sharing of listening endpoints (probably because it is not running on JDK 8).
2015-06-23 15:44:34.524 INFO: [9] org.jitsi.videobridge.rest.MuxServerConnector.doStart() Started MuxServerConnector@2fcf1d75{SSL-http/1.1}{:::443}
2015-06-23 15:44:34.524 INFO: [9] org.eclipse.jetty.server.Server.doStart() Started @919ms
2015-06-23 15:44:34.530 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePassword=**********
2015-06-23 15:44:34.530 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ResourceHandler.alias./config.js=/etc/jitsi/meet/localhost-config.js
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ProxyServlet.pathSpec=/http-bind
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.tls.port=443
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.TCP_HARVESTER_PORT=443
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.RewriteHandler.replacement=/
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ResourceHandler.resourceBase=/usr/share/jitsi-meet
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.host=::
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.RewriteHandler.regex=^/([a-zA-Z0-9]+)$
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() net.java.sip.communicator.SC_HOME_DIR_LOCATION=/usr/share/jitsi-videobridge
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ProxyServlet.proxyTo=http://localhost:5280/http-bind
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.port=443
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ProxyServlet.hostHeader=localhost
2015-06-23 15:44:34.533 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() net.java.sip.communicator.SC_HOME_DIR_NAME=.sip-communicator
2015-06-23 15:44:34.533 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePath=/etc/jitsi/videobridge/localhost.jks

On 7/22/15, 10:50 AM, "dev on behalf of Damian Minkov" <dev-bounces@jitsi.org on behalf of damencho@jitsi.org> wrote:

Hi,

as Emil pointed we will add this as default to the meet installation
soon. All the code that serves it, is there, but to do this manually
is not a straight forward task.
You need to stop nginx and configure jitsi-videobridge to serve meet.

1. Add prosody certificates to java keystore
2. Configure authbind to allow jvb to use port 443
3. And configure jvb itself in
/usr/share/jitsi-videobridge/.sip-communicator/sip-communicator.properties
org.jitsi.videobridge.rest.jetty.host=::
org.jitsi.videobridge.rest.jetty.port=443
org.jitsi.videobridge.rest.jetty.ProxyServlet.hostHeader=example.meet.jit.si
org.jitsi.videobridge.rest.jetty.ProxyServlet.pathSpec=/http-bind
org.jitsi.videobridge.rest.jetty.ProxyServlet.proxyTo=http://localhost:5280/http-bind
org.jitsi.videobridge.rest.jetty.ResourceHandler.resourceBase=/usr/share/jitsi-meet
org.jitsi.videobridge.rest.jetty.ResourceHandler.alias./config.js=/etc/jitsi/meet/example.meet.jit.si-config.js
org.jitsi.videobridge.rest.jetty.RewriteHandler.regex=^/([a-zA-Z0-9]+)$
org.jitsi.videobridge.rest.jetty.RewriteHandler.replacement=/
org.jitsi.videobridge.rest.jetty.tls.port=443
org.jitsi.videobridge.TCP_HARVESTER_PORT=443
org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePath=/etc/jitsi/videobridge/example.meet.jit.si.jks
org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePassword=changeit
4. You need to start jvb with rest and xmpp interface running. Add the
following to jvb config in etc:
JVB_OPTS="--apis=rest,xmpp"
AUTHBIND=yes

Hope this helps

Regards
damencho

On Wed, Jul 22, 2015 at 9:14 AM, Roberto Andrade >>>>><roberto.andrade@gmail.com> wrote:

Ok, glad to hear. So how do I go about fetching this latest default installation scripts to be able to have an environment with the Option B setup?

On 7/22/15, 10:05 AM, "dev on behalf of Emil Ivov" <dev-bounces@jitsi.org on behalf of emcho@jitsi.org> wrote:

On Wed, Jul 22, 2015 at 3:56 PM, Roberto Andrade >>>>>>><roberto.andrade@gmail.com> wrote:

Ok, makes sense. I had originally reported this as an issue on github because I felt like this was missing from either the instructions (quick or manual) or the default installation script.

The latest default installation scripts should end up putting you in
Option B which would solve your problem.

Given that the default install has node/nginx one the same box as the bridge, option B in this case wouldn’t be a viable one as you’d lose a way to serve the jitsi-meet web site, no? Or will JVB proxy traffic and route to the node app too? And do the same http-bind forwarding to prosody as well?

JVB now ships together with jetty which serves Meet and also allows
you to connect to prosody.

On option A I guess traditionally you’d keep both the frontend and the different backends on different servers so naturally would have a different IP to talk to avoiding the conflict.

Right.

Shouldn’t there be instructions on either the jitsi-meet or the jitsi-videobridge repos describing this capability and how to take advantage of it?

That's supposed to be the default in the debian package but we are not
there yet. We'll try to make this happen soon.

Emil

Roberto

On 7/22/15, 9:30 AM, "dev on behalf of Emil Ivov" <dev-bounces@jitsi.org on behalf of emcho@jitsi.org> wrote:

Hey Roberto,

On Wed, Jul 22, 2015 at 3:25 PM, Roberto Andrade >>>>>>>>><roberto.andrade@gmail.com> wrote:

Ok, let me try to get this straight.

I’m talking about the setup that gets configured when you perform the quick install routines. It setups up prosody, jitsi-videobridge, jitsi-meet, jocofo and nginx.

I noticed nginx config is setup to listen on ports 80/443 and forward traffic coming in either for requests on /http-bind to the prosody 5280 port.

The bridge is configured to run on port 5347 but it’s currently not exposed to the internet.

From what I understand the bridge also accepts incoming requests on udp ports 10000-20000 so I exposed those in addition to 80/443.

Now, when it comes to the TCP relaying functionality you speak of, if the bridge will include an ICE candidate with the public IP and port 443 that will hit the nginx server which would need to forward that traffic onto the bridge (on port 5347?), no? How would one go about configuring such thing in nginx (should that already be part of the configuration scripts once you install that via the debian recipe?)?

What Boris meant was that there is no way to get your media through
nginx. At least I am not aware of one.

What you need to do is either:

A) Use separate IP addresses so that both JVB and nginx would be able
to listen on 443 without fighting for it or
B) You get rid of nginx and use JVB as both a media and a web server.
JVB supports that.

We implemented support for option B in order to solve cases exactly like yours.

Emil

Thanks in advance,

Roberto

On 7/22/15, 7:47 AM, "dev on behalf of Boris Grozev" <dev-bounces@jitsi.org on behalf of boris@jitsi.org> wrote:

On 22/07/15 06:13, Roberto Andrade wrote:

Ok. So wouldn't the nginx server then need to be configured to somehow
forward relevant traffic to the bridge rather than serving it as a
regular http/s request?

You can either use a separate IP address for the bridge or use the newly
added HTTP/media demultiplexing in the bridge (essentially replace nginx
with videobridge).

Regards,
Boris

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

--
https://jitsi.org

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

--
https://jitsi.org

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev


#19

In theory both Jetty and the Harvest should be using the new JDK 8 stuff to allow binding on the same interface/port, correct? I don’t get why it’d be having the binding exception. Running OpenJDK 8:

openjdk version "1.8.0_45-internal"
OpenJDK Runtime Environment (build 1.8.0_45-internal-b14)
OpenJDK 64-Bit Server VM (build 25.45-b02, mixed mode)

Should I be using Oracle’s?

···

On 7/24/15, 5:44 AM, "Roberto Andrade" <roberto.andrade@gmail.com> wrote:

Is there something I need to do (i.e.: change either jetty or the harvester ports and make one forward to the other?) to make it work?

On 7/24/15, 5:21 AM, "Roberto Andrade" <roberto.andrade@gmail.com> wrote:

With the suggested config I’m getting a port conflict between jetty and the harvester as both are trying to listen on port 443?

2015-06-24 09:09:59.974 INFO: [11] impl.netaddr.NetworkAddressManagerServiceImpl.start().81 Network Address Manager ...[ STARTED ]
2015-06-24 09:09:59.975 INFO: [11] impl.netaddr.NetworkAddressManagerServiceImpl.start().87 Network Address Manager Service ...[REGISTERED]
2015-06-24 09:09:59.978 INFO: [11] impl.packetlogging.PacketLoggingActivator.start().89 Packet Logging Service ...[REGISTERED]
2015-06-24 09:09:59.988 INFO: [11] org.jitsi.videobridge.metrics.MetricLoggingHandler.info() Metric services enabled: 0
2015-06-24 09:10:00.085 INFO: [11] org.jitsi.videobridge.version.VersionActivator.start().76 Jitsi Videobridge Version: JVB 0.1.478
2015-06-24 09:10:00.116 INFO: [11] org.eclipse.jetty.util.log.initialized() Logging initialized @443ms
2015-06-24 09:10:00.185 INFO: [11] org.eclipse.jetty.server.Server.doStart() jetty-9.2.10.v20150310
2015-06-24 09:10:00.198 INFO: [11] org.eclipse.jetty.server.handler.ContextHandler.doStart() Started o.e.j.s.h.ContextHandler@b1f2850{/,null,AVAILABLE}
2015-06-24 09:10:00.202 INFO: [11] org.eclipse.jetty.server.handler.ContextHandler.doStart() Started o.e.j.s.ServletContextHandler@2a8af07a{/,null,AVAILABLE}
2015-06-24 09:10:00.341 INFO: [11] org.jitsi.videobridge.rest.MuxServerConnector.doStart() Started MuxServerConnector@1b68a97c{SSL-http/1.1}{:::443}
2015-06-24 09:10:00.341 INFO: [11] org.eclipse.jetty.server.Server.doStart() Started @671ms
2015-06-24 09:10:00.346 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ProxyServlet.hostHeader=localhost
2015-06-24 09:10:00.347 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.TCP_HARVESTER_PORT=443
2015-06-24 09:10:00.347 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.RewriteHandler.regex=^/([a-zA-Z0-9]+)$
2015-06-24 09:10:00.347 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ResourceHandler.resourceBase=/usr/share/jitsi-meet
2015-06-24 09:10:00.347 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePath=/etc/jitsi/videobridge/localhost.jks
2015-06-24 09:10:00.347 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ProxyServlet.pathSpec=/http-bind
2015-06-24 09:10:00.347 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.NAT_HARVESTER_LOCAL_ADDRESS=172.17.1.128
2015-06-24 09:10:00.348 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePassword=**********
2015-06-24 09:10:00.348 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.RewriteHandler.replacement=/
2015-06-24 09:10:00.348 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.port=443
2015-06-24 09:10:00.348 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.NAT_HARVESTER_PUBLIC_ADDRESS=192.168.59.103
2015-06-24 09:10:00.348 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.tls.port=443
2015-06-24 09:10:00.355 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() net.java.sip.communicator.SC_HOME_DIR_LOCATION=/usr/share/jitsi-videobridge
2015-06-24 09:10:00.355 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.host=::
2015-06-24 09:10:00.355 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.impl.neomedia.transform.srtp.SRTPCryptoContext.checkReplay=false
2015-06-24 09:10:00.355 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ProxyServlet.proxyTo=http://localhost:5280/http-bind
2015-06-24 09:10:00.355 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ResourceHandler.alias./config.js=/etc/jitsi/meet/localhost-config.js
2015-06-24 09:10:00.355 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() net.java.sip.communicator.SC_HOME_DIR_NAME=.sip-communicator
2015-06-24 09:10:00.364 INFO: [1] java.util.prefs.run() Created user preferences directory.
2015-06-24 09:10:20.882 INFO: [50] org.jitsi.videobridge.xmpp.ComponentImpl.info() RECV: <iq type=“get” to=“jitsi-videobridge.localhost” from=“focus@auth.localhost/focus206914580784414” id=“MWIQP-15”><con
ference xmlns=“http://jitsi.org/protocol/colibri”><content name=“audio”><channel channel-bundle-id=“3e832d00” initiator=“true” last-n="-1" endpoint=“3e832d00”><payload-type name=“opus” clockrate=“48000” i
d=“111” channels=“2”><parameter value=“10” name=“minptime”/></payload-type><payload-type id=“103” name=“ISAC” clockrate=“16000”/><payload-type id=“104” name=“ISAC” clockrate=“32000”/><payload-type id=“0”
name=“PCMU” clockrate=“8000”/><payload-type id=“8” name=“PCMA” clockrate=“8000”/><payload-type id=“106” name=“CN” clockrate=“32000”/><payload-type id=“105” name=“CN” clockrate=“16000”/><payload-type id=“1
3” name=“CN” clockrate=“8000”/><payload-type id=“126” name=“telephone-event” clockrate=“8000”/><rtp-hdrext id=“1” uri=“urn:ietf:params:rtp-hdrext:ssrc-audio-level”/></channel></content><content name=“vide
o”><channel channel-bundle-id=“3e832d00” initiator=“true” last-n="-1" endpoint=“3e832d00”><payload-type id=“100” name=“VP8” clockrate=“90000”><rtcp-fb xmlns=“urn:xmpp:jingle:apps:rtp:rtcp-fb:0” type=“ccm”
subtype=“fir”/><rtcp-fb xmlns=“urn:xmpp:jingle:apps:rtp:rtcp-fb:0” type=“nack”/><rtcp-fb xmlns=“urn:xmpp:jingle:apps:rtp:rtcp-fb:0” type=“nack” subtype=“pli”/><rtcp-fb xmlns=“urn:xmpp:jingle:apps:rtp:rtc
p-fb:0” type=“goog-remb”/></payload-type><payload-type id=“116” name=“red” clockrate=“90000”/><payload-type id=“117” name=“ulpfec” clockrate=“90000”/><rtp-hdrext id=“2” uri=“urn:ietf:params:rtp-hdrext:tof
fset”/><rtp-hdrext id=“3” uri=“http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time”/></channel></content><content name=“data”><sctpconnection channel-bundle-id=“3e832d00” port=“5000” initiator=“tru
e” endpoint=“3e832d00”/></content><channel-bundle id=“3e832d00”><transport xmlns=“urn:xmpp:jingle:transports:ice-udp:1”><fingerprint xmlns=“urn:xmpp:jingle:apps:dtls:0” required=“false”/></transport></cha
nnel-bundle></conference></iq>
2015-06-24 09:10:20.909 INFO: [50] org.jitsi.videobridge.Videobridge.info() Created conference c8efd725d5adca13. The total number of conferences is now 1, channels 0, video streams 0.
2015-06-24 09:10:20.923 INFO: [50] org.jitsi.videobridge.Conference.info() Created content audio of conference c8efd725d5adca13. The total number of conferences is now 1, channels 0, video streams 0.
2015-06-24 09:10:21.171 INFO: [50] org.ice4j.ice.harvest.MultiplexingTcpHostHarvester.addLocalAddresses() Not using link-local address /fe80:0:0:0:42:acff:fe11:181%eth0 for TCP candidates.
2015-06-24 09:10:21.177 WARNING: [50] org.jitsi.videobridge.IceUdpTransportManager.warn() Failed to initialize TCP harvester on port 443: java.net.BindException: Address already in use.

On 7/24/15, 5:03 AM, "Roberto Andrade" <roberto.andrade@gmail.com> wrote:

Had to export both public/private keys onto a p12 key store and then convert that into a jks for it to work:

cd /etc/jitsi/videobridge
openssl pkcs12 -export -in /etc/prosody/certs/localhost.crt -inkey /etc/prosody/certs/localhost.key -password pass:changeit > localhost.p12
keytool -importkeystore -srckeystore localhost.p12 -destkeystore localhost.jks -srcstoretype pkcs12 -srcstorepass changeit -deststorepass changeit

On 7/23/15, 8:43 PM, "Roberto Andrade" <roberto.andrade@gmail.com> wrote:

Tried JDK 8, nothing.

Get the same error connecting via SSL. I’m importing the self signed certificate that gets installed as part of the prosody setup, shouldn’t matter right?

On 7/23/15, 11:58 AM, "Roberto Andrade" <roberto.andrade@gmail.com> wrote:

Ok, went ahead and tried this to no avail.

Imported the cert to jks:
keytool -import -trustcacerts -alias localhost -file /etc/prosody/certs/localhost.crt -keystore localhost.jks

JVB seems to be running and Jetty as well I can connect to port 443 but get an SSL handshake error either on the browser or via curl. From the logs the only thing I see that is suspicious is a WARNING (at the bottom of the log) regarding JDK8 (should I be running this on that version of Java? the default installed seems to have been 7):

The results of curl:

curl -vv https://localhost
* Rebuilt URL to: https://localhost/
* Hostname was NOT found in DNS cache
* Trying ::1...
* Connected to localhost (::1) port 443 (#0)
* successfully set certificate verify locations:
* CAfile: none
CApath: /etc/ssl/certs
* SSLv3, TLS handshake, Client hello (1):
* Unknown SSL protocol error in connection to localhost:443
* Closing connection 0
curl: (35) Unknown SSL protocol error in connection to localhost:443

jvb.log:

2015-06-23 15:44:33.803 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.runtime.name=OpenJDK Runtime Environment
2015-06-23 15:44:33.803 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.videobridge.xmpp=true
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.boot.library.path=/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.version=24.79-b02
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.impl.neomedia.video.maxbandwidth=2147483647
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.vendor=Oracle Corporation
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vendor.url=http://java.oracle.com/
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.media.MAX_PORT_NUMBER=20000
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() path.separator=:
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.util.logging.config.file=/usr/share/jitsi-videobridge/lib/logging.properties
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.name=OpenJDK 64-Bit Server VM
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() file.encoding.pkg=sun.io
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.country=US
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.java.launcher=SUN_STANDARD
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.os.patch.level=unknown
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.media.DISABLE_AUDIO_SUPPORT=true
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.impl.neomedia.transform.csrc.SsrcTransformEngine.dropMutedAudioSourceInReverseTransform=true
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.specification.name=Java Virtual Machine Specification
2015-06-23 15:44:33.807 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.dir=/
2015-06-23 15:44:33.807 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.runtime.version=1.7.0_79-b14
2015-06-23 15:44:33.807 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.awt.graphicsenv=sun.awt.X11GraphicsEnvironment
2015-06-23 15:44:33.807 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.endorsed.dirs=/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/endorsed
2015-06-23 15:44:33.808 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() os.arch=amd64
2015-06-23 15:44:33.808 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.io.tmpdir=/tmp
2015-06-23 15:44:33.808 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() line.separator=

2015-06-23 15:44:33.809 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.specification.vendor=Oracle Corporation
2015-06-23 15:44:33.809 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() os.name=Linux
2015-06-23 15:44:33.809 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.protocol.MIN_MEDIA_PORT_NUMBER=10000
2015-06-23 15:44:33.809 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.jnu.encoding=ANSI_X3.4-1968
2015-06-23 15:44:33.810 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.CONFIGURATION_FILE_IS_READ_ONLY=true
2015-06-23 15:44:33.810 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.library.path=/usr/share/jitsi-videobridge/lib/native/linux-64
2015-06-23 15:44:33.810 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.videobridge.DISABLE_RETRANSMISSION_REQUESTS=true
2015-06-23 15:44:33.810 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.specification.name=Java Platform API Specification
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.class.version=51.0
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.service.audionotifier.AudioNotifierService=org.jitsi.impl.neomedia.notify.AudioNotifierServiceImpl
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.videobridge.rest=true
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.management.compiler=HotSpot 64-Bit Tiered Compilers
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() os.version=4.0.5-boot2docker
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.home=/usr/share/jitsi-videobridge
2015-06-23 15:44:33.812 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.timezone=Etc/UTC
2015-06-23 15:44:33.812 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.awt.printerjob=sun.print.PSPrinterJob
2015-06-23 15:44:33.812 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() file.encoding=ANSI_X3.4-1968
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.specification.version=1.7
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.media.DISABLE_VIDEO_SUPPORT=true
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.class.path=/usr/share/jitsi-videobridge/jitsi-videobridge.jar:/usr/share/jitsi-videobridge/lib/bccontrib.jar:/usr/share/jitsi-videobridge/lib/bcpkix-jdk15on-151.jar:/usr/share/jitsi-videobridge/lib/bouncycastle.jar:/usr/share/jitsi-videobridge/lib/concurrentlinkedhashmap-lru.jar:/usr/share/jitsi-videobridge/lib/configuration.jar:/usr/share/jitsi-videobridge/lib/dnsservice.jar:/usr/share/jitsi-videobridge/lib/dom4j.jar:/usr/share/jitsi-videobridge/lib/fileaccess.jar:/usr/share/jitsi-videobridge/lib/fmj.jar:/usr/share/jitsi-videobridge/lib/ice4j.jar:/usr/share/jitsi-videobridge/lib/jetty-client-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-http-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-io-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-proxy-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-rewrite-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-security-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-server-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-servlet-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-util-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jitsi-android-osgi.jar:/usr/share/jitsi-videobridge/lib/jitsi-lgpl-dependencies.jar:/usr/share/jitsi-videobridge/lib/jna.jar:/usr/share/jitsi-videobridge/lib/json.jar:/usr/share/jitsi-videobridge/lib/libidn.jar:/usr/share/jitsi-videobridge/lib/libjitsi.jar:/usr/share/jitsi-videobridge/lib/netaddr.jar:/usr/share/jitsi-videobridge/lib/osgi.core.jar:/usr/share/jitsi-videobridge/lib/packetlogging.jar:/usr/share/jitsi-videobridge/lib/protocol-jabber.jar:/usr/share/jitsi-videobridge/lib/protocol-media.jar:/usr/share/jitsi-videobridge/lib/protocol.jar:/usr/share/jitsi-videobridge/lib/resourcemanager.jar:/usr/share/jitsi-videobridge/lib/servlet-api-3.1.jar:/usr/share/jitsi-videobridge/lib/sigar.jar:/usr/share/jitsi-videobridge/lib/slf4j-api.jar:/usr/share/jitsi-videobridge/lib/slf4j-jdk14-1.7.7.jar:/usr/share/jitsi-videobridge/lib/smack.jar:/usr/share/jitsi-videobridge/lib/smackx.jar:/usr/share/jitsi-videobridge/lib/tinder.jar:/usr/share/jitsi-videobridge/lib/ui-service.jar:/usr/share/jitsi-videobridge/lib/util.jar:/usr/share/jitsi-videobridge/lib/weupnp-0.1.2-SNAPSHOT.jar:/usr/share/jitsi-videobridge/lib/whack.jar:/usr/share/jitsi-videobridge/lib/xpp3.jar:/usr/share/jitsi-videobridge/lib/zrtp4j.jar
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.name=jvb
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.service.neomedia.AudioMediaStream.DISABLE_DTMF_HANDLING=true
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.specification.version=1.7
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.ice4j.ice.harvest.DISABLE_LINK_LOCAL_ADDRESSES=true
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.java.command=org.jitsi.videobridge.Main --host=localhost --domain=localhost --port=5347 --secret=16x@##7h --apis=rest,xmpp
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.home=/usr/lib/jvm/java-7-openjdk-amd64/jre
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.arch.data.model=64
2015-06-23 15:44:33.815 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.language=en
2015-06-23 15:44:33.815 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.specification.vendor=Oracle Corporation
2015-06-23 15:44:33.815 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() awt.toolkit=sun.awt.X11.XToolkit
2015-06-23 15:44:33.815 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.info=mixed mode
2015-06-23 15:44:33.816 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.version=1.7.0_79
2015-06-23 15:44:33.816 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.ext.dirs=/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/ext:/usr/java/packages/lib/ext
2015-06-23 15:44:33.816 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.boot.class.path=/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/resources.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/rt.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/sunrsasign.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/jsse.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/jce.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/charsets.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/rhino.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/jfr.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/classes
2015-06-23 15:44:33.816 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.awt.headless=true
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vendor=Oracle Corporation
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() file.separator=/
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vendor.url.bug=http://bugreport.sun.com/bugreport/
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.io.unicode.encoding=UnicodeLittle
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.cpu.endian=little
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.impl.neomedia.transform.srtp.SRTPCryptoContext.checkReplay=false
2015-06-23 15:44:33.818 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.media.MIN_PORT_NUMBER=10000
2015-06-23 15:44:33.818 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.protocol.MAX_MEDIA_PORT_NUMBER=20000
2015-06-23 15:44:33.818 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.cpu.isalist=
2015-06-23 15:44:33.819 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() Normal classloader
2015-06-23 15:44:33.819 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() failed to find jitsi-defaults.properties with class loader, will continue without it.
2015-06-23 15:44:33.820 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() Normal classloader
2015-06-23 15:44:33.820 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() failed to find jitsi-default-overrides.properties with class loader, will continue without it.
2015-06-23 15:44:33.906 INFO: [9] impl.resources.ResourceManagementActivator.start().70 Resource manager STARTED
2015-06-23 15:44:33.907 INFO: [9] impl.resources.ResourceManagementActivator.start().79 Resource manager REGISTERED
2015-06-23 15:44:33.939 INFO: [9] impl.netaddr.NetworkAddressManagerServiceImpl.start().81 Network Address Manager ...[ STARTED ]
2015-06-23 15:44:33.940 INFO: [9] impl.netaddr.NetworkAddressManagerServiceImpl.start().87 Network Address Manager Service ...[REGISTERED]
2015-06-23 15:44:33.944 INFO: [9] impl.packetlogging.PacketLoggingActivator.start().89 Packet Logging Service ...[REGISTERED]
2015-06-23 15:44:33.956 INFO: [9] org.jitsi.videobridge.metrics.MetricLoggingHandler.info() Metric services enabled: 0
2015-06-23 15:44:34.109 INFO: [9] org.jitsi.videobridge.version.VersionActivator.start().76 Jitsi Videobridge Version: JVB 0.1.474
2015-06-23 15:44:34.166 INFO: [9] org.eclipse.jetty.util.log.initialized() Logging initialized @556ms
2015-06-23 15:44:34.265 INFO: [9] org.eclipse.jetty.server.Server.doStart() jetty-9.2.10.v20150310
2015-06-23 15:44:34.279 INFO: [9] org.eclipse.jetty.server.handler.ContextHandler.doStart() Started o.e.j.s.h.ContextHandler@53d8337b{/,null,AVAILABLE}
2015-06-23 15:44:34.285 INFO: [9] org.eclipse.jetty.server.handler.ContextHandler.doStart() Started o.e.j.s.ServletContextHandler@73cee4bb{/,null,AVAILABLE}
2015-06-23 15:44:34.288 WARNING: [9] org.ice4j.socket.MuxServerSocketChannelFactory.<clinit>() ICE4J does not support sharing of listening endpoints (probably because it is not running on JDK 8).
2015-06-23 15:44:34.524 INFO: [9] org.jitsi.videobridge.rest.MuxServerConnector.doStart() Started MuxServerConnector@2fcf1d75{SSL-http/1.1}{:::443}
2015-06-23 15:44:34.524 INFO: [9] org.eclipse.jetty.server.Server.doStart() Started @919ms
2015-06-23 15:44:34.530 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePassword=**********
2015-06-23 15:44:34.530 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ResourceHandler.alias./config.js=/etc/jitsi/meet/localhost-config.js
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ProxyServlet.pathSpec=/http-bind
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.tls.port=443
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.TCP_HARVESTER_PORT=443
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.RewriteHandler.replacement=/
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ResourceHandler.resourceBase=/usr/share/jitsi-meet
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.host=::
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.RewriteHandler.regex=^/([a-zA-Z0-9]+)$
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() net.java.sip.communicator.SC_HOME_DIR_LOCATION=/usr/share/jitsi-videobridge
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ProxyServlet.proxyTo=http://localhost:5280/http-bind
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.port=443
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ProxyServlet.hostHeader=localhost
2015-06-23 15:44:34.533 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() net.java.sip.communicator.SC_HOME_DIR_NAME=.sip-communicator
2015-06-23 15:44:34.533 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePath=/etc/jitsi/videobridge/localhost.jks

On 7/22/15, 10:50 AM, "dev on behalf of Damian Minkov" <dev-bounces@jitsi.org on behalf of damencho@jitsi.org> wrote:

Hi,

as Emil pointed we will add this as default to the meet installation
soon. All the code that serves it, is there, but to do this manually
is not a straight forward task.
You need to stop nginx and configure jitsi-videobridge to serve meet.

1. Add prosody certificates to java keystore
2. Configure authbind to allow jvb to use port 443
3. And configure jvb itself in
/usr/share/jitsi-videobridge/.sip-communicator/sip-communicator.properties
org.jitsi.videobridge.rest.jetty.host=::
org.jitsi.videobridge.rest.jetty.port=443
org.jitsi.videobridge.rest.jetty.ProxyServlet.hostHeader=example.meet.jit.si
org.jitsi.videobridge.rest.jetty.ProxyServlet.pathSpec=/http-bind
org.jitsi.videobridge.rest.jetty.ProxyServlet.proxyTo=http://localhost:5280/http-bind
org.jitsi.videobridge.rest.jetty.ResourceHandler.resourceBase=/usr/share/jitsi-meet
org.jitsi.videobridge.rest.jetty.ResourceHandler.alias./config.js=/etc/jitsi/meet/example.meet.jit.si-config.js
org.jitsi.videobridge.rest.jetty.RewriteHandler.regex=^/([a-zA-Z0-9]+)$
org.jitsi.videobridge.rest.jetty.RewriteHandler.replacement=/
org.jitsi.videobridge.rest.jetty.tls.port=443
org.jitsi.videobridge.TCP_HARVESTER_PORT=443
org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePath=/etc/jitsi/videobridge/example.meet.jit.si.jks
org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePassword=changeit
4. You need to start jvb with rest and xmpp interface running. Add the
following to jvb config in etc:
JVB_OPTS="--apis=rest,xmpp"
AUTHBIND=yes

Hope this helps

Regards
damencho

On Wed, Jul 22, 2015 at 9:14 AM, Roberto Andrade >>>>>><roberto.andrade@gmail.com> wrote:

Ok, glad to hear. So how do I go about fetching this latest default installation scripts to be able to have an environment with the Option B setup?

On 7/22/15, 10:05 AM, "dev on behalf of Emil Ivov" <dev-bounces@jitsi.org on behalf of emcho@jitsi.org> wrote:

On Wed, Jul 22, 2015 at 3:56 PM, Roberto Andrade >>>>>>>><roberto.andrade@gmail.com> wrote:

Ok, makes sense. I had originally reported this as an issue on github because I felt like this was missing from either the instructions (quick or manual) or the default installation script.

The latest default installation scripts should end up putting you in
Option B which would solve your problem.

Given that the default install has node/nginx one the same box as the bridge, option B in this case wouldn’t be a viable one as you’d lose a way to serve the jitsi-meet web site, no? Or will JVB proxy traffic and route to the node app too? And do the same http-bind forwarding to prosody as well?

JVB now ships together with jetty which serves Meet and also allows
you to connect to prosody.

On option A I guess traditionally you’d keep both the frontend and the different backends on different servers so naturally would have a different IP to talk to avoiding the conflict.

Right.

Shouldn’t there be instructions on either the jitsi-meet or the jitsi-videobridge repos describing this capability and how to take advantage of it?

That's supposed to be the default in the debian package but we are not
there yet. We'll try to make this happen soon.

Emil

Roberto

On 7/22/15, 9:30 AM, "dev on behalf of Emil Ivov" <dev-bounces@jitsi.org on behalf of emcho@jitsi.org> wrote:

Hey Roberto,

On Wed, Jul 22, 2015 at 3:25 PM, Roberto Andrade >>>>>>>>>><roberto.andrade@gmail.com> wrote:

Ok, let me try to get this straight.

I’m talking about the setup that gets configured when you perform the quick install routines. It setups up prosody, jitsi-videobridge, jitsi-meet, jocofo and nginx.

I noticed nginx config is setup to listen on ports 80/443 and forward traffic coming in either for requests on /http-bind to the prosody 5280 port.

The bridge is configured to run on port 5347 but it’s currently not exposed to the internet.

From what I understand the bridge also accepts incoming requests on udp ports 10000-20000 so I exposed those in addition to 80/443.

Now, when it comes to the TCP relaying functionality you speak of, if the bridge will include an ICE candidate with the public IP and port 443 that will hit the nginx server which would need to forward that traffic onto the bridge (on port 5347?), no? How would one go about configuring such thing in nginx (should that already be part of the configuration scripts once you install that via the debian recipe?)?

What Boris meant was that there is no way to get your media through
nginx. At least I am not aware of one.

What you need to do is either:

A) Use separate IP addresses so that both JVB and nginx would be able
to listen on 443 without fighting for it or
B) You get rid of nginx and use JVB as both a media and a web server.
JVB supports that.

We implemented support for option B in order to solve cases exactly like yours.

Emil

Thanks in advance,

Roberto

On 7/22/15, 7:47 AM, "dev on behalf of Boris Grozev" <dev-bounces@jitsi.org on behalf of boris@jitsi.org> wrote:

On 22/07/15 06:13, Roberto Andrade wrote:

Ok. So wouldn't the nginx server then need to be configured to somehow
forward relevant traffic to the bridge rather than serving it as a
regular http/s request?

You can either use a separate IP address for the bridge or use the newly
added HTTP/media demultiplexing in the bridge (essentially replace nginx
with videobridge).

Regards,
Boris

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

--
https://jitsi.org

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

--
https://jitsi.org

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev


#20

I see that the latest implementation of ice4j in http://ice4j.googlecode.com/svn/trunk/src/org/ice4j/ice/harvest/MultiplexingTcpHostHarvester.java has the init() implementation one would expect. Meanwhile, when installing from the ubuntu repos, jitsi-videobridge (JVB 0.1.478) has a snapshot of ice4j that doesn’t contain that apparently.

Given this is being downloaded as per quick install instructions from http://download.jitsi.org/nightly/deb shouldn’t the latest binaries for the JVB already include the latest ice4j? Do I need to build JVB from source to be able to get that?

···

On 7/24/15, 7:02 AM, "Roberto Andrade" <roberto.andrade@gmail.com> wrote:

In theory both Jetty and the Harvest should be using the new JDK 8 stuff to allow binding on the same interface/port, correct? I don’t get why it’d be having the binding exception. Running OpenJDK 8:

openjdk version "1.8.0_45-internal"
OpenJDK Runtime Environment (build 1.8.0_45-internal-b14)
OpenJDK 64-Bit Server VM (build 25.45-b02, mixed mode)

Should I be using Oracle’s?

On 7/24/15, 5:44 AM, "Roberto Andrade" <roberto.andrade@gmail.com> wrote:

Is there something I need to do (i.e.: change either jetty or the harvester ports and make one forward to the other?) to make it work?

On 7/24/15, 5:21 AM, "Roberto Andrade" <roberto.andrade@gmail.com> wrote:

With the suggested config I’m getting a port conflict between jetty and the harvester as both are trying to listen on port 443?

2015-06-24 09:09:59.974 INFO: [11] impl.netaddr.NetworkAddressManagerServiceImpl.start().81 Network Address Manager ...[ STARTED ]
2015-06-24 09:09:59.975 INFO: [11] impl.netaddr.NetworkAddressManagerServiceImpl.start().87 Network Address Manager Service ...[REGISTERED]
2015-06-24 09:09:59.978 INFO: [11] impl.packetlogging.PacketLoggingActivator.start().89 Packet Logging Service ...[REGISTERED]
2015-06-24 09:09:59.988 INFO: [11] org.jitsi.videobridge.metrics.MetricLoggingHandler.info() Metric services enabled: 0
2015-06-24 09:10:00.085 INFO: [11] org.jitsi.videobridge.version.VersionActivator.start().76 Jitsi Videobridge Version: JVB 0.1.478
2015-06-24 09:10:00.116 INFO: [11] org.eclipse.jetty.util.log.initialized() Logging initialized @443ms
2015-06-24 09:10:00.185 INFO: [11] org.eclipse.jetty.server.Server.doStart() jetty-9.2.10.v20150310
2015-06-24 09:10:00.198 INFO: [11] org.eclipse.jetty.server.handler.ContextHandler.doStart() Started o.e.j.s.h.ContextHandler@b1f2850{/,null,AVAILABLE}
2015-06-24 09:10:00.202 INFO: [11] org.eclipse.jetty.server.handler.ContextHandler.doStart() Started o.e.j.s.ServletContextHandler@2a8af07a{/,null,AVAILABLE}
2015-06-24 09:10:00.341 INFO: [11] org.jitsi.videobridge.rest.MuxServerConnector.doStart() Started MuxServerConnector@1b68a97c{SSL-http/1.1}{:::443}
2015-06-24 09:10:00.341 INFO: [11] org.eclipse.jetty.server.Server.doStart() Started @671ms
2015-06-24 09:10:00.346 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ProxyServlet.hostHeader=localhost
2015-06-24 09:10:00.347 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.TCP_HARVESTER_PORT=443
2015-06-24 09:10:00.347 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.RewriteHandler.regex=^/([a-zA-Z0-9]+)$
2015-06-24 09:10:00.347 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ResourceHandler.resourceBase=/usr/share/jitsi-meet
2015-06-24 09:10:00.347 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePath=/etc/jitsi/videobridge/localhost.jks
2015-06-24 09:10:00.347 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ProxyServlet.pathSpec=/http-bind
2015-06-24 09:10:00.347 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.NAT_HARVESTER_LOCAL_ADDRESS=172.17.1.128
2015-06-24 09:10:00.348 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePassword=**********
2015-06-24 09:10:00.348 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.RewriteHandler.replacement=/
2015-06-24 09:10:00.348 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.port=443
2015-06-24 09:10:00.348 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.NAT_HARVESTER_PUBLIC_ADDRESS=192.168.59.103
2015-06-24 09:10:00.348 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.tls.port=443
2015-06-24 09:10:00.355 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() net.java.sip.communicator.SC_HOME_DIR_LOCATION=/usr/share/jitsi-videobridge
2015-06-24 09:10:00.355 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.host=::
2015-06-24 09:10:00.355 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.impl.neomedia.transform.srtp.SRTPCryptoContext.checkReplay=false
2015-06-24 09:10:00.355 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ProxyServlet.proxyTo=http://localhost:5280/http-bind
2015-06-24 09:10:00.355 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ResourceHandler.alias./config.js=/etc/jitsi/meet/localhost-config.js
2015-06-24 09:10:00.355 INFO: [11] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() net.java.sip.communicator.SC_HOME_DIR_NAME=.sip-communicator
2015-06-24 09:10:00.364 INFO: [1] java.util.prefs.run() Created user preferences directory.
2015-06-24 09:10:20.882 INFO: [50] org.jitsi.videobridge.xmpp.ComponentImpl.info() RECV: <iq type=“get” to=“jitsi-videobridge.localhost” from=“focus@auth.localhost/focus206914580784414” id=“MWIQP-15”><con
ference xmlns=“http://jitsi.org/protocol/colibri”><content name=“audio”><channel channel-bundle-id=“3e832d00” initiator=“true” last-n="-1" endpoint=“3e832d00”><payload-type name=“opus” clockrate=“48000” i
d=“111” channels=“2”><parameter value=“10” name=“minptime”/></payload-type><payload-type id=“103” name=“ISAC” clockrate=“16000”/><payload-type id=“104” name=“ISAC” clockrate=“32000”/><payload-type id=“0”
name=“PCMU” clockrate=“8000”/><payload-type id=“8” name=“PCMA” clockrate=“8000”/><payload-type id=“106” name=“CN” clockrate=“32000”/><payload-type id=“105” name=“CN” clockrate=“16000”/><payload-type id=“1
3” name=“CN” clockrate=“8000”/><payload-type id=“126” name=“telephone-event” clockrate=“8000”/><rtp-hdrext id=“1” uri=“urn:ietf:params:rtp-hdrext:ssrc-audio-level”/></channel></content><content name=“vide
o”><channel channel-bundle-id=“3e832d00” initiator=“true” last-n="-1" endpoint=“3e832d00”><payload-type id=“100” name=“VP8” clockrate=“90000”><rtcp-fb xmlns=“urn:xmpp:jingle:apps:rtp:rtcp-fb:0” type=“ccm”
subtype=“fir”/><rtcp-fb xmlns=“urn:xmpp:jingle:apps:rtp:rtcp-fb:0” type=“nack”/><rtcp-fb xmlns=“urn:xmpp:jingle:apps:rtp:rtcp-fb:0” type=“nack” subtype=“pli”/><rtcp-fb xmlns=“urn:xmpp:jingle:apps:rtp:rtc
p-fb:0” type=“goog-remb”/></payload-type><payload-type id=“116” name=“red” clockrate=“90000”/><payload-type id=“117” name=“ulpfec” clockrate=“90000”/><rtp-hdrext id=“2” uri=“urn:ietf:params:rtp-hdrext:tof
fset”/><rtp-hdrext id=“3” uri=“http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time”/></channel></content><content name=“data”><sctpconnection channel-bundle-id=“3e832d00” port=“5000” initiator=“tru
e” endpoint=“3e832d00”/></content><channel-bundle id=“3e832d00”><transport xmlns=“urn:xmpp:jingle:transports:ice-udp:1”><fingerprint xmlns=“urn:xmpp:jingle:apps:dtls:0” required=“false”/></transport></cha
nnel-bundle></conference></iq>
2015-06-24 09:10:20.909 INFO: [50] org.jitsi.videobridge.Videobridge.info() Created conference c8efd725d5adca13. The total number of conferences is now 1, channels 0, video streams 0.
2015-06-24 09:10:20.923 INFO: [50] org.jitsi.videobridge.Conference.info() Created content audio of conference c8efd725d5adca13. The total number of conferences is now 1, channels 0, video streams 0.
2015-06-24 09:10:21.171 INFO: [50] org.ice4j.ice.harvest.MultiplexingTcpHostHarvester.addLocalAddresses() Not using link-local address /fe80:0:0:0:42:acff:fe11:181%eth0 for TCP candidates.
2015-06-24 09:10:21.177 WARNING: [50] org.jitsi.videobridge.IceUdpTransportManager.warn() Failed to initialize TCP harvester on port 443: java.net.BindException: Address already in use.

On 7/24/15, 5:03 AM, "Roberto Andrade" <roberto.andrade@gmail.com> wrote:

Had to export both public/private keys onto a p12 key store and then convert that into a jks for it to work:

cd /etc/jitsi/videobridge
openssl pkcs12 -export -in /etc/prosody/certs/localhost.crt -inkey /etc/prosody/certs/localhost.key -password pass:changeit > localhost.p12
keytool -importkeystore -srckeystore localhost.p12 -destkeystore localhost.jks -srcstoretype pkcs12 -srcstorepass changeit -deststorepass changeit

On 7/23/15, 8:43 PM, "Roberto Andrade" <roberto.andrade@gmail.com> wrote:

Tried JDK 8, nothing.

Get the same error connecting via SSL. I’m importing the self signed certificate that gets installed as part of the prosody setup, shouldn’t matter right?

On 7/23/15, 11:58 AM, "Roberto Andrade" <roberto.andrade@gmail.com> wrote:

Ok, went ahead and tried this to no avail.

Imported the cert to jks:
keytool -import -trustcacerts -alias localhost -file /etc/prosody/certs/localhost.crt -keystore localhost.jks

JVB seems to be running and Jetty as well I can connect to port 443 but get an SSL handshake error either on the browser or via curl. From the logs the only thing I see that is suspicious is a WARNING (at the bottom of the log) regarding JDK8 (should I be running this on that version of Java? the default installed seems to have been 7):

The results of curl:

curl -vv https://localhost
* Rebuilt URL to: https://localhost/
* Hostname was NOT found in DNS cache
* Trying ::1...
* Connected to localhost (::1) port 443 (#0)
* successfully set certificate verify locations:
* CAfile: none
CApath: /etc/ssl/certs
* SSLv3, TLS handshake, Client hello (1):
* Unknown SSL protocol error in connection to localhost:443
* Closing connection 0
curl: (35) Unknown SSL protocol error in connection to localhost:443

jvb.log:

2015-06-23 15:44:33.803 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.runtime.name=OpenJDK Runtime Environment
2015-06-23 15:44:33.803 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.videobridge.xmpp=true
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.boot.library.path=/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.version=24.79-b02
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.impl.neomedia.video.maxbandwidth=2147483647
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.vendor=Oracle Corporation
2015-06-23 15:44:33.804 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vendor.url=http://java.oracle.com/
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.media.MAX_PORT_NUMBER=20000
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() path.separator=:
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.util.logging.config.file=/usr/share/jitsi-videobridge/lib/logging.properties
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.name=OpenJDK 64-Bit Server VM
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() file.encoding.pkg=sun.io
2015-06-23 15:44:33.805 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.country=US
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.java.launcher=SUN_STANDARD
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.os.patch.level=unknown
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.media.DISABLE_AUDIO_SUPPORT=true
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.impl.neomedia.transform.csrc.SsrcTransformEngine.dropMutedAudioSourceInReverseTransform=true
2015-06-23 15:44:33.806 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.specification.name=Java Virtual Machine Specification
2015-06-23 15:44:33.807 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.dir=/
2015-06-23 15:44:33.807 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.runtime.version=1.7.0_79-b14
2015-06-23 15:44:33.807 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.awt.graphicsenv=sun.awt.X11GraphicsEnvironment
2015-06-23 15:44:33.807 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.endorsed.dirs=/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/endorsed
2015-06-23 15:44:33.808 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() os.arch=amd64
2015-06-23 15:44:33.808 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.io.tmpdir=/tmp
2015-06-23 15:44:33.808 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() line.separator=

2015-06-23 15:44:33.809 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.specification.vendor=Oracle Corporation
2015-06-23 15:44:33.809 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() os.name=Linux
2015-06-23 15:44:33.809 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.protocol.MIN_MEDIA_PORT_NUMBER=10000
2015-06-23 15:44:33.809 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.jnu.encoding=ANSI_X3.4-1968
2015-06-23 15:44:33.810 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.CONFIGURATION_FILE_IS_READ_ONLY=true
2015-06-23 15:44:33.810 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.library.path=/usr/share/jitsi-videobridge/lib/native/linux-64
2015-06-23 15:44:33.810 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.videobridge.DISABLE_RETRANSMISSION_REQUESTS=true
2015-06-23 15:44:33.810 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.specification.name=Java Platform API Specification
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.class.version=51.0
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.service.audionotifier.AudioNotifierService=org.jitsi.impl.neomedia.notify.AudioNotifierServiceImpl
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.videobridge.rest=true
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.management.compiler=HotSpot 64-Bit Tiered Compilers
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() os.version=4.0.5-boot2docker
2015-06-23 15:44:33.811 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.home=/usr/share/jitsi-videobridge
2015-06-23 15:44:33.812 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.timezone=Etc/UTC
2015-06-23 15:44:33.812 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.awt.printerjob=sun.print.PSPrinterJob
2015-06-23 15:44:33.812 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() file.encoding=ANSI_X3.4-1968
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.specification.version=1.7
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.media.DISABLE_VIDEO_SUPPORT=true
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.class.path=/usr/share/jitsi-videobridge/jitsi-videobridge.jar:/usr/share/jitsi-videobridge/lib/bccontrib.jar:/usr/share/jitsi-videobridge/lib/bcpkix-jdk15on-151.jar:/usr/share/jitsi-videobridge/lib/bouncycastle.jar:/usr/share/jitsi-videobridge/lib/concurrentlinkedhashmap-lru.jar:/usr/share/jitsi-videobridge/lib/configuration.jar:/usr/share/jitsi-videobridge/lib/dnsservice.jar:/usr/share/jitsi-videobridge/lib/dom4j.jar:/usr/share/jitsi-videobridge/lib/fileaccess.jar:/usr/share/jitsi-videobridge/lib/fmj.jar:/usr/share/jitsi-videobridge/lib/ice4j.jar:/usr/share/jitsi-videobridge/lib/jetty-client-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-http-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-io-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-proxy-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-rewrite-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-security-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-server-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-servlet-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jetty-util-9.2.10.v20150310.jar:/usr/share/jitsi-videobridge/lib/jitsi-android-osgi.jar:/usr/share/jitsi-videobridge/lib/jitsi-lgpl-dependencies.jar:/usr/share/jitsi-videobridge/lib/jna.jar:/usr/share/jitsi-videobridge/lib/json.jar:/usr/share/jitsi-videobridge/lib/libidn.jar:/usr/share/jitsi-videobridge/lib/libjitsi.jar:/usr/share/jitsi-videobridge/lib/netaddr.jar:/usr/share/jitsi-videobridge/lib/osgi.core.jar:/usr/share/jitsi-videobridge/lib/packetlogging.jar:/usr/share/jitsi-videobridge/lib/protocol-jabber.jar:/usr/share/jitsi-videobridge/lib/protocol-media.jar:/usr/share/jitsi-videobridge/lib/protocol.jar:/usr/share/jitsi-videobridge/lib/resourcemanager.jar:/usr/share/jitsi-videobridge/lib/servlet-api-3.1.jar:/usr/share/jitsi-videobridge/lib/sigar.jar:/usr/share/jitsi-videobridge/lib/slf4j-api.jar:/usr/share/jitsi-videobridge/lib/slf4j-jdk14-1.7.7.jar:/usr/share/jitsi-videobridge/lib/smack.jar:/usr/share/jitsi-videobridge/lib/smackx.jar:/usr/share/jitsi-videobridge/lib/tinder.jar:/usr/share/jitsi-videobridge/lib/ui-service.jar:/usr/share/jitsi-videobridge/lib/util.jar:/usr/share/jitsi-videobridge/lib/weupnp-0.1.2-SNAPSHOT.jar:/usr/share/jitsi-videobridge/lib/whack.jar:/usr/share/jitsi-videobridge/lib/xpp3.jar:/usr/share/jitsi-videobridge/lib/zrtp4j.jar
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.name=jvb
2015-06-23 15:44:33.813 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.service.neomedia.AudioMediaStream.DISABLE_DTMF_HANDLING=true
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.specification.version=1.7
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.ice4j.ice.harvest.DISABLE_LINK_LOCAL_ADDRESSES=true
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.java.command=org.jitsi.videobridge.Main --host=localhost --domain=localhost --port=5347 --secret=16x@##7h --apis=rest,xmpp
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.home=/usr/lib/jvm/java-7-openjdk-amd64/jre
2015-06-23 15:44:33.814 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.arch.data.model=64
2015-06-23 15:44:33.815 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() user.language=en
2015-06-23 15:44:33.815 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.specification.vendor=Oracle Corporation
2015-06-23 15:44:33.815 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() awt.toolkit=sun.awt.X11.XToolkit
2015-06-23 15:44:33.815 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vm.info=mixed mode
2015-06-23 15:44:33.816 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.version=1.7.0_79
2015-06-23 15:44:33.816 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.ext.dirs=/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/ext:/usr/java/packages/lib/ext
2015-06-23 15:44:33.816 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.boot.class.path=/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/resources.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/rt.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/sunrsasign.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/jsse.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/jce.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/charsets.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/rhino.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/jfr.jar:/usr/lib/jvm/java-7-openjdk-amd64/jre/classes
2015-06-23 15:44:33.816 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.awt.headless=true
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vendor=Oracle Corporation
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() file.separator=/
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() java.vendor.url.bug=http://bugreport.sun.com/bugreport/
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.io.unicode.encoding=UnicodeLittle
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.cpu.endian=little
2015-06-23 15:44:33.817 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() org.jitsi.impl.neomedia.transform.srtp.SRTPCryptoContext.checkReplay=false
2015-06-23 15:44:33.818 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.media.MIN_PORT_NUMBER=10000
2015-06-23 15:44:33.818 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() net.java.sip.communicator.service.protocol.MAX_MEDIA_PORT_NUMBER=20000
2015-06-23 15:44:33.818 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() sun.cpu.isalist=
2015-06-23 15:44:33.819 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() Normal classloader
2015-06-23 15:44:33.819 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() failed to find jitsi-defaults.properties with class loader, will continue without it.
2015-06-23 15:44:33.820 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() Normal classloader
2015-06-23 15:44:33.820 INFO: [9] org.jitsi.impl.configuration.ConfigurationServiceImpl.info() failed to find jitsi-default-overrides.properties with class loader, will continue without it.
2015-06-23 15:44:33.906 INFO: [9] impl.resources.ResourceManagementActivator.start().70 Resource manager STARTED
2015-06-23 15:44:33.907 INFO: [9] impl.resources.ResourceManagementActivator.start().79 Resource manager REGISTERED
2015-06-23 15:44:33.939 INFO: [9] impl.netaddr.NetworkAddressManagerServiceImpl.start().81 Network Address Manager ...[ STARTED ]
2015-06-23 15:44:33.940 INFO: [9] impl.netaddr.NetworkAddressManagerServiceImpl.start().87 Network Address Manager Service ...[REGISTERED]
2015-06-23 15:44:33.944 INFO: [9] impl.packetlogging.PacketLoggingActivator.start().89 Packet Logging Service ...[REGISTERED]
2015-06-23 15:44:33.956 INFO: [9] org.jitsi.videobridge.metrics.MetricLoggingHandler.info() Metric services enabled: 0
2015-06-23 15:44:34.109 INFO: [9] org.jitsi.videobridge.version.VersionActivator.start().76 Jitsi Videobridge Version: JVB 0.1.474
2015-06-23 15:44:34.166 INFO: [9] org.eclipse.jetty.util.log.initialized() Logging initialized @556ms
2015-06-23 15:44:34.265 INFO: [9] org.eclipse.jetty.server.Server.doStart() jetty-9.2.10.v20150310
2015-06-23 15:44:34.279 INFO: [9] org.eclipse.jetty.server.handler.ContextHandler.doStart() Started o.e.j.s.h.ContextHandler@53d8337b{/,null,AVAILABLE}
2015-06-23 15:44:34.285 INFO: [9] org.eclipse.jetty.server.handler.ContextHandler.doStart() Started o.e.j.s.ServletContextHandler@73cee4bb{/,null,AVAILABLE}
2015-06-23 15:44:34.288 WARNING: [9] org.ice4j.socket.MuxServerSocketChannelFactory.<clinit>() ICE4J does not support sharing of listening endpoints (probably because it is not running on JDK 8).
2015-06-23 15:44:34.524 INFO: [9] org.jitsi.videobridge.rest.MuxServerConnector.doStart() Started MuxServerConnector@2fcf1d75{SSL-http/1.1}{:::443}
2015-06-23 15:44:34.524 INFO: [9] org.eclipse.jetty.server.Server.doStart() Started @919ms
2015-06-23 15:44:34.530 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePassword=**********
2015-06-23 15:44:34.530 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ResourceHandler.alias./config.js=/etc/jitsi/meet/localhost-config.js
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ProxyServlet.pathSpec=/http-bind
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.tls.port=443
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.TCP_HARVESTER_PORT=443
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.RewriteHandler.replacement=/
2015-06-23 15:44:34.531 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ResourceHandler.resourceBase=/usr/share/jitsi-meet
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.host=::
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.RewriteHandler.regex=^/([a-zA-Z0-9]+)$
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() net.java.sip.communicator.SC_HOME_DIR_LOCATION=/usr/share/jitsi-videobridge
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ProxyServlet.proxyTo=http://localhost:5280/http-bind
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.port=443
2015-06-23 15:44:34.532 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.ProxyServlet.hostHeader=localhost
2015-06-23 15:44:34.533 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() net.java.sip.communicator.SC_HOME_DIR_NAME=.sip-communicator
2015-06-23 15:44:34.533 INFO: [9] org.jitsi.videobridge.osgi.OSGiBundleActivator.info() org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePath=/etc/jitsi/videobridge/localhost.jks

On 7/22/15, 10:50 AM, "dev on behalf of Damian Minkov" <dev-bounces@jitsi.org on behalf of damencho@jitsi.org> wrote:

Hi,

as Emil pointed we will add this as default to the meet installation
soon. All the code that serves it, is there, but to do this manually
is not a straight forward task.
You need to stop nginx and configure jitsi-videobridge to serve meet.

1. Add prosody certificates to java keystore
2. Configure authbind to allow jvb to use port 443
3. And configure jvb itself in
/usr/share/jitsi-videobridge/.sip-communicator/sip-communicator.properties
org.jitsi.videobridge.rest.jetty.host=::
org.jitsi.videobridge.rest.jetty.port=443
org.jitsi.videobridge.rest.jetty.ProxyServlet.hostHeader=example.meet.jit.si
org.jitsi.videobridge.rest.jetty.ProxyServlet.pathSpec=/http-bind
org.jitsi.videobridge.rest.jetty.ProxyServlet.proxyTo=http://localhost:5280/http-bind
org.jitsi.videobridge.rest.jetty.ResourceHandler.resourceBase=/usr/share/jitsi-meet
org.jitsi.videobridge.rest.jetty.ResourceHandler.alias./config.js=/etc/jitsi/meet/example.meet.jit.si-config.js
org.jitsi.videobridge.rest.jetty.RewriteHandler.regex=^/([a-zA-Z0-9]+)$
org.jitsi.videobridge.rest.jetty.RewriteHandler.replacement=/
org.jitsi.videobridge.rest.jetty.tls.port=443
org.jitsi.videobridge.TCP_HARVESTER_PORT=443
org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePath=/etc/jitsi/videobridge/example.meet.jit.si.jks
org.jitsi.videobridge.rest.jetty.sslContextFactory.keyStorePassword=changeit
4. You need to start jvb with rest and xmpp interface running. Add the
following to jvb config in etc:
JVB_OPTS="--apis=rest,xmpp"
AUTHBIND=yes

Hope this helps

Regards
damencho

On Wed, Jul 22, 2015 at 9:14 AM, Roberto Andrade >>>>>>><roberto.andrade@gmail.com> wrote:

Ok, glad to hear. So how do I go about fetching this latest default installation scripts to be able to have an environment with the Option B setup?

On 7/22/15, 10:05 AM, "dev on behalf of Emil Ivov" <dev-bounces@jitsi.org on behalf of emcho@jitsi.org> wrote:

On Wed, Jul 22, 2015 at 3:56 PM, Roberto Andrade >>>>>>>>><roberto.andrade@gmail.com> wrote:

Ok, makes sense. I had originally reported this as an issue on github because I felt like this was missing from either the instructions (quick or manual) or the default installation script.

The latest default installation scripts should end up putting you in
Option B which would solve your problem.

Given that the default install has node/nginx one the same box as the bridge, option B in this case wouldn’t be a viable one as you’d lose a way to serve the jitsi-meet web site, no? Or will JVB proxy traffic and route to the node app too? And do the same http-bind forwarding to prosody as well?

JVB now ships together with jetty which serves Meet and also allows
you to connect to prosody.

On option A I guess traditionally you’d keep both the frontend and the different backends on different servers so naturally would have a different IP to talk to avoiding the conflict.

Right.

Shouldn’t there be instructions on either the jitsi-meet or the jitsi-videobridge repos describing this capability and how to take advantage of it?

That's supposed to be the default in the debian package but we are not
there yet. We'll try to make this happen soon.

Emil

Roberto

On 7/22/15, 9:30 AM, "dev on behalf of Emil Ivov" <dev-bounces@jitsi.org on behalf of emcho@jitsi.org> wrote:

Hey Roberto,

On Wed, Jul 22, 2015 at 3:25 PM, Roberto Andrade >>>>>>>>>>><roberto.andrade@gmail.com> wrote:

Ok, let me try to get this straight.

I’m talking about the setup that gets configured when you perform the quick install routines. It setups up prosody, jitsi-videobridge, jitsi-meet, jocofo and nginx.

I noticed nginx config is setup to listen on ports 80/443 and forward traffic coming in either for requests on /http-bind to the prosody 5280 port.

The bridge is configured to run on port 5347 but it’s currently not exposed to the internet.

From what I understand the bridge also accepts incoming requests on udp ports 10000-20000 so I exposed those in addition to 80/443.

Now, when it comes to the TCP relaying functionality you speak of, if the bridge will include an ICE candidate with the public IP and port 443 that will hit the nginx server which would need to forward that traffic onto the bridge (on port 5347?), no? How would one go about configuring such thing in nginx (should that already be part of the configuration scripts once you install that via the debian recipe?)?

What Boris meant was that there is no way to get your media through
nginx. At least I am not aware of one.

What you need to do is either:

A) Use separate IP addresses so that both JVB and nginx would be able
to listen on 443 without fighting for it or
B) You get rid of nginx and use JVB as both a media and a web server.
JVB supports that.

We implemented support for option B in order to solve cases exactly like yours.

Emil

Thanks in advance,

Roberto

On 7/22/15, 7:47 AM, "dev on behalf of Boris Grozev" <dev-bounces@jitsi.org on behalf of boris@jitsi.org> wrote:

On 22/07/15 06:13, Roberto Andrade wrote:

Ok. So wouldn't the nginx server then need to be configured to somehow
forward relevant traffic to the bridge rather than serving it as a
regular http/s request?

You can either use a separate IP address for the bridge or use the newly
added HTTP/media demultiplexing in the bridge (essentially replace nginx
with videobridge).

Regards,
Boris

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

--
https://jitsi.org

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

--
https://jitsi.org

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev