홈 네트워크에 있는 컴퓨터 간에 UPNP를 허용하도록 UFW를 구성할 수 있습니까?
방화벽을 끄면 모든 것이 잘 작동합니다. 방화벽이 나를 차단하고 있다는 것을 시스템 로그에서 볼 수 있습니다. open 1900, 1901, 5353과 같은 다양한 프롬프트를 시도했는데 모두 무작위 시도인 것 같습니다. 문제는 UPNP가 임의의 포트를 요청하고 UFW가 이를 차단하고 있다는 것입니다.
답변1
답변에 가깝다고 봅니다. 가장 쉬운 방법은 일시적으로 방화벽을 끄고 미디어 상자를 몇 분 동안 실행한 다음 lsof의 출력을 확인하는 것입니다.
lsof -i :1025-9999 +c 15
-i는 열린 포트에 해당하는 "파일"을 나열합니다. IPv4로만 제한하려면 -i4를 사용합니다. 번호 목록은 포트 번호 목록으로 제한됩니다. 모든 것을 원하면 무시하십시오. +c 비트는 포트와 관련된 보다 의미 있는 명령 이름을 제공합니다.
netstat -lptu --numeric-ports
여기에는 프로토콜 및 소스/대상 주소와 함께 모든 활성 포트가 나열됩니다.
이 정보를 사용하면 ufw를 올바르게 설정하는 스크립트를 작성할 수 있습니다. 내 스크립트의 예는 다음과 같습니다.
#!/bin/sh
# Set up local firewall using ufw (default install on Ubuntu)
# @see /etc/services for port names
# obtain server's IP address
SERVERIP=192.168.1.181
# Local Network
LAN="192.168.0.0/255.255.0.0"
# disable firewall
ufw disable
# reset all firewall rules
ufw reset
# set default rules: deny all incoming traffic, allow all outgoing traffic
#ufw default allow incoming
ufw default deny incoming
ufw default allow outgoing
# open port for SSH
ufw allow OpenSSH
# open port for Webmin
ufw allow webmin
# open ports for Samba file sharing
ufw allow from $LAN to $SERVERIP app Samba
ufw allow to $LAN from $SERVERIP app Samba
#ufw allow from $LAN to $SERVERIP 137/udp # NetBIOS Name Service
#ufw allow from $LAN to $SERVERIP 138/udp # NetBIOS Datagram Service
#ufw allow from $LAN to $SERVERIP 139/tcp # NetBIOS Session Service
#ufw allow from $LAN to $SERVERIP 445/tcp # Microsoft Directory Service
# open ports for Transmission-Daemon
ufw allow 9091
ufw allow 20500:20599/tcp
ufw allow 20500:20599/udp
# Mediatomb
## upnp service discovery
ufw allow 1900/udp
## Mediatomb management web i/f
ufw allow 49152
# Plex Media Server
## Manage
ufw allow 32400
# open port for MySQL
ufw allow proto tcp from $LAN to any port 3306
# open ports for web services
ufw allow 80
ufw allow 443
ufw allow 8000:9999/tcp
ufw allow 8000:9999/udp
# Deny FTP
ufw deny 21/tcp
# Webmin/usermin allow
ufw allow webmin
ufw allow 20000
# open port for network time protocol (ntpd)
ufw allow ntp
# Allow Firefly (DAAP)
ufw allow 3689
# enable firewall
ufw enable
# list all firewall rules
ufw status verbose
Mediatomb 섹션에서 uPNP가 UDP(TCP 아님)를 통해 표준 포트 1900에서 작동하고 기본 포트인 양방향으로 열려 있음을 확인할 수 있습니다. 그러나 특정 서비스에 필요한 다른 포트도 많이 있음을 알 수 있습니다.