Jak vložit do sítě, část 2 Chraňte svůj VPN (DD-WRT)
Ukázali jsme vám, jak spustit WOL vzdáleně pomocí funkce "Port Knocking" na routeru. V tomto článku ukážeme, jak ji používat k ochraně služby VPN.
Obrázek by Aviad Raviv & bfick.
Předmluva
Pokud jste použili vestavěnou funkcionalitu DD-WRT pro VPN nebo máte jiný server VPN ve vaší síti, oceníte ji schopnost chránit ji před útoky hrubou silou tím, že ji skryjete za sekvenci klepání. Tímto provedete filtrování skriptů, které se pokouší získat přístup do vaší sítě. S tím se říká, jak je uvedeno v předchozím článku, porušení portů není nahrazením dobrého hesla a / nebo bezpečnostní politiky. Pamatujte, že s dostatečnou trpělivostí může útočník zjistit sekvenci a provést replay útok.
Mějte také na paměti, že nevýhodou implementace tohoto je to, že když se někteří VPN klienti / klienti chtějí připojit, budou muset spustit sekvenci klepání předem a že pokud nemohou z nějakého důvodu dokončit sekvenci, nebudou moci VPN vůbec.
Přehled
Abychom chránili * službu VPN, nejprve zakázáme veškerou možnou komunikaci s tím zablokováním instančního portu 1723. K dosažení tohoto cíle použijeme iptables. Je to proto, že komunikace je filtrována na většině moderních distribucí Linux / GNU obecně a zejména na DD-WRT. Pokud byste chtěli získat více informací o iptables, měli byste si prohlédnout jeho wiki položku a podívat se na náš předchozí článek o tématu. Jakmile je služba chráněna, vytvoříme sekvenci zaklepání, která by dočasně otevřela instanci portu VPN a automaticky ji zavřela i po nakonfigurovaném množství času a současně bude udržována již zavedená relace VPN.
Poznámka: V této příručce používáme jako příklad službu PPTP VPN. S tím, že stejná metoda může být použita pro jiné typy VPN, stačí změnit blokovaný port a / nebo komunikační typ.
Předpoklady, předpoklady a doporučení
- Předpokládá se, že máte router DD-WRT s podporou Opkg.
- Předpokládá se / vyžaduje, abyste již provedli kroky uvedené v příručce "Jak navázat do sítě (DD-WRT)".
- Některé znalosti o síti se předpokládají.
Nechte se rozbít.
Výchozí nastavení "Blokování nových VPN" na DD-WRT
Zatímco níže uvedený fragment "kódu" by pravděpodobně fungoval na každém, respektovat, iptables pomocí distribuce Linux / GNU, protože tam je tolik variant tam, ukážeme, jak jej používat na DD-WRT. Nic vás nezastaví, pokud si přejete, aby jste jej implementovali přímo do pole VPN. Nicméně, jak to dělat, je mimo rozsah tohoto průvodce.
Protože chceme rozšířit bránu firewall směrovače, je logické, že bychom přidali do skriptu "Firewall". Pokud tak učiníte, způsobí, že příkaz iptables bude proveden pokaždé, když bude brána firewall obnovena, a tím udržet naše rozšíření na místě.
Z Web-GUI DD-WRT:
- Přejděte na "Administrace" -> "Příkazy".
- Do textového pole zadejte níže uvedený kód:
inline = "$ (iptables -L INPUT -n | grep -n" stav PŘIPOJENÝ, ESTABLISHED "| awk -F: 'print $ 1')"; inline = $ (($ inline-2 + 1)); iptables -I VSTUP "$ inline" -p tcp -dport 1723 -j DROP
- Klikněte na "Uložit bránu firewall".
- Hotovo.
Co je to příkaz "Voodoo"??
Výše uvedený příkaz "voodoo magic" provede následující:
- Zjistí, kde je iptable linka, která umožňuje propojit již zavedenou komunikaci. Děláme to proto, že A. Na směrovačích DD-WRT, je-li služba VPN povolena, bude umístěna těsně pod tímto řádkem a B. Je to nezbytné pro náš cíl pokračovat v umožnění existence již zavedených sítí VPN, klepání událost.
- Odpočítává dva (2) z výstupu příkazu pro zápis, aby se zohlednil posun způsobený hlavičkami informačních sloupců. Jakmile je to hotovo, přidá se k výše uvedenému číslu jedno (1), takže pravidlo, které vkládáme, přijde těsně za pravidlem, které umožňuje již zavedenou komunikaci. Zanechal jsem tu velmi jednoduchý "matematický problém", jen abych udělal logiku "proč je třeba snížit jednu z pravidlového místa namísto přidání jednoho k němu" jasné.
Konfigurace KnockD
Musíme vytvořit novou spouštěcí sekvenci, která umožní vytvoření nových připojení VPN. Chcete-li to provést, upravte soubor knockd.conf vydáním v terminálu:
vi /opt/etc/knockd.conf
Připojit k existující konfiguraci:
[enable-VPN]
pořadí = 02,02,02,01,01,01,2010,2010,2010
seq_timeout = 60
start_command = iptables -I VSTUP 1 -s% IP% -p tcp -dport 1723 -j ACCEPT
cmd_timeout = 20
stop_command = iptables -D VSTUP -s% IP% -p tcp -dport 1723 -j ACCEPT
Tato konfigurace bude:
- Nastavte okno příležitosti k dokončení sekvence na 60 sekund. (Doporučuje se, aby to bylo co nejkratší)
- Poslouchejte sekvenci tří klepnutí na portech 2, 1 a 2010 (tato objednávka je záměrně hodit porty skenery mimo dráhu).
- Po zjištění sekvence spusťte příkaz start_command. Tento příkaz "iptables" umístí v horní části pravidel brány firewall "přijmout provoz určený pro port 1723, odkud pocházeli knocky". (Direktiva% IP% je zpracována speciálně KnockD a nahrazena IP z původu zaklepání).
- Počkejte 20 sekund před vydáním příkazu stop_command.
- Proveďte příkaz stop_command. Kde tento příkaz "iptables" provede zpětnou vazbu a vymaže pravidlo, které umožňuje komunikaci.
Autortipy
Zatímco byste měli být všichni nastaveni, existuje pár bodů, které potřebuji zmínit.
- Odstraňování problémů. Nezapomeňte, že pokud máte potíže, segment "odstraňování problémů" na konci prvního článku by měl být první zastávkou.
- Pokud chcete, můžete mít příkazy "start / stop" spouštět více příkazů tím, že je oddělíte pomocí semi-colen (;) nebo dokonce skriptu. Pokud tak učiníte, uděláte vám nějaké šikovné věci. Například mám knockd poslat mi * E-mail mi říká, že sekvence byla spuštěna a odkud.
- Nezapomeňte, že "existuje aplikace pro to" a přestože to není zmíněno v tomto článku, doporučujeme vám, abyste uchopili program Android klepadler společnosti StavFX.
- Zatímco v oblasti Android, nezapomeňte, že existuje výrobce PPTP VPN, který je obvykle zabudován do operačního systému.
- Metoda zablokování něčeho původně a poté pokračující umožnění již zavedené komunikace může být použita prakticky pro libovolnou komunikaci založenou na protokolu TCP. Ve filmech Knockd on DD-WRT 1 ~ 6 jsem se vrátil, když jsem použil protokol vzdálené plochy (RDP), který jako příklad používá port 3389.
Kdo naruší můj spánok?