Úvod
Redis je úložiště dat v paměti s otevřeným zdrojovým kódem. Používá se jako flexibilní, vysoce dostupná databáze klíč–hodnota, která si zachovává vysokou úroveň výkonu.
Kromě výkonu a flexibility Redis vyniká širokou jazykovou podporou, vysokou dostupností a automatickým rozdělováním.
V tomto tutoriálu se dozvíte, jak nainstalovat Redis na Ubuntu 20.04 / 18.04.
Předpoklady
- Systém se systémem Ubuntu 20.04 (nebo Ubuntu 18.04)
- Přístup k oknu terminálu/příkazovému řádku
- Sudo nebo root oprávnění na místních /vzdálených počítačích
Nainstalujte a zabezpečte Redis na Ubuntu
Následující kroky vysvětlují, jak nainstalovat Redis na Ubuntu 20.04. Tuto příručku můžete také použít na Ubuntu 18.04.
Kromě instalace a nastavení základní konfigurace se průvodce zabývá tím, jak přidat ověřování heslem, navázat Redis na localhost a přejmenovat nebezpečné příkazy.
Krok 1:Nainstalujte Redis
Při instalaci a konfiguraci Redis na vašem systému Ubuntu postupujte podle níže uvedených kroků.
1. Začněte aktualizací úložiště balíčků:
sudo apt update
2. Poté nainstalujte Redis příkazem:
sudo apt install redis-server
Krok 2:Konfigurace Redis
1. Po dokončení instalace upravte konfigurační soubor Redis. Chcete-li tak učinit, otevřete soubor pomocí textového editoru dle vašeho výběru (používáme nano):
sudo nano /etc/redis/redis.conf
2. Dále najděte řádek určující supervised
směrnice. Ve výchozím nastavení je tento řádek nastaven na no
. Chcete-li však Redis spravovat jako službu, nastavte supervidovanou direktivu na systemd
(Init systém Ubuntu).
3. Uložte změny a zavřete soubor.
4. Nakonec restartujte službu Redis spuštěním:
sudo systemctl restart redis.service
Krok 3:Ověřte instalaci Redis
Abyste se ujistili, že jste Redis nastavili správně, otestujte, zda služba běží. Otestujte také připojení k serveru a zda můžete nastavit pár klíč–hodnota.
Krok 3.1:Zkontrolujte stav služby Redis
Zkontrolujte stav služby Redis spuštěním příkazu:
sudo systemctl status redis
Výstup by měl zobrazovat, že služba je aktivní (a běží) , jako na obrázku níže.
Krok 3.2:Zkontrolujte připojení Redis
Měli byste také ověřit spojení se serverem Redis pomocí redis-cli nářadí. Chcete-li se připojit k tomuto klientovi příkazového řádku, zadejte do okna terminálu následující:
redis-cli
Tím se přesunete do redis-cli příkazový řádek. Chcete-li otestovat připojení, spusťte:
ping
Výstup by měl odpovídat:
PONG
Krok 3.3:Test nastavení párů klíč–hodnota
Protože Redis je in-memory klíč–hodnota databáze NoSQL, můžete také vyzkoušet, zda načítá přiřazené hodnoty na základě zadaného klíče.
Nejprve nastavte klíč pomocí příkazu set. V tomto příkladu je klíč označen jako key1
a měl by mít hodnotu "You have successfully set up a key-value pair!"
.
Chcete-li to provést, spusťte příkaz:
set key1 "You have successfully set up a key-value pair!"
2. Jakmile stisknete Enter , výzva odpoví OK .
3. Nyní pomocí get
zkontrolujte, zda jste klíči úspěšně přiřadili danou hodnotu. příkaz:
get key1
4. Výstup by měl odpovědět zprávou, kterou jste připojili jako hodnotu v prvním kroku.
5. Chcete-li ukončit běh prostředí Redis:
quit
Krok 4:Zabezpečte Redis
Krok 4.1:Nastavení ověřování Redis
Redis obsahuje funkci ověřování jako další vrstvu zabezpečení. Tato funkce není ve výchozím nastavení povolena. Proto je nutné upravit konfigurační soubor, abyste jej aktivovali.
1. Chcete-li začít, otevřete konfigurační soubor Redis pro úpravy:
sudo nano /etc/redis/redis.conf
2. Poté vyhledejte requirepass
směrnice v rámci SECURITY sekce a odkomentujte ji (odstraněním #
).
3. Jakmile odkomentujete řádek, nahraďte foobared
s heslem dle vašeho výběru.
4. Uložte a zavřete soubor.
5. Restartujte službu Redis:
sudo systemctl restart redis.service
Jakmile nakonfigurujete Redis, aby vyžadoval ověření, odmítne jakýkoli dotaz, dokud nezadáte požadované heslo.
Pokud například přepnete na redis-cli příkazového řádku a pokuste se spustit test ping, na výstupu se zobrazí zpráva:(error) NOAUTH Authentication required.
Jediný způsob, jak v takovém případě začít pracovat v Redis, je poskytnout heslo definované v konfiguračním souboru.
Použijte příkaz:
auth [your_password]
Pokud výstup odpoví OK
můžete jít.
Krok 4.2:Navázání Redis na Localhost
Pokud jste software nainstalovali podle výše uvedených kroků, Redis by měl být přístupný pouze z localhost. Omezení přístupu tímto způsobem je otázkou zabezpečení sítě.
Možná jste však změnili výchozí nastavení a nyní chcete omezit připojení k localhost.
Chcete-li tak učinit, otevřete konfigurační soubor Redis pro úpravy:
sudo nano /etc/redis/redis.conf
Přejděte dolů a najděte SÍŤ oddíl v souboru. Poté odkomentujte bind 127.0.0.1 ::1
řádek (odstraněním #
), jako na obrázku níže.
Po uložení a ukončení souboru nezapomeňte restartovat službu pomocí:
sudo systemctl restart redis
Díky tomu se vám úspěšně podařilo svázat Redis s localhostem a omezit tak přístup k dalším připojením.
Krok 4.3:Přejmenujte nebo zabijte nebezpečné příkazy
Dalším způsobem, jak ochránit svá data, je zakázat konkrétní příkazy nebo je přejmenovat, takže je nelze uhodnout. Toto je užitečná bezpečnostní funkce, která může normálním uživatelům omezit používání příkazů, které by mohly poškodit systém.
Chcete-li takové příkazy zakázat nebo přejmenovat, otevřete konfigurační soubor Redis:
sudo nano /etc/redis/redis.conf
Vyhledejte ZABEZPEČENÍ a přejděte dolů k #Command renaming
čára. Zde můžete najít příklady, jak přejmenovat nebo zabít příkazy.
Chcete-li například přejmenovat CONFIG
příkaz, přidejte řádek:
rename-command CONFIG [new_command_name]
V tomto příkladu config
příkaz je přejmenován na sys_admin_config_836
(něco, co by normální uživatel nebyl schopen odhadnout).
Chcete-li odstranit určité příkazy, můžete je zakázat (zabít). Chcete-li to provést, přejmenujte nebezpečný příkaz na prázdný řetězec.
Pokud tedy chcete deaktivovat config
příkaz, přidejte řádek:
rename-command CONFIG ""
Po provedení těchto změn nezapomeňte změny uložit a restartovat službu Redis.