Přejít k hlavnímu obsahu

Jak nastavit AdGuard VPN pro Linux na routeru Asuswrt-Merlin

Požadavky na systém
  1. AdGuard VPN CLI vyžaduje na disku routeru nebo na externím USB nejméně 22 MB volného místa po instalaci nezbytných souborů.
  2. Firmware Asuswrt-Merlin: Zkontrolujte, zda je na vašem routeru nainstalován firmware Asuswrt-Merlin.
  3. USB disk: USB disk naformátovaný v nativním linuxovém souborovém systému (ext2, ext3 nebo ext4). V této příručce projdeme proces formátování.

1. Zjistěte IP adresu vašeho routeru

Výchozí IP adresa pro většinu routerů je 192.168.1.1 nebo 192.168.0.1. Pokud jste IP adresu změnili nebo si nejste jisti, můžete ji zjistit kontrolou konfigurace IP v připojeném zařízení.

Ve Windows

  1. Otevřete příkazový řádek:

    ipconfig
  2. Pod aktivním síťovým připojením vyhledejte položku Výchozí brána. Jedná se o IP adresu vašeho routeru.

V macOS/Linux

  1. Otevřete Terminal a spusťte tento příkaz pro Linux:

    ip route | grep default

    Nebo tento pro macOS:

    route -n get default
  2. Vyhledejte položku výchozí. IP adresa vedle ní je IP adresa vašeho routeru.

2. Ujistěte se zda jsou na routeru povoleny vlastní skripty SSH a JFFS

Nejprve se ujistěte, že je na routeru povolen přístup SSH. Toto nastavení se obvykle nachází ve webovém rozhraní routeru. K nastavení pravidel směrování se použijí vlastní skripty JFFS.

  1. Přihlaste se do webového rozhraní. Obvykle je přístupné prostřednictvím webového prohlížeče na adrese http://192.168.1.1. V opačném případě nahraďte 192.168.1.1 IP adresou vašeho routeru.

  2. Přejděte dolů na Pokročilá nastavení, SprávaSystém.

  3. Přejděte na Služba, klikněte na Povolit SSHLAN.

  4. Vyberte 22 v poli Port a Ano v poli Povolit přihlášení heslem.

  5. Přejděte na Persistentní oddíl JFFS2 a povolte Vlastní skripty a konfigurace JFFS.

  6. Klikněte na Použít v dolní části stránky.

3. Připojte se k routeru pomocí klienta SSH

Budete potřebovat klienta SSH. Většina systémů Linux a macOS je dodávána s předinstalovaným klientem SSH. V systému Windows můžete použít prostředí PowerShell, integrovaného klienta SSH v systému Windows 10/11 nebo aplikaci třetí strany, například PuTTY.

Vestavěný klient SSH (Linux, macOS a Windows 10/11)

  1. Otevřete Terminal nebo PowerShell.

  2. Spusťte příkaz SSH:

    ssh admin@192.168.1.1

    Nahraďte 192.168.1.1 IP adresou routeru a admin uživatelským jménem správce.

  3. Pokud se k routeru připojujete přes SSH poprvé, zobrazí se tato zpráva:

    The authenticity of host '192.168.1.1 (192.168.1.1)' can't be established.
    ECDSA key fingerprint is SHA256:...
    Are you sure you want to continue connecting (yes/no/[fingerprint])?

    Zadejte yes a stiskněte Enter.

  4. Na výzvu zadejte heslo routeru. Přihlašovací jméno a heslo SSH jsou stejné jako přihlašovací údaje správce.

PuTTY (Windows starší než 10)

  1. Stáhněte a nainstalujte PuTTY z oficiální stránky.
  2. Otevřete PuTTY.
  3. Do pole Název hostitele (nebo IP adresa) zadejte IP adresu vašeho routeru (např. 192.168.1.1).
  4. Ujistěte se, že Typ připojení je nastaven na SSH.
  5. Klikněte na Otevřít.
  6. Když se otevře okno Terminal, zadejte přihlašovací údaje routeru. Přihlašovací jméno a heslo SSH jsou stejné jako přihlašovací údaje správce.

4. Nainstalujte Entware pomocí SSH

Po přihlášení do klienta SSH můžete pomocí různých příkazů komunikovat s operačním systémem routeru založeným na Linuxu. Chcete-li pokračovat, musíte nainstalovat aplikaci Entware OPKG Manager. Umožňuje instalovat softwarové balíčky třetích stran, které rozšiřují možnosti routeru. Pokud jej již máte nainstalovaný, přejděte k dalšímu kroku.

Pamatujte, že nemůžete současně používat Optware (zastaralou alternativu) a Entware.

Asus DownloadMaster je založen na Optware, a proto není kompatibilní s Entware. Budete muset odinstalovat DownloadMaster a podívat se na alternativy poskytované Entware.

Po odinstalování se ujistěte, že je smazán adresář "asusware.arm*" nebo "asusware.*" na připojeném diskovém oddílu. Jinak nebude Entware pracovat správně. Po odinstalování aplikace DownloadMaster se ujistěte, že je router restartován.

Je třeba připojit disk USB naformátovaný v nativním souborovém systému Linux (ext2, ext3 nebo ext4). Pro formátování disku použijte příkaz amtm. Připojte disk USB k routeru a spusťte amtm pomocí:

amtm

Tato možnost slouží k formátování disku a jeho připojení k routeru:

fd

Projděte procesem formátování a vyberte doporučené možnosti. Všechny soubory z disku USB budou smazány. Aby toto nastavení fungovalo, měl by být disk USB vždy připojen.

Po připojení USB se router restartuje. Chcete-li zahájit proces instalace, nejprve se znovu připojte k routeru prostřednictvím SSH.

Poté spusťte aplikaci amtm jednoduchým spuštěním:

amtm

Menu vám nabídne možnost ep pro zahájení instalace Entware.

Pokud používáte firmware starší než 384.15 (nebo 384.13_4 pro RT-AC87U a RT-AC3200), spusťte místo toho instalaci následujícím příkazem.

entware-setup.sh

Pokud skript entware-setup.sh nenajdete, stáhněte a spusťte následující skript pro instalaci Entware:

wget -O - http://bin.entware.net/armv7sf-k3.2/installer/generic.sh | sh

Ukončete amtm stisknutím e.

5. Nainstalujte AdGuard CLI

Aktualizujte seznamy balíčků:

opkg update

Nainstalujte požadované balíčky:

opkg install curl ca-certificates

Přejděte do složky /opt příkazem cd /opt a spusťte instalační skript AdGuardVPN CLI:

curl -fsSL https://raw.githubusercontent.com/AdguardTeam/AdGuardVPNCLI/master/scripts/release/install.sh | sh -s -- -v

Na dotaz "Would you like to link the binary to /usr/local/bin?" odpovězte y. Pokud se binární soubor nepodařilo propojit, spusťte tento řádek:

ln -s /opt/adguardvpn_cli/adguardvpn-cli /opt/bin

Importujte certifikát SSL a modul TUN a nastavte alternativní složku pro adresář uživatele. Ve výchozím nastavení se uloží do /tmp a po restartu počítače o svá nastavení přijdete. Spusťte to před každou novou relací.

export SSL_CERT_FILE=/opt/etc/ssl/certs/ca-certificates.crt
export HOME=/opt/home/admin
modprobe tun

6. Nastavte AdGuard VPN CLI

  1. Přihlaste se ke svému účtu

    Chcete-li používat AdGuard VPN pro Linux, potřebujete účet AdGuard.

    Přihlásit se můžete na našich webových stránkách nebo v Terminalu.

    Chcete-li se zaregistrovat nebo přihlásit, zadejte:

    adguardvpn-cli login
  2. Připojte se k VPN

    Vyberte si umístění serveru VPN, které nejlépe vyhovuje vašim potřebám.

    Obecně platí, že čím blíže je server, tím rychlejší je připojení.

    Chcete-li zobrazit dostupná umístění, zadejte:

    adguardvpn-cli list-locations

    Chcete-li se připojit k určitému umístění, zadejte:

    adguardvpn-cli connect -LOCATION_NAME

    Nahraďte LOCATION_NAME kódem města, země nebo ISO kódem umístění, ke kterému se chcete připojit.

    Pro rychlé připojení zadejte:

    adguardvpn-cli connect

    AdGuard VPN vybere nejrychlejší dostupné umístění a zapamatuje si ho pro budoucí rychlá připojení.

    Na dotaz "Chcete nastavit výchozí trasy v režimu TUN?" zadejte yes

    AdGuard VPN CLI vytvoří rozhraní tun0 pro tunel VPN.

  3. Upravte nastavení

    Získejte seznam všech dostupných příkazů AdGuard VPN a přizpůsobte klienta VPN svým potřebám.

    Chcete-li zobrazit všechny příkazy, zadejte:

    adguardvpn-cli --help-all

7. Nastavení pravidel brány firewall a automatického spuštění AdGuard VPN

Tímto krokem nakonfigurujete pravidla brány firewall na routeru Asuswrt-Merlin pro směrování provozu skrze AdGuard VPN.

  1. Nový skript vytvoříte spuštěním následujícího příkazu:

    cat << 'EOF' > /jffs/scripts/wan-event
    #!/bin/sh

    if [ "$2" = "connected" ]; then
    export SSL_CERT_FILE=/opt/etc/ssl/certs/ca-certificates.crt
    export HOME=/opt/home/admin
    modprobe tun
    /opt/adguardvpn_cli/adguardvpn-cli connect &
    for ipt in iptables ip6tables; do
    $ipt -D FORWARD -j ADGUARD_FORWARD || true
    $ipt -F ADGUARD_FORWARD || true
    $ipt -X ADGUARD_FORWARD || true
    $ipt -N ADGUARD_FORWARD
    $ipt -I FORWARD -j ADGUARD_FORWARD
    $ipt -A ADGUARD_FORWARD -i br0 -o tun0 -j ACCEPT
    done
    exit 0
    fi
    EOF

    A zajistěte, aby byl spustitelný:

    chmod a+rx /jffs/scripts/wan-event

    Pokud máte více rozhraní brX, nezapomeňte je také zahrnout do skriptu a směrovat jejich přenosy. Případně pro tato rozhraní zadejte jiné pravidlo směrování.

    Tento skript zajistí, aby veškerý provoz procházel tunelem VPN. Po restartování nebo opětovném připojení k internetu se AdGuard VPN automaticky připojí k naposledy používanému umístění.

  2. Restartujte router a dokončete nastavení.

    Gratulujeme! Nyní máte router zabezpečený pomocí AdGuard VPN.

    Pokud se chcete znovu připojit k routeru pomocí SSH a odeslat do AdGuard VPN nějaké příkazy, nezapomeňte nejprve spustit tuto funkci:

    export SSL_CERT_FILE=/opt/etc/ssl/certs/ca-certificates.crt
    export HOME=/opt/home/admin
    modprobe tun