ホームネットワーク上のコンピュータ間で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で動作し、デフォルトポートである双方向で開いていることを確認できます。ただし、特定のサービスに必要な他のポートもたくさんあることがわかります。