GNU/Linux >> LINUX-Kenntnisse >  >> Linux

WireGuard auf Kali

Wir haben in letzter Zeit viel über WireGuard gehört und da es kürzlich zu den Kali-Repos hinzugefügt wurde, dachten wir, wir würden es schnell versuchen, um zu sehen, worum es bei der ganzen Aufregung geht. Alles in allem fanden wir, dass dies eine wirklich schöne und schnell zu konfigurierende VPN-Lösung ist, die einen Besuch wert sein könnte.

Erste Schritte

Da WireGuard zu den Repos hinzugefügt wurde, ist die Installation angenehm und einfach:

apt install wireguard resolvconf

Und wir sind weg. Als nächstes kommt die Zeit für die Konfiguration. Hier hat WireGuard wirklich für uns geglänzt, da es so gut wie nichts brauchte, um es zum Laufen zu bringen.

Auf dem Server müssen wir ein öffentliches/privates Schlüsselpaar generieren und eine anfängliche Konfigurationsdatei einrichten.

wg genkey | tee privatekey | wg pubkey > publickey
umask u=rwx,go= && cat > /etc/wireguard/wg0.conf << EOF
[Interface]
Address = 10.222.222.1/24
SaveConfig = true
ListenPort = 51820
PrivateKey = -SERVER PRIVATE KEY-

[Peer]
PublicKey = -CLIENT PUBLIC KEY-
AllowedIPs = 10.222.222.2/32
EOF

Und wir führen den gleichen Prozess auf dem Client durch, um sein Schlüsselpaar und seine Konfiguration einzurichten.

wg genkey | tee privatekey | wg pubkey > publickey
umask u=rwx,go= && cat /etc/wireguard/wg0.conf  << EOF
[Interface]
Address = 10.222.222.2/32
PrivateKey = -CLIENT PRIVATE KEY-
DNS = 8.8.8.8

[Peer]
PublicKey = -SERVER PUBLIC KEY-
Endpoint = public.ip.of.server:51820
AllowedIPs = 0.0.0.0/0
PersistentKeepalive = 21
EOF

Dies sind ziemlich einfache Konfigurationen, aber es lohnt sich, auf ein paar Dinge hinzuweisen. Zunächst einmal müssen Sie natürlich die Ausgabe der Schlüsselpaare entsprechend in die Konfiguration einfügen. Darüber hinaus soll die DNS-Zeile auf dem Client verhindern, dass DNS-Lecks Ihren lokalen Standard-DNS-Server verwenden. Sie können dies je nach Bedarf ändern oder auch nicht.

Am wichtigsten ist jedoch die Zeile „AllowedIPs“. Dies steuert, welche IPs über das VPN gehen oder nicht gehen. In diesem Fall richten wir den Client so ein, dass er alles über den VPN-Server leitet. Wir werden gleich noch mehr damit spielen, aber schauen wir uns an, wie wir diese grundlegende Konfiguration zum Laufen bringen.

Den Tunnel zu starten und zu stoppen ist ziemlich einfach.

# The VPN can be enabled using
wg-quick up wg0
# To disable the VPN:
wg-quick down wg0
# Information about the connection can be retrieved with following command:
wg show

Und natürlich müssen wir IP-Maskierung und IP-Weiterleitung auf dem Server aktivieren.

/sbin/iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
echo 1 > /proc/sys/net/ipv4/ip_forward

Damit haben wir also eine traditionelle VPN-Konfiguration. Wenn Sie nur ein Standard-VPN-Setup erhalten möchten, sind Sie an dieser Stelle fertig. Dies hat einige Vorteile im Vergleich zur Verwendung von OpenVPN, zum Beispiel scheint diese Lösung viel schneller zu sein, die Konfiguration ist viel einfacher und es ist ein bisschen versteckter, da der Server nicht auf Pakete antwortet, die kein haben das richtige Schlüsselpaar, das mit ihnen verknüpft ist. Wir dachten jedoch, dass es interessant sein könnte, die Konfiguration zu ändern, um unsere ISO von Doom-Konfiguration widerzuspiegeln, einen Client zu haben, der sich beim Booten automatisch mit dem Server verbindet, sodass der Server durch das Client-Netzwerk routen und darauf zugreifen kann.

WireGuard of DOOM!

Lassen Sie uns zuerst auf unserem Client schnell IP-Weiterleitung und Maskierung einrichten:

/sbin/iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
echo 1 > /proc/sys/net/ipv4/ip_forward

Großartig, nachdem das erledigt ist, nehmen wir ein paar kleinere Änderungen an unseren Konfigurationen vor. Zuerst ändern wir auf dem Server die Zeile „AllowedIPs“, um das private Netzwerk auf der Berichtsseite zu haben. Das würde so aussehen:

[Interface]
Address = 10.222.222.1/24
SaveConfig = true
ListenPort = 51820
PrivateKey = -SERVER PRIVATE KEY-

[Peer]
PublicKey = -CLIENT PUBLIC KEY-
AllowedIPs = 10.200.200.2/32, 192.168.2.0/24

Nachdem sich diese eine Zeile auf dem Server geändert hat, optimieren wir dann die „AllowedIPs“-Zeile des Clients, um die Option zu entfernen, alles an den VPN-Server zu leiten.

[Interface]
Address = 10.200.200.2/32
PrivateKey = -CLIENT PRIVATE KEY-
DNS = 8.8.8.8

[Peer]
PublicKey = -SERVER PUBLIC KEY-
Endpoint = public.ip.of.server:51820
AllowedIPs = 10.200.200.0/24
PersistentKeepalive = 21

Und das war's!

[email protected]:~# ping 192.168.2.22
PING 192.168.2.22 (192.168.2.22) 56(84) bytes of data.
64 bytes from 192.168.2.22: icmp_seq=19 ttl=63 time=50.2 ms
64 bytes from 192.168.2.22: icmp_seq=20 ttl=63 time=53.4 ms
64 bytes from 192.168.2.22: icmp_seq=21 ttl=63 time=48.1 ms

Jetzt kann der VPN-Server auf die Subnetze auf der anderen Seite des WireGuard VPN zugreifen.

Abschluss

Die Zeit wird zeigen, ob WireGuard OpenVPN als das VPN der Wahl ersetzt, oder ob die neueste Aufregung nur die Begeisterung für die Verwendung der neuesten Spielzeuge ist. Auf jeden Fall ist es schön, die Möglichkeit zu haben, es auszuprobieren und zu verwenden, wenn es gut passt. Wie wir hier gesehen haben, ist es definitiv einfach einzurichten und in den Anwendungsfällen relativ vielseitig.


Linux
  1. Kali-Community-Themen

  2. Sichere Kali Pi (2022)

  3. Kali unkaputtbar

  4. Kali Linux 2017.1-Version

  5. Kali Linux 2016.2-Version

Härten von Kali Linux

So installieren Sie Kali Linux

Kali-Linux-Download

Kali Linux-Systemanforderungen

Kali Linux gegen Papagei

Kali Linux 1.1.0-Veröffentlichung