Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Document what ports must be permitted through firewall (and NAT) #203

Closed
vorburger opened this issue Mar 13, 2020 · 4 comments · Fixed by #205
Closed

Document what ports must be permitted through firewall (and NAT) #203

vorburger opened this issue Mar 13, 2020 · 4 comments · Fixed by #205

Comments

@vorburger
Copy link
Contributor

I'm trying to figure out which ports must be externally open and e.g. permit through an Firewall (both on the firewalld on a Fedora Server, or a VM on some Cloud Provider, or e.g. port forwarded on a home router doing NAT from a public IP to a 192.168.1.x). Being a noob and not understanding much of WebRTC and Jitsi internal architecture, and just based on this output of docker ps ...

$ sudo docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                                              NAMES
7607ce4c1628        jitsi/jvb           "/init"             2 hours ago         Up 2 hours          0.0.0.0:4443->4443/tcp, 0.0.0.0:10000->10000/udp   docker-jitsi-meet_jvb_1
ec6a709e6706        jitsi/jicofo        "/init"             2 hours ago         Up 2 hours                                                             docker-jitsi-meet_jicofo_1
5f68b25b3767        jitsi/prosody       "/init"             2 hours ago         Up 2 hours          5222/tcp, 5269/tcp, 5280/tcp, 5347/tcp             docker-jitsi-meet_prosody_1
3c9562f8ad8b        jitsi/web           "/init"             2 hours ago         Up 2 hours          0.0.0.0:8000->80/tcp, 0.0.0.0:8443->443/tcp        docker-jitsi-meet_web_1

... I'm guessing that ports 8000 & 8443 (which I'm about to change to 80 and 443...) and also 4443 and 10000 must be open, but not those 5222/tcp, 5269/tcp, 5280/tcp, 5347/tcp on "prosody" - are those just internal among the containers, but not externally needed?

I've tried to figure this out staring at https://github.com/jitsi/docker-jitsi-meet#architecture, but I don't see the 4443 there ... plus there is 20000-20050 there, does that range need to be open? And does it mean only 50 clients can connect? 😄

@saghul would you know and be willing to confirm above or correct me? In exchange I'll make a contribution to the README to clarify this... 😄 If this is already explained on some other doc in the Jitsi project, I'd love to read it, and link it from the README.

@saghul
Copy link
Member

saghul commented Mar 13, 2020

... I'm guessing that ports 8000 & 8443 (which I'm about to change to 80 and 443...)

Correct. Those are for HTTP(S).

443 and 10000 must be open

Correct. Those are for RTP media over TCP and UDP.

but not those 5222/tcp, 5269/tcp, 5280/tcp, 5347/tcp on "prosody" - are those just internal among the containers, but not externally needed?

Correct, those are only internally used.

I've tried to figure this out staring at https://github.com/jitsi/docker-jitsi-meet#architecture, but I don't see the 4443 there ... plus there is 20000-20050 there, does that range need to be open? And does it mean only 50 clients can connect? 😄

4443 is not there for simplicity. Also, if UDP doesn't work the experience will be quite bad... As for the 20000-20050 that's the range for jigasi, in case you choose to deploy that to facilitate SIP access, but that's not necessary. If you choose to, 2 ports per active SIP call will be necessary.

In exchange I'll make a contribution to the README to clarify this... 😄

Thank you!

@vorburger
Copy link
Contributor Author

OK so that means that (for a deployment without jigasi to facilitate SIP access) it's just 3-4 ports, namely:

  • 80/tcp for Web UI HTTP (really just to redirect, after uncommenting ENABLE_HTTP_REDIRECT=1 in .env)
  • 443/tcp for Web UI HTTPS
  • 4443/tcp for RTP media over TCP
  • 10000/udp for RTP media over UDP

Also, if UDP doesn't work the experience will be quite bad...

just to clarify / avoid misunderstanding, here you just meant the 10000/udp, right ?

@saghul
Copy link
Member

saghul commented Mar 14, 2020

just to clarify / avoid misunderstanding, here you just meant the 10000/udp, right ?

Correct.

@saghul
Copy link
Member

saghul commented Mar 14, 2020

Continuing on #205

@saghul saghul closed this as completed Mar 14, 2020
vorburger added a commit to vorburger/docker-jitsi-meet that referenced this issue Mar 15, 2020
vorburger added a commit to vorburger/docker-jitsi-meet that referenced this issue Mar 15, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants