V tomto článku znalostnej databázy vám ukážem, ako môžete použiť Raspberry Pi na inštaláciu certifikátu Let’s Encrypt na váš USG.
Úvod
Použijeme Apache server a doplnok Let’s Encrypt pre Apache bežiaci na Raspberry Pi na stiahnutie certifikátu pre konkrétne doménové meno. Tiež použijeme Pi na aktualizáciu tohto certifikátu.
Certifikát vyexportujeme z Pi a importujeme ho do USG.
Na čo slúži certifikát?
S certifikátom sa zbavíte bezpečnostných varovaní vo vašom prehliadači, napríklad pre HotSpot alebo SSL VPN.
Požiadavky
- Potrebujete doménové meno (DN) (napríklad hotspot.hotel-mayer.de)
- Ak nemáte statickú IP, musíte zabezpečiť, aby vaše DN bolo aktuálne,
môžete použiť DDNS možnosť na vašom USG: Konfigurácia > Sieť > DDNS - Ak používate USG v scénári dvojitého NAT, musíte zabezpečiť, že HTTP a HTTPS sú preposlané na USG
- Musíte vedieť správne používať NAT
- Potrebujete Raspberry Pi a SD kartu pre OS
- Počítač s nainštalovanými Tera Term alebo Putty a WinSCP
- Musíte vedieť používať SSH terminál na USG
- USG musí mať minimálne FW verziu 4.30
1. Nastavenie Pi a Apache
V tomto scenári potrebujeme len príkazový OS pre Pi (Raspbian Stretch Lite)
stiahnite si ho z webu Raspberry Pi a nainštalujte podľa dokumentácie.
https://www.raspberrypi.org/downloads/raspbian/
https://www.raspberrypi.org/documentation/installation/installing-images/README.md
1.1 Povolenie SSH a zmena hesla
Teraz musíte povoliť SSH. Vložte SD kartu do počítača a vytvorte prázdny súbor s názvom „SSH“ v koreňovom adresári SD karty.
Po dokončení inštalácie vložte Pi do siete, spustite ho a skontrolujte, či sa môžete pripojiť cez SSH (napríklad pomocou Putty alebo Tera Term)
Používateľ: pi
Heslo: raspberryOdporúčanie 1: zmeňte heslo podľa návodu tu:
https://www.raspberrypi.org/documentation/configuration/raspi-config.md
Odporúčanie 2: Uistite sa, že Pi vždy dostane rovnakú IP adresu
1.2 Aktualizácia Pi a inštalácia Apache servera
Teraz môžeme skontrolovať a nainštalovať aktualizácie
sudo apt update && sudo apt upgrade --yesPo dokončení môžeme nainštalovať Apache server
sudo apt install apache2 --yesPo dokončení inštalácie by ste mali vidieť predvolenú webovú stránku Apache, keď navštívite IP adresu Raspberry Pi v prehliadači.
Teraz je čas reštartovať Pi:
shutdown -rMedzitým nastavíme (dočasné) presmerovanie portov na Pi.
2. Presmerovanie portov
Aby boli porty 80 a 443 otvorené do internetu. Nižšie nájdete potrebné kroky
2.1 Zmena HTTPS portu USG na napríklad 8443
Teraz môžete pristupovať k USG takto: https://192.168.1.1:8443
2.2 Nastavenie presmerovania portov pre HTTP a HTTPS
Skontrolujte, či môžete pristupovať na testovaciu stránku Pi z internetu
3. Vytvorenie a export certifikátu
Predtým, než získame certifikát Let's Encrypt, musíme nainštalovať doplnok Let’s Encrypt pre Apache. Pomôže s certifikáciou vášho doménového mena.
sudo apt install certbot python-certbot-apache --yes3.2 Vygenerovanie prvého certifikátu
Teraz vygenerujeme prvý certifikát:
sudo certbot --apachePrejdete formulárom a vyplníte ho správne. Bude sa vás pýtať, či chcete trvalé presmerovanie.
Certifikát bude žiadaný a automaticky nainštalovaný na Apache server.
3.3 Export certifikátu a jeho stiahnutie
Teraz môžete exportovať 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 zadať heslo. Uistite sa, že si heslo zapamätáte, pretože ho budete potrebovať aj pre import do USG.
Aby sme mohli získať certifikát z Pi, musíme zmeniť prístupové práva pre súbor myusg_[date].p12.
sudo chmod 777 myusg[date].p12Teraz môžete súbor získať pomocou WinSCP z priečinka /tmp.
4. Import certifikátu do USG
4.1 Stiahnutie a import koreňových a medzistupňových certifikátov Let's Encrypt
Aby USG dôveroval certifikátu, ktorý sme exportovali, musíme importovať koreňové a medzistupňové certifikáty z Let's Encrypt:
https://letsencrypt.org/certificates/
Uistite sa, že certifikáty sú uložené ako pem súbory (napríklad letsencryptauthorityx3.pem).
Na USG prejdite do Konfigurácia > Objekty > Certifikáty > Dôveryhodné certifikáty a importujte koreňové a medzistupňové certifikáty.
4.2 Importujte a aktivujte svoj certifikát
Na USG choďte do Konfigurácia > Objekty > Certifikáty > Moje certifikáty a importujte certifikát (musíte zadať aj heslo)
Choďte do Konfigurácia > Systém > WWW, pod Server Certificate teraz môžete vybrať svoj importovaný certifikát.
5. Správne nastavenie presmerovania HTTP na HTTPS
5.1 Deaktivujte NAT pre Pi
Aby porty 80 a 443 boli opäť voľné pre USG, musíte deaktivovať NAT pre Pi. Choďte do Konfigurácia > Sieť > NAT a nájdite a deaktivujte pravidlá zodpovedné za NAT. Neodstraňujte pravidlá, pretože ich budete neskôr potrebovať znova.
5.2 Nastavte HTTPS port USG späť na 443 a nastavte presmerovanie HTTP na HTTPS
Choďte do Konfigurácia > Systém > WWW a nastavte HTTPS port späť na 443. Uistite sa, že presmerovanie HTTP je povolené.
5.3 Odstránenie IP adresy
Teraz USG použije importovaný certifikát. „Problém“ zostáva, že USG presmeruje HTTP na HTTPS takto:
https://192.168.1.1/redirect.cgi?arip=[your_dyndns]&original_url=http://[your_dyndns]/
Toto samozrejme spôsobí problém s certifikátom. Aby ste sa tohto hlásenia zbavili, otvorte SSH reláciu na vašom USG a zadajte tieto príkazy:
Router> configure terminal
Router(config)# web-auth redirect-fqdn [your_domainname]
Router(config)# write
Router(config)# exit
Router> writeTeraz bude presmerovanie vyzerať takto:
https://[your_domain]/redirect.cgi?arip=[your_domain]&original_url=http://[your_domain]/
Gratulujeme, teraz máte na vašom USG certifikát Let's Encrypt.
Obnova certifikátu
Certifikáty Let's Encrypt sú platné 90 dní. To znamená, že certifikát musíte obnoviť každé tri mesiace.
1. Znova otvorte HTTP a HTTPS porty pre Pi
a) zmeňte HTTPS porty na USG podľa bodu 2.1
b) znovu aktivujte NAT pre HTTP/HTTPS pre Pi podľa bodu 2.2
2. Prihláste sa cez SSH do Pi a obnovte certifikát
Otvorte SSH reláciu na vašom Pi a zadajte tento príkaz
sudo certbot renewTýmto obnovíte certifikát na ďalších 90 dní
3. Exportujte a importujte certifikát
Teraz postupujte podľa krokov v bode 3.3
4. Aktualizujte certifikát na USG
Pokračujte krokom 4.2
5. Vráťte porty späť
Postupujte podľa krokov v bodoch 5.1 a 5.2
Gratulujeme, úspešne ste obnovili certifikát Let's Encrypt na vašom USG.
Upozornenie: Prosím, pochopte, že toto je iba popis, ako mať certifikát Let's Encrypt na vašom USG. Ak nastane problém s Raspberry Pi, chápte, že vám nemôžeme poskytnúť podporu týkajúcu sa akýchkoľvek problémov s Pi!

Príspevky
0 komentárovAk chcete napísať komentár, prihlásiť sa.