V tomto článku znalostní báze vám ukážu, jak můžete použít Raspberry Pi k instalaci certifikátu Let’s Encrypt na váš USG.
Úvod
Budeme používat Apache server a doplněk Let’s Encrypt pro Apache běžící na Raspberry Pi ke stažení certifikátu pro konkrétní doménové jméno. Také použijeme Pi k aktualizaci tohoto certifikátu.
Certifikát exportujeme z Pi a importujeme do USG.
Jaký je účel certifikátu?
S certifikátem se zbavíte bezpečnostních varování ve vašem prohlížeči. Například pro HotSpot nebo SSL VPN.
Požadavky
- Potřebujete doménové jméno (DN) (například hotspot.hotel-mayer.de)
- Pokud nemáte statickou IP, musíte zajistit, aby vaše DN bylo aktuální,
můžete použít možnost DDNS ve vašem USG: Konfigurace > Síť > DDNS - Pokud používáte USG v režimu dvojitého NAT, musíte zajistit, že HTTP a HTTPS jsou přesměrovány na USG
- Musíte vědět, jak správně používat NAT
- Potřebujete Raspberry Pi a SD kartu pro operační systém
- Počítač s nainstalovanými Tera Term nebo Putty a WinSCP
- Musíte umět používat SSH terminál na USG
- USG musí mít firmware alespoň verze 4.30
1. Nastavení Pi a Apache
V tomto scénáři potřebujeme pouze příkazový operační systém pro Pi (Raspbian Stretch Lite)
stáhněte si jej prosím z webu Raspberry Pi a nainstalujte podle dokumentace.
https://www.raspberrypi.org/downloads/raspbian/
https://www.raspberrypi.org/documentation/installation/installing-images/README.md
1.1 Povolení SSH a změna hesla
Nyní musíte povolit SSH. Vložte SD kartu do počítače a do kořenové složky SD karty umístěte prázdný soubor s názvem „SSH“.
Po dokončení instalace vložte Pi do vaší sítě, spusťte jej a ověřte, zda se k němu můžete připojit přes SSH (například pomocí Putty nebo Tera Term)
Uživatel: pi
Heslo: raspberryDoporučení 1: změňte heslo podle návodu zde:
https://www.raspberrypi.org/documentation/configuration/raspi-config.md
Doporučení 2: Ujistěte se, že Pi vždy dostane stejnou IP adresu
1.2 Aktualizace Pi a instalace Apache serveru
Nyní můžeme zkontrolovat a nainstalovat aktualizace
sudo apt update && sudo apt upgrade --yesPo dokončení můžeme nainstalovat Apache server
sudo apt install apache2 --yesPo dokončení instalace byste měli být schopni vidět výchozí stránku Apache zadáním IP adresy Raspberry Pi do prohlížeče.
Nyní je čas Pi restartovat:
shutdown -rMezitím nastavíme (dočasné) přesměrování portů na Pi.
2. Přesměrování portů
Aby byly porty 80 a 443 otevřené do internetu. Níže najdete potřebné kroky
2.1 Změna HTTPS portu USG například na 8443
Nyní můžete přistupovat k USG takto: https://192.168.1.1:8443
2.2 Konfigurace přesměrování portů pro HTTP a HTTPS
Ověřte, zda můžete přistoupit k testovací stránce Pi z internetu
3. Vytvoření a export certifikátu
Než budeme mít certifikát Let's Encrypt, musíme nainstalovat doplněk Let’s Encrypt pro Apache. Pomůže s certifikací vašeho doménového jména.
sudo apt install certbot python-certbot-apache --yes3.2 Vygenerování prvního certifikátu
Nyní vygenerujeme první certifikát:
sudo certbot --apacheProjdete formulář a správně jej vyplníte. Budete dotázáni, zda chcete přesměrování nastavit trvale.
Certifikát bude požádán a automaticky nainstalován na Apache server.
3.3 Export certifikátu - stažení certifikátu
Nyní můžete exportovat certifikát s časovou značkou.
sudo openssl pkcs12 -export -out /tmp/myusg_"$(date +"%Y-%m-%d")".p12 -inkey /etc/letsencrypt/live/[your_domain]/privkey.pem -in /etc/letsencrypt/live/[your_domain]/cert.pemMusíte zadat heslo. Ujistěte se, že si heslo pamatujete, protože ho budete potřebovat i pro import do USG.
Pro získání certifikátu z Pi je potřeba změnit přístupová práva k souboru myusg_[datum].p12.
sudo chmod 777 myusg[date].p12Nyní můžete soubor stáhnout pomocí WinSCP z adresáře /tmp.
4. Import certifikátu do USG
4.1 Stažení a import kořenových a mezilehlých certifikátů Let's Encrypt
Aby USG důvěřovalo certifikátu, který jsme exportovali, musíme importovat kořenové a mezilehlé certifikáty od Let's Encrypt:
https://letsencrypt.org/certificates/
Ujistěte se, že certifikáty jsou uloženy jako pem soubor (například letsencryptauthorityx3.pem).
Nyní na USG přejděte do Konfigurace > Objekty > Certifikáty > Důvěryhodné certifikáty a importujte kořenové a mezilehlé certifikáty.
4.2 Importujte a aktivujte váš certifikát
Na USG přejděte do Konfigurace > Objekty > Certifikáty > Mé certifikáty a importujte certifikát (musíte zadat i heslo)
Přejděte do Konfigurace > Systém > WWW, kde pod Server Certificate nyní můžete vybrat importovaný certifikát.
5. Správné nastavení přesměrování HTTP na HTTPS
5.1 Deaktivace NAT pro Pi
Aby byly porty 80 a 443 opět volné pro USG, musíte deaktivovat NAT pro Pi. Jděte do Konfigurace > Síť > NAT a najděte a deaktivujte pravidla odpovědná za NAT. Pravidla neodstraňujte, budete je později potřebovat.
5.2 Nastavte HTTPS port USG zpět na 443 a nastavte přesměrování HTTP na HTTPS
Jděte do Konfigurace > Systém > WWW a nastavte HTTPS port zpět na 443. Ujistěte se, že je povoleno přesměrování HTTP.
5.3 Odstraňte IP adresu
Nyní USG použije importovaný certifikát. „Problém“, který zůstává, je, že USG přesměruje HTTP na HTTPS takto:
https://192.168.1.1/redirect.cgi?arip=[your_dyndns]&original_url=http://[your_dyndns]/
To samozřejmě způsobí problém s certifikátem. Aby se tato zpráva odstranila, musíte otevřít SSH relaci do vašeho USG a zadat tyto příkazy:
Router> configure terminal
Router(config)# web-auth redirect-fqdn [your_domainname]
Router(config)# write
Router(config)# exit
Router> writeNyní bude přesměrování vypadat takto:
https://[your_domain]/redirect.cgi?arip=[your_domain]&original_url=http://[your_domain]/
Gratulujeme, nyní máte na vašem USG certifikát Let's Encrypt.
Obnova certifikátu
Certifikáty Let's Encrypt jsou platné 90 dní. To znamená, že certifikát musíte obnovovat každé tři měsíce.
1. Opět otevřete porty HTTP a HTTPS na Pi
a ) změňte HTTPS porty na USG znovu (bod 2.1)
b ) znovu aktivujte NAT pro HTTP/HTTPS pro Pi (bod 2.2)
2. Připojte se přes SSH k Pi a obnovte certifikát
Otevřete SSH relaci do vašeho Pi a zadejte tento příkaz
sudo certbot renewTím se certifikát obnoví na dalších 90 dní
3. Exportujte a importujte certifikát
Nyní postupujte podle kroků v bodě 3.3
4. Aktualizujte certifikát na USG
Pokračujte krokem 4.2
5. Změňte porty zpět
Postupujte podle kroků v bodech 5.1 a 5.2
Gratulujeme, nyní máte obnovený certifikát Let's Encrypt na vašem USG.
Upozornění: Prosím pochopte, že toto je pouze popis, jak mít certifikát Let's Encrypt na vašem USG. Pokud se něco pokazí s Raspberry Pi, nemůžeme vám poskytnout podporu ohledně jakýchkoli problémů s Pi!

Komentáře
0 komentářůProsím přihlaste se, abyste mohli napsat komentář.