我已經將 netatalk 作為 AFP 伺服器運行,這樣我就可以在 LAN 上進行時間機器備份。只要 iptables 接受 LAN 上的所有傳入流量,它就可以完美工作,但我正在嘗試加強伺服器上的安全性,因此我將預設 iptables 輸入策略設為 REJECT,現在我需要打開所需的連接埠時光機。我用來[ferm][1]
設定 iptables。
我在 中加入了以下規則ferm.conf
:
proto tcp saddr $LAN_SUBNET dport afpovertcp ACCEPT;
它產生這個 iptable 規則:
-A INPUT --protocol tcp --source 192.168.42.0/24 --dport afpovertcp --jump ACCEPT
但當我在 Finder 中瀏覽網頁時,Time Machine 伺服器仍然沒有顯示。
還需要對 LAN 上的流量開放哪些其他連接埠?
答案1
我打開了這些端口,Time Machine 備份現在正在工作:
afpovertcp mdns svrloc at-rtmp at-nbp at-echo at-zis 1900
為了產生 iptables 規則,我新增了以下內容ferm.conf
:
# netatalk daemon ports for AFP Time Machine server
@def $PORT_TIME_MACHINE = (afpovertcp mdns svrloc at-rtmp at-nbp at-echo at-zis 1900);
# allow AFP connentions on for Time Machine on LAN
proto (udp tcp) saddr $LAN_SUBNET dport $PORT_TIME_MACHINE ACCEPT;
新的 iptables 規則:
-A INPUT --protocol udp --source 192.168.42.0/24 --dport afpovertcp --jump ACCEPT
-A INPUT --protocol udp --source 192.168.42.0/24 --dport mdns --jump ACCEPT
-A INPUT --protocol udp --source 192.168.42.0/24 --dport svrloc --jump ACCEPT
-A INPUT --protocol udp --source 192.168.42.0/24 --dport at-rtmp --jump ACCEPT
-A INPUT --protocol udp --source 192.168.42.0/24 --dport at-nbp --jump ACCEPT
-A INPUT --protocol udp --source 192.168.42.0/24 --dport at-echo --jump ACCEPT
-A INPUT --protocol udp --source 192.168.42.0/24 --dport at-zis --jump ACCEPT
-A INPUT --protocol udp --source 192.168.42.0/24 --dport 1900 --jump ACCEPT
-A INPUT --protocol tcp --source 192.168.42.0/24 --dport afpovertcp --jump ACCEPT
-A INPUT --protocol tcp --source 192.168.42.0/24 --dport mdns --jump ACCEPT
-A INPUT --protocol tcp --source 192.168.42.0/24 --dport svrloc --jump ACCEPT
-A INPUT --protocol tcp --source 192.168.42.0/24 --dport at-rtmp --jump ACCEPT
-A INPUT --protocol tcp --source 192.168.42.0/24 --dport at-nbp --jump ACCEPT
-A INPUT --protocol tcp --source 192.168.42.0/24 --dport at-echo --jump ACCEPT
-A INPUT --protocol tcp --source 192.168.42.0/24 --dport at-zis --jump ACCEPT
-A INPUT --protocol tcp --source 192.168.42.0/24 --dport 1900 --jump ACCEPT
這些資源很有幫助:Arch wiki 上的 Netatalk 文章;Apple 軟體產品使用的 TCP 和 UDP 連接埠