Add support for 'Skype for Business Online' and 'Microsoft Teams'.
This commit is contained in:
parent
0f2676eea6
commit
577eaa27c4
@ -208,6 +208,25 @@ standard_webex_udp_ports="9000"
|
||||
standard_webex_tcp_fall_back_ports="5004"
|
||||
|
||||
|
||||
# - Skype for Business Online und Microsoft Teams
|
||||
# -
|
||||
# - see: https://docs.microsoft.com/de-de/microsoft-365/enterprise/urls-and-ip-address-ranges?view=o365-worldwide#skype-for-business-online-and-microsoft-teams
|
||||
# -
|
||||
# - TCP 80,443
|
||||
# -
|
||||
# - UDP 3478,3479,3480,3481 --> 13.107.64.0/18, 52.112.0.0/14, 52.120.0.0/14
|
||||
# -
|
||||
standard_ms_skype_teams_tcp_ports="80,443"
|
||||
standard_ms_skype_teams_udp4_ports="3478,3479,3480,3481"
|
||||
standard_ms_skype_teams_udp4_hosts="
|
||||
13.107.64.0/18
|
||||
52.112.0.0/14
|
||||
52.120.0.0/14
|
||||
"
|
||||
standard_ms_skype_teams_udp6_ports=""
|
||||
standard_ms_skype_teams_udp6_hosts=""
|
||||
|
||||
|
||||
# - Zoom Meeting - Video Conference Service
|
||||
# -
|
||||
# - TCP 80,443 A ll Zoom Clients and *.zoom.us
|
||||
|
@ -920,6 +920,20 @@ bigbluebutton_tcp_ports="$standard_bigbluebutton_tcp_ports"
|
||||
bigbluebutton_udp_ports="$standard_bigbluebutton_udp_port_range"
|
||||
|
||||
|
||||
# ======
|
||||
# - Skype for Business Online und Microsoft Teams
|
||||
# ======
|
||||
|
||||
# - Skype for Business Online und Microsoft Teams
|
||||
# -
|
||||
# - TCP 80,443
|
||||
# -
|
||||
# - UDP 3478,3479,3480,3481 --> 13.107.64.0/18, 52.112.0.0/14, 52.120.0.0/14
|
||||
# -
|
||||
ms_skype_teams_tcp_ports="$standard_ms_skype_teams_tcp_ports"
|
||||
ms_skype_teams_udp4_ports="$standard_ms_skype_teams_udp6_ports"
|
||||
ms_skype_teams_udp4_hosts="$standard_ms_skype_teams_udp4_hosts"
|
||||
|
||||
|
||||
# ======
|
||||
# - Webex Meeting
|
||||
@ -1550,6 +1564,7 @@ allow_mumble_request_out=true
|
||||
allow_outbound_streaming=true
|
||||
allow_echo360_video_streaming=true
|
||||
allow_bigbluebutton_video_conference_out=true
|
||||
allow_ms_skype_teams_out=true
|
||||
allow_webex_video_conference_out=true
|
||||
allow_zoom_video_conference_out=true
|
||||
allow_jitsi_video_conference_out=true
|
||||
|
@ -891,6 +891,18 @@ bigbluebutton_tcp_ports="$standard_bigbluebutton_tcp_ports"
|
||||
bigbluebutton_udp_ports="$standard_bigbluebutton_udp_port_range"
|
||||
|
||||
|
||||
# ======
|
||||
# - Skype for Business Online und Microsoft Teams
|
||||
# ======
|
||||
|
||||
# - Skype for Business Online und Microsoft Teams
|
||||
# -
|
||||
# - TCP 80,443
|
||||
# -
|
||||
ms_skype_teams_tcp_ports="$standard_ms_skype_teams_tcp_ports"
|
||||
ms_skype_teams_udp6_ports="$standard_ms_skype_teams_udp6_ports"
|
||||
ms_skype_teams_udp6_hosts="$standard_ms_skype_teams_udp6_hosts"
|
||||
|
||||
|
||||
# ======
|
||||
# - Webex Meeting
|
||||
@ -1466,6 +1478,7 @@ allow_outbound_streaming=true
|
||||
allow_echo360_video_streaming=true
|
||||
allow_alfaview_video_conference_out=true
|
||||
allow_bigbluebutton_video_conference_out=true
|
||||
allow_ms_skype_teams_out=true
|
||||
allow_webex_video_conference_out=true
|
||||
allow_zoom_video_conference_out=true
|
||||
allow_jitsi_video_conference_out=true
|
||||
|
@ -632,7 +632,7 @@ _tmp_tcp_ports="$bigbluebutton_tcp_ports"
|
||||
bigbluebutton_tcp_ports=""
|
||||
declare -i count=0
|
||||
IFS=',' ; for _port in $_tmp_tcp_ports ; do
|
||||
if containsElement "${_port}" "${standard_http_port_arr[@]}" ; then
|
||||
if $allow_http_request_out && containsElement "${_port}" "${standard_http_port_arr[@]}" ; then
|
||||
continue
|
||||
fi
|
||||
if [[ $count -eq 0 ]]; then
|
||||
@ -645,6 +645,48 @@ done
|
||||
IFS="$CUR_IFS"
|
||||
|
||||
|
||||
# ---
|
||||
# - Skype for Business Online und Microsoft Teams
|
||||
# ---
|
||||
CUR_IFS="$IFS"
|
||||
declare -a ms_skype_teams_udp4_host_arr
|
||||
declare -a ms_skype_teams_udp6_host_arr
|
||||
declare -a ms_skype_teams_udp4_port_arr
|
||||
declare -a ms_skype_teams_udp6_port_arr
|
||||
declare -a ms_skype_teams_tcp_port_arr
|
||||
if [[ -n "$ms_skype_teams_udp4_hosts" ]]; then
|
||||
for _host in $ms_skype_teams_udp4_hosts ; do
|
||||
ms_skype_teams_udp4_host_arr+=("$_host")
|
||||
done
|
||||
fi
|
||||
if [[ -n "$ms_skype_teams_udp6_hosts" ]]; then
|
||||
for _host in $ms_skype_teams_udp6_hosts ; do
|
||||
ms_skype_teams_udp6_host_arr+=("$_host")
|
||||
done
|
||||
fi
|
||||
IFS=',' ; for _port in $ms_skype_teams_udp4_ports ; do
|
||||
if containsElement "${_port}" "${standard_turn_service_port_arr[@]}" ; then
|
||||
continue
|
||||
fi
|
||||
ms_skype_teams_udp_port4_arr+=("$_port")
|
||||
done
|
||||
IFS="$CUR_IFS"
|
||||
IFS=',' ; for _port in $ms_skype_teams_udp6_ports ; do
|
||||
if containsElement "${_port}" "${standard_turn_service_port_arr[@]}" ; then
|
||||
continue
|
||||
fi
|
||||
ms_skype_teams_udp_port6_arr+=("$_port")
|
||||
done
|
||||
IFS="$CUR_IFS"
|
||||
IFS=',' ; for _port in $ms_skype_teams_tcp_ports ; do
|
||||
if $allow_http_request_out && containsElement "${_port}" "${standard_http_port_arr[@]}" ; then
|
||||
continue
|
||||
fi
|
||||
ms_skype_teams_tcp_port_arr+=("$_port")
|
||||
done
|
||||
IFS="$CUR_IFS"
|
||||
|
||||
|
||||
# ---
|
||||
# Zoom Meetings - Video Conference - adjust 'zoom_tcp_ports'
|
||||
# ---
|
||||
|
@ -3120,6 +3120,7 @@ if $allow_outbound_streaming \
|
||||
|| $allow_echo360_video_streaming \
|
||||
|| $allow_bigbluebutton_video_conference_out \
|
||||
|| $allow_webex_video_conference_out \
|
||||
|| $allow_ms_skype_teams_out \
|
||||
|| $allow_zoom_video_conference_out \
|
||||
|| $allow_jitsi_video_conference_out \
|
||||
|| $allow_alfaview_video_conference_out \
|
||||
@ -3206,6 +3207,52 @@ else
|
||||
fi
|
||||
|
||||
|
||||
# ---
|
||||
# - Skype for Business Online und Microsoft Teams
|
||||
# ---
|
||||
|
||||
echononl "\t\tSkype for Business Online und Microsoft Teams"
|
||||
|
||||
if $allow_ms_skype_teams_out \
|
||||
&& ( [[ ${#ms_skype_teams_udp6_host_arr[@]} -gt 0 ]] && [[ ${#ms_skype_teams_udp_port_arr[@]} -gt 0 ]] ) \
|
||||
|| [[ ${#ms_skype_teams_tcp_port_arr[@]} -gt 0 ]] ; then
|
||||
|
||||
for _dev in ${ext_if_arr[@]} ; do
|
||||
|
||||
if [[ ${#ms_skype_teams_udp6_host_arr[@]} -gt 0 ]] && [[ ${#ms_skype_teams_udp_port_arr[@]} -gt 0 ]] ; then
|
||||
|
||||
for _host in ${ms_skype_teams_udp6_host_arr[@]} ; do
|
||||
|
||||
for _port in ${ms_skype_teams_udp_port_arr[@]} ; do
|
||||
|
||||
$ip6t -A OUTPUT -o $_dev -p udp -d $_host -dport $_port -m conntrack --ctstate NEW -j ACCEPT
|
||||
if $kernel_forward_between_interfaces && ! $permit_local_net_to_inet ; then
|
||||
$ip6t -A FORWARD -o $_dev -p udp -d $_host -dport $_port -m conntrack --ctstate NEW -j ACCEPT
|
||||
fi
|
||||
done
|
||||
|
||||
done
|
||||
fi
|
||||
|
||||
if [[ ${#ms_skype_teams_tcp_port_arr[@]} -gt 0 ]] ; then
|
||||
|
||||
for _port in ${ms_skype_teams_tcp_port_arr[@]} ; do
|
||||
|
||||
$ip6t -A OUTPUT -o $_dev -p udp -d $_host -dport $_port -m conntrack --ctstate NEW -j ACCEPT
|
||||
if $kernel_forward_between_interfaces && ! $permit_local_net_to_inet ; then
|
||||
$ip6t -A FORWARD -o $_dev -p udp -d $_host -dport $_port -m conntrack --ctstate NEW -j ACCEPT
|
||||
fi
|
||||
done
|
||||
|
||||
fi
|
||||
|
||||
done # for _dev in ${ext_if_arr[@]} ; do
|
||||
echo_done
|
||||
else
|
||||
echo_skipped
|
||||
fi
|
||||
|
||||
|
||||
# ---
|
||||
# - Webex Meeting Video Conference Service out only
|
||||
# ---
|
||||
|
@ -3873,6 +3873,7 @@ echononl "\t\tTurn/Stun Service"
|
||||
if $allow_outbound_streaming \
|
||||
|| $allow_echo360_video_streaming \
|
||||
|| $allow_bigbluebutton_video_conference_out \
|
||||
|| $allow_ms_skype_teams_out \
|
||||
|| $allow_webex_video_conference_out \
|
||||
|| $allow_zoom_video_conference_out \
|
||||
|| $allow_jitsi_video_conference_out \
|
||||
@ -3959,6 +3960,52 @@ else
|
||||
fi
|
||||
|
||||
|
||||
# ---
|
||||
# - Skype for Business Online und Microsoft Teams
|
||||
# ---
|
||||
|
||||
echononl "\t\tSkype for Business Online und Microsoft Teams"
|
||||
|
||||
if $allow_ms_skype_teams_out \
|
||||
&& ( [[ ${#ms_skype_teams_udp4_host_arr[@]} -gt 0 ]] && [[ ${#ms_skype_teams_udp_port_arr[@]} -gt 0 ]] ) \
|
||||
|| [[ ${#ms_skype_teams_tcp_port_arr[@]} -gt 0 ]]) ; then
|
||||
|
||||
for _dev in ${ext_if_arr[@]} ; do
|
||||
|
||||
if [[ ${#ms_skype_teams_udp4_host_arr[@]} -gt 0 ]] && [[ ${#ms_skype_teams_udp_port_arr[@]} -gt 0 ]] ; then
|
||||
|
||||
for _host in ${ms_skype_teams_udp4_host_arr[@]} ; do
|
||||
|
||||
for _port in ${ms_skype_teams_udp_port_arr[@]} ; do
|
||||
|
||||
$ipt -A OUTPUT -o $_dev -p udp -d $_host -dport $_port -m conntrack --ctstate NEW -j ACCEPT
|
||||
if $kernel_activate_forwarding && ! $permit_local_net_to_inet ; then
|
||||
$ipt -A FORWARD -o $_dev -p udp -d $_host -dport $_port -m conntrack --ctstate NEW -j ACCEPT
|
||||
fi
|
||||
done
|
||||
|
||||
done
|
||||
fi
|
||||
|
||||
if [[ ${#ms_skype_teams_tcp_port_arr[@]} -gt 0 ]] ; then
|
||||
|
||||
for _port in ${ms_skype_teams_tcp_port_arr[@]} ; do
|
||||
|
||||
$ipt -A OUTPUT -o $_dev -p udp -d $_host -dport $_port -m conntrack --ctstate NEW -j ACCEPT
|
||||
if $kernel_activate_forwarding && ! $permit_local_net_to_inet ; then
|
||||
$ipt -A FORWARD -o $_dev -p udp -d $_host -dport $_port -m conntrack --ctstate NEW -j ACCEPT
|
||||
fi
|
||||
done
|
||||
|
||||
fi
|
||||
|
||||
done # for _dev in ${ext_if_arr[@]} ; do
|
||||
echo_done
|
||||
else
|
||||
echo_skipped
|
||||
fi
|
||||
|
||||
|
||||
# ---
|
||||
# - Webex Meeting Video Conference Service out only
|
||||
# ---
|
||||
|
Loading…
Reference in New Issue
Block a user