prefixkit Вопрос инженеруСпросить EN

Порт 3478 STUN / TURN

Обход NAT для WebRTC, видеозвонков и VoIP (STUN, TURN).

Протокол
TCP/UDP
Служба
STUN / TURN
Категория
IP-телефония
Открывать в интернет
Можно открывать

Проверить, открыт ли порт 3478 Проверить SIP-сервер

Безопасно ли открывать

Порты SIP и VoIP постоянно сканируют боты, которые ищут слабые пароли, чтобы звонить за ваш счёт. По возможности разрешите на фаерволе только IP-адреса оператора, используйте длинные пароли SIP, fail2ban и отключите SIP ALG на роутере.

Как открыть порт 3478

Открыть всем

# Linux iptables
iptables -A INPUT -p tcp --dport 3478 -j ACCEPT
iptables -A INPUT -p udp --dport 3478 -j ACCEPT
# Ubuntu ufw
ufw allow 3478/tcp
ufw allow 3478/udp
# firewalld
firewall-cmd --permanent --add-port=3478/tcp && firewall-cmd --reload
firewall-cmd --permanent --add-port=3478/udp && firewall-cmd --reload
# MikroTik
/ip firewall filter add chain=input protocol=tcp dst-port=3478 action=accept place-before=0 comment="port 3478"
/ip firewall filter add chain=input protocol=udp dst-port=3478 action=accept place-before=0 comment="port 3478"
# Windows (PowerShell)
New-NetFirewallRule -DisplayName "Port 3478 TCP" -Direction Inbound -Protocol TCP -LocalPort 3478 -Action Allow
New-NetFirewallRule -DisplayName "Port 3478 UDP" -Direction Inbound -Protocol UDP -LocalPort 3478 -Action Allow

Только для своих адресов

# allow only one address or network (replace 203.0.113.0/24)
iptables -A INPUT -p tcp --dport 3478 -s 203.0.113.0/24 -j ACCEPT
iptables -A INPUT -p udp --dport 3478 -s 203.0.113.0/24 -j ACCEPT
iptables -A INPUT -p tcp --dport 3478 -j DROP
iptables -A INPUT -p udp --dport 3478 -j DROP
ufw allow from 203.0.113.0/24 to any port 3478 proto tcp
ufw allow from 203.0.113.0/24 to any port 3478 proto udp
/ip firewall filter add chain=input protocol=tcp dst-port=3478 src-address=203.0.113.0/24 action=accept
/ip firewall filter add chain=input protocol=udp dst-port=3478 src-address=203.0.113.0/24 action=accept
/ip firewall filter add chain=input protocol=tcp dst-port=3478 action=drop
/ip firewall filter add chain=input protocol=udp dst-port=3478 action=drop

Если сервер за роутером, нужен ещё проброс порта (dst-nat) на роутере. За CGNAT провайдера (адрес 100.64.0.0/10 на WAN) проброс не поможет — нужен белый IP или VPN.

Кто слушает порт

Проверка на сервере

# what listens on the port
ss -lntup | grep ':3478 '
netstat -ano | findstr :3478   # Windows
lsof -i :3478   # macOS
# test from another machine
nc -vz example.com 3478

Похожие порты