You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 4 Next »

Introduction

The following page explains the networking information and requirements that must be considered if the jtel Container Stack is located OnPrem.

General Information

During the basic installation of a jtel Container Stack, a firewall is configured locally. This firewall blocks all incoming traffic unless specifically instructed otherwise.

To connect SBCs, PBXs or SIP-Trunks. the IP-Address must be specifically allowed in the firewall rules.

Outgoing traffic is generally not blocked.

Glossary

Hostname (Alias)Function
acd-stackThe jtel Container Stack
sbcThe SBC 
pbxThe PBX
trunkSIP Trunk
fwThe Firewall/s
fqdn

Fully Qualified Domain Name

Example: jtelacd.jtel.online

vscode

VS Code Server 

Provides Fileshare access to maintenance staff

DNS Requirements

The customer must provide a Fully Qualified Domain Name (FQDN) for the stack, as well as

  • DNS A record pointing FQDN to the VM's IP address
  • DNS must be resolvable from both internal network and internet (if external access required)
  • Wildcard or additional DNS records for subdomains:
    • vscode.<FQDN> (VS Code Server, optional)
    • <FQDN> (main web interface)

Firewall - Required Inbound Ports

The customer's network firewall must allow the following inbound traffic to the VM:

Administrative Access

PortProtocolPurposeSource
22TCPSSH (system administration)JTEL support IPs or customer admin network

Web Interface

PortProtocolPurposeSource
80TCPHTTP (redirects to HTTPS)End users (agents, supervisors)
443TCPHTTPS (main web interface)End users (agents, supervisors)

SIP Telephony (Primary FreeSWITCH)

PortProtocolPurposeSource
5060TCP/UDPSIP signaling (unencrypted)SIP trunks, PBX, softphones
5061TCPSIP over TLS (encrypted signaling)SIP trunks, PBX, softphones
30000-34999UDPRTP media streams (voice/audio)SIP endpoints, media gateways

Note: RTP port range (30000-34999) = 5000 ports = supports up to ~2500 concurrent calls

Session Border Controller (Optional)

PortProtocolPurposeSource
15060TCP/UDPSBC SIP signalingExternal SIP trunks (if SBC is used)
15000-15059UDPSBC RTP media streamsExternal SIP endpoints (if SBC is used)

When to use SBC

  • Connecting to external/untrusted SIP trunks
  • NAT traversal required
  • Security boundary between internal PBX and external carriers

Firewall - Required Outbound Access

The VM requires unrestricted outbound internet access for the following:

Container Registry Access

DestinationPortProtocolPurpose
dockerhub.jtel.de or jtelacr.azurecr.io443HTTPSPull Docker container images

Critical: Without registry access, the stack cannot start or update.

Azure Blob Storage (Backup)

DestinationPortProtocolPurpose
*.blob.core.windows.net443HTTPSDaily automated backups, disaster recovery

Git Repository Access

DestinationPortProtocolPurpose
bitbucket.org22SSHFetch configuration updates, GitOps workflow

Note: Used during initial provisioning and for configuration management.

Let's Encrypt (SSL Certificates)

DestinationPortProtocolPurpose
acme-v02.api.letsencrypt.org443HTTPSAutomatic SSL certificate issuance and renewal

Operating System Updates

DestinationPortProtocolPurpose
deb.debian.org, security.debian.org80, 443HTTP/HTTPSSecurity updates, package installation

Azure OAuth2 (Optional)

DestinationPortProtocolPurpose
login.microsoftonline.com443HTTPSAzure AD authentication for VS Code Server

AI Services

DestinationPortProtocolPurpose
api.openai.com443HTTPSGPT-based summarization, RAG chatbot (if enabled)
api.mistral.ai443HTTPSAlternative LLM provider (if enabled)

Note: AI services are disabled by default (DONT_PULL_HEAVYWEIGHTS=true). Enable only if customer subscribed to AI features.

Proxy Configuration

Direct Internet Access Required

The current stack version does NOT support HTTP/HTTPS proxy configuration. The VM requires:

  • Direct outbound access to all destinations listed in section 3.4
  • No transparent proxy
  • No SSL/TLS inspection

Future Enhancement: Proxy support may be added in future versions.

3.6 NAT Considerations

Outbound NAT: Supported (VM can be behind NAT for outbound traffic)

Inbound NAT/Port Forwarding:

  • If VM is on private network, configure port forwarding on firewall/router
  • Map external ports to VM's internal IP
  • Ensure RTP port range (30000-34999) is correctly forwarded
  • Hairpin NAT must be supported if external users call each other

Specific Systems

Connections that every system uses.

DescriptionProtocolSourcePortDestinationPorts / PortrangeDescription
https AccessTCPAny (jtel Support)Anyacd-stack443https Access to Webservers and SOAP / REST APIs via Load-Balancer.
SIPTCP / UDPPBX / SBC / SIP TrunkAnyacd-stack5060SIP communication port for telephony signalling.
SIPSTCP PBX / SBC / SIP TrunkAnyacd-stack5061SIPS communication port for telephony signalling.
haproxy WebTCPAny (jtel Support)Anyacd-stack7777Port used for HTTP access to the HaProxy admin GUI.
RTPUDPPBX / SBC / SIP TrunkAnyacd-stack30000-34999RTP communication ports for audio / video data.

Specific Systems

Connections that specific systems use, depending on the additional modules being used.

DescriptionProtocolSourcePortDestinationPorts / PortrangeDescription
Websocket ChatTCPAnyAnyacd-stack3000The chat-server port if http is being used to access the chat server from external.
Websocket ChatTCPAnyAnyacd-stack3003The chat-server port if https is being used to access the chat server from external.
Reporting APITCPAny Reporting API usersAny

acd-stack

3306-3308

Used to provide reporting API access to the database for BI applications.

Outgoing Traffic

The traffic documented here is a general overview. Some components may not apply to your installation.

Legacy

Windows Machines

In some cases, for example TAPI Monitoring services, a windows machine might still be installed. In this case, the following ports must be opened to enable the jtel service to access this machine


DescriptionProtocolSourcePort(s)DestinationPort(s)Description
Remote AccessTCP + UDP

jtel Support

AnyAll Windows3389

RDP remote Access to Windows Systems.















































































DescriptionProtocolSourcePortDestinationPort(s)Required for Non-Redundant SystemsRequired for Redundant SystemsDescription
pcs ClusterTCP

ACD-LB
ACD-STORE

Any

ACD-LB
ACD-STORE

2224NoYes

Ports used for communication between the pcs cluster members.

Required on all nodes (needed by the pcsd Web UI and required for node-to-node communication)
It is crucial to open port 2224 in such a way that pcs from any node can talk to all nodes in the cluster, including itself. When using the Booth cluster ticket manager or a quorum device you must open port 2224 on all related hosts, such as Booth arbiters or the quorum device host.

Chat ServerTCPACD-LBAnyACD-CHAT3000YesYesWebsocket for chat server
Database AccessTCPAnyAnyACD-LB3306NoYesRedirect port to master database
Database AccessTCPAnyAnyACD-LB3307NoYesRedirect port to slave database used for real-time reporting
Database AccessTCPAnyAnyACD-LB3308NoYesRedirect port to slave database used for historical reporting
pcs ClusterTCP

ACD-LB
ACD-STORE

Any

ACD-LB
ACD-STORE

3121NoYes

Ports used for communication between the pcs clusters members.

Required on all nodes if the cluster has any Pacemaker Remote nodes.

Pacemaker's crmd daemon on the full cluster nodes will contact the pacemaker_remoted daemon on Pacemaker Remote nodes at port 3121. If a separate interface is used for cluster communication, the port only needs to be open on that interface. At a minimum, the port should open on Pacemaker Remote nodes to full cluster nodes. Because users may convert a host between a full node and a remote node, or run a remote node inside a container using the host's network, it can be useful to open the port to all nodes. It is not necessary to open the port to any hosts other than nodes.

Telephony ServersUDPPBX / SBC / SIP TrunkAnyACD-TEL5060YesYesPort used for SIP 
pcs ClusterTCP

ACD-LB
ACD-STORE

Any

ACD-LB
ACD-STORE

5403NoYes

Ports used for communication between the pcs clusters members.

Required on the quorum device host when using a quorum device with corosync-qnetd. The default value can be changed with the -p option of the corosync-qnetd command.

pcs ClusterUDP

ACD-LB
ACD-STORE

Any

ACD-LB
ACD-STORE

5404NoYes

Ports used for communication between the pcs clusters members.

Required on corosync nodes if corosync is configured for multicast UDP

pcs ClusterUDP

ACD-LB
ACD-STORE

Any

ACD-LB
ACD-STORE

5405NoYes

Ports used for communication between the pcs clusters members.

Required on all corosync nodes (needed by corosync)

Hazelcast ClusterTCP

ACD-DBM
ACD-TEL
ACD-JB
ACD-CHAT

Any

ACD-DBM
ACD-TEL
ACD-JB
ACD-CHAT

5701 - 5801YesYesHazelcast cluster ports. 
Web Server AccessTCPAnyAnyACD-JB8080YesYeshttp server port for accessing the webserver.
REST Service AccessTCPACD-LBAnyACD-REST8091YesYesRest interface
pcs clusterTCP, UDP

ACD-LB
ACD-STORE

Any

ACD-LB
ACD-STORE

9929NoYesRequired to be open on all cluster nodes and booth arbitrator nodes to connections from any of those same nodes when the Booth ticket manager is used to establish a multi-site cluster.
Telephony ServersUDPACD-TELAnyACD-TEL20202NoYesIf building a cluster with more than one telephony server, this is the broadcast port used for interchassis communication and discovery.
Web Server CommunicationUDPACD-JBAnyACD-JB20640YesYes

When changing slides in the presentation, this port is used to send the information to the other web servers.

The 8-Server sends information to the web servers so that the information of the current conference call is displayed in the browser.

This setting can be found in the parameters:

ConfServer.WebServer.UDP.Port

Webserver conference control of telephony

UDPACD-JBAnyACD-TEL20641YesYes

Used for controlling telephone conferences from the web application.

ConfServer.Daemon.UDP.r5 must be running on the target telephony server. The actual destination for the message is determined dynamically by the web application.

This setting can be found in the parameters:

ConfServer.Daemon.UDP.Port

Telephony Servers - TTS generationUDPAnyAny

ACD-TEL

20643

Yes

Yes

IP address and port of the telephony server on which the TTS daemon is running (only for installations with TTS installed). Used to initiate ad-hoc tts generation.

This setting can be found in the parameters:

Portal.Daemon.TTS.UDP.Address
Portal.Daemon.TTS.UDP.Port

Event generation for APIsUDP

Any

Any

ACD-JB
ACD-REST
ACD-TEL

20644YesYes

Communication from event producers to the hazelcast cluster on change of various status for signaling events via the APIs or internally.

The PlatformUDPListener must run on the corresponding target computers. If running on the source itself, no port will need to be opened between the servers.

This setting can be found in the parameters:

ACD.UDP.MediaEventsListener.Address
ACD.UDP.Webserver.Address

Call initiation and call controlUDP

Any

AnyACD-TEL20645

Yes

Yes

Communication from servers to the daemon process for ACD and call control.

Note: The daemon ACD.Daemon.UDP.r5 must run on the corresponding ACD-TEL server.

This setting can be found in the parameters:

dialler.8Servers.IPs
ACD.UDP.Daemon.Address
ACD.UDP.Daemon.Port

TAPI call forwarding and redirection controlUDPAnyAnyACD-TEL40404YesYes

Used to control the call forwarding settings in the PBX via the PBX connector (usually ECSTA or a multi-line TAPI).

This setting can be found in the parameters:

Portal.JTELTAPIServer.UDP.Address
Portal.JTELTAPIServer.UDP.Port

Call initiation via PBX connectorUDPACD-JBAnyACD-TEL40406

Yes

Yes

The IP address of the PBX-Connector, if outdials are to be initiated via the PBX connector and not via the telephony server.

This setting can be found in the parameters:

dialler.ClickToCall.UDP.Connector.Host
dialler.ClickToCall.UDP.Connector.Port

Recommendation: set dialler.ClickToCall.UDP.Connector.Host EMPTY if the telephony server is to be used for outdial requests.

Otherwise when set then ALL click-to-cial commands will be sent directly to the PBX connector.

  • No labels