Einrichten von Regeln in Firewalld, um Clients in demselben VPN-Subnetz die Kommunikation zu ermöglichen

570
user2858835

Ich versuche, ein Wireguard-VPN auf einem Fedora-Server einzurichten. Ich habe es in Betrieb und kann mich mit mehreren Clients verbinden, es durchsuchen, ssh in den Server usw. Im Allgemeinen funktioniert es einfach. Außer eine Sache. Wenn ich zwei Clients gleichzeitig angeschlossen habe, kann ich nicht von Client A zu Client B oder umgekehrt über das VPN ssh. Ich kann SSH vom Server in einen der Clients und von den Clients in den Server, aber nicht zwischen den Clients. Der offensichtlichste Grund ist die Firewall, also habe ich versucht, sie zu deaktivieren, und wie erwartet, konnte ich jetzt zwischen Clients im selben VPN-Subnetz ssh.

Die Firewall ist also nicht richtig eingerichtet, aber ich habe die folgende Regel hinzugefügt:

iptables -A FORWARD -i wg0 -o wg0 -j ACCEPT 

was soll den Kunden erlauben zu kommunizieren? Da es sich um einen Fedora-Server handelt, der mit firewalld läuft, dachte ich, ich würde eine neue Zone namens vpn erstellen und die wg0-Schnittstelle hinzufügen, damit ich spezielle Regeln für das VPN festlegen kann. Das funktioniert und ich kann noch immer zwischen Client und Server und nicht zwischen Clients hin und her durchsuchen.

Was vermisse ich? Muss die Weiterleitungsregel durch firewalld gesetzt werden und wenn ja, was ist der richtige Befehl dafür, da ich es scheinbar nicht richtig machen kann.

Edit: Ich habe es mit dem Befehl versucht

firewall-cmd --direct --add-rule ipv4 filter FORWARD 0 -i wg0 -o wg0 -j ACCEPT 

Sie erhalten jedoch eine Antwort von COMMAND_FAILED von firewalld. Keine Fehlercodes oder sonstiges.

Edit 2: Ich habe hinzugefügt

firewall-cmd --permanent --zone=vpn --set-target=ACCEPT 

Jetzt kann ich zwischen Clients ssh. Ist das der richtige Weg, dies zu tun?

1

1 Antwort auf die Frage

0
user2858835

In Ermangelung anderer Kommentare / Antworten werde ich mitteilen, wie ich es zum Laufen gebracht habe. Ich weiß nicht, ob es der beste Weg ist, aber es funktioniert.

Ich habe festgestellt, dass die Zone vpn targer = default hatte. Standardeinstellung ist REJECT.

Ich fügte hinzu

firewall-cmd --permanent --zone=vpn --set-target=ACCEPT 

Jetzt kann ich zwischen Clients ssh.