nfs wird von ufw blockiert, obwohl Ports geöffnet sind

11

Ich habe einen NFSV4-Server eingerichtet und er funktioniert einwandfrei. Die Firewall blockiert jedoch NFS, selbst wenn die Ports 2049 und 111 geöffnet sind.

Ich weiß, dass nfs einige zufällige Ports verwendet, die sich bei jedem Start ändern. Wie kann ich sie jedoch statisch machen, damit ich nfs verwenden kann, ohne meine Firewall erneut zu deaktivieren?

Krug
quelle

Antworten:

30

Ich habe etwas mehr darüber recherchiert. Ubuntu verwendet das UFW, das extrem einfach zu konfigurieren und dennoch sehr leistungsfähig ist, zumindest für Soho-Anforderungen. Daher überwacht rpc.mountd standardmäßig mehrere Ports. Daher müssen Sie rpc.mountd an einen Port binden. Anschließend können Sie eine zusätzliche UFW-Regel hinzufügen, um eingehende Verbindungen an diesem bestimmten Port zu akzeptieren.

Öffnen Sie dazu / etc / default / nfs-kernel-server und kommentieren Sie die Zeile aus

RPCMOUNTDOPTS=--manage-gids

und fügen Sie die folgende Zeile hinzu

RPCMOUNTDOPTS="-p 13025"

13025 ist nur ein zufällig ausgewählter Port, der verfügbar ist und noch nicht in / etc / services definiert ist .

Starten Sie NFSd mit neu sudo /etc/init.d/nfs-kernel-server restart

Konfigurieren Sie nun die UFW so, dass eingehende Verbindungen an Port 13025 , 2049 und Port 111 akzeptiert werden .

ufw allow from 192.168.1.0/24 to any port 111
ufw allow from 192.168.1.0/24 to any port 2049
ufw allow from 192.168.1.0/24 to any port 13025

Das ist es. Sie sollten nun in der Lage sein, Ihre Exporte von einem anderen Computer aus zu mounten. :-)

Krug
quelle
Ich habe gesehen, dass Sie gerade 13025 definieren, warum Sie ufw auch für 111 und 2049 verwenden? Und was sind 111 und 2049? Warum diese Häfen?
Phate
@Phate 111 und 2049 sind Standardports von NFS, siehe hier .
Sven
1
Ich denke, Sie müssen 2049 nur öffnen, wenn Sie NFSv4 mit TCP verwenden.
Rotareti
1
Warum entfernen --manage-gids?
ændrük
2
in 16.04+, um NFS neu zu starten, tun Sie:sudo systemctl restart nfs-kernel-server
HDave
0

Mit neuen Versionen von Ubuntu müssen Sie keine komplexen Vorgänge ausführen. Ubuntu 18.04 ufw und nfs-kernel-server.

Verwenden Sie einfach diesen Befehl, um nfs auf Ihrem Host zuzulassen

sudo ufw allow from your_client_ip to any port nfs

oder

sudo ufw allow from your_client_ip_block/24 to any port nfs
Kunthar
quelle