Pokud potřebujete přidat klíč SSH do kódu VS pro nastavení připojení SSH pomocí výměny klíčů, tento návod je pro vás. V tomto tutoriálu se krok za krokem naučíte, jak nakonfigurovat kód VS pro připojení přes SSH prostřednictvím výměny klíčů pro uživatele s sudo
práva (homelab
v této příručce) a vestavěný root
uživatel.
Předpoklady
- Visual Studio Code pro Windows. Tento tutoriál bude používat verzi 1.5.1.1.
- Windows 10 (je potřeba SSH a je předinstalovaný)
- Vzdálený hostitel SSH – Tento výukový program bude používat hostitele OpenSUSE s povoleným SSH.
- V kódu VS jste již nastavili hostitele SSH (viz tento článek).
Vytvoření klíče SSH
Chcete-li začít, musíte nejprve vygenerovat soukromý a veřejný klíč SSH na počítači se systémem Windows.
- V místním počítači otevřete PowerShell a spusťte ssh-keygen . Výchozí cesta pro vaše klíče je C:\users\
\.ssh. - Zadejte cestu ke složce pro uložení soukromého a veřejného klíče. Výchozí hodnota je C:\Users\
\.ssh\id_rsa . - Zadejte volitelné přístupové heslo. Pokud zadáte přístupovou frázi, bude tato přístupová fráze použita k zašifrování soukromého klíče.
Po dokončení budete mít nyní dva soubory (klíče) ve složce, do které jste klíče uložili, s názvem id_rsa.pub (veřejný klíč) a id_rsa (soukromý klíč). Ve výchozím nastavení budou tyto klíče v C:\Users\
Nahrání veřejného klíče do hostitele SSH a přidružení vašeho uživatele SSH
Dále budete muset přenést veřejný klíč (id_rsa.pub) do umístění autorizovaných klíčů vzdáleného uživatele SSH. Pomocí VSCode můžete použít jeho vestavěný průzkumník k nahrání klíče.
Související:Nastavení připojení SSH Key Exchange pomocí VS Code a SSH
- Pokud jste již nastavili hostitele SSH ve VS Code, otevřete domovskou složku uživatele. V tomto případě výukový program používá
homelab
uživatel. - Vytvořte soubor .ssh složku ve vašem domovském adresáři a nahrajte soubor id_rsa.pub soubor.
- Přejmenujte soubor na authorized_keys (malá písmena). Tento příklad můžete vidět níže.
Nyní jste úspěšně spojili svůj veřejný klíč s vaším uživatelem SSH. Měli byste být schopni se znovu připojit bez vyžadování hesla.
Přidružení veřejného klíče ke kořenovému uživateli
Přiřazení stejného klíče k root
user vám dává možnost zapojit SSH buď jako váš běžný uživatel, nebo jako vestavěný root
uživatel.
Pro root
uživatel to bude kopírovat ~/.ssh/authorized_keys na /root/.ssh/authorized_keys . Můžete tak učinit spuštěním níže uvedeného příkazu:
sudo mkdir -p /root/.ssh && sudo cp ~/.ssh/authorized_keys /root/.ssh/authorized_keys
Přiřazení klíče ke kódu
root
uživatel vyžadujesudo
správní práva. Více o sudo si můžete přečíst zde.
Nyní byste měli být schopni přihlásit se k uživateli root přes SSH bez nutnosti hesla ve Windows.
Grafické přidání vašeho veřejného klíče uživateli root pomocí YaST
Pokud jste spíše vizuální studenti, můžete provést stejný úkol pomocí konfiguračního nástroje YaST OpenSUSE. To bude funkčně stejné jako kopírování autorized_keys soubor uživateli root, a to přívětivějším způsobem.
YaST je konfigurační nástroj, který je specifický pro distribuci OpenSUSE.
Související příspěvek:Windows Guy ve světě Linuxu:YaST a desktop
- Přejděte do terminálu VS Code a nahrajte svůj id_rsa.pub soubor do domovského adresáře:
2. Spusťte sudo yast
v terminálu VSCode.
3. Jakmile jste v YaST, přejděte na Zabezpečení a uživatelé —> Správa uživatelů a skupin pomocí kláves se šipkami. Stiskněte Enter přejděte do Správy uživatelů a skupin sekce. Tento krok vás přenese na obrazovku správy uživatelů YaST.
4. Stiskněte Alt+S v YaST změnit filtr z normálních uživatelů na systémové uživatele.
5. Přejděte dolů na root
. Stiskněte alt+i upravit a poté alt+s znovu se přesunete do sekce klíčů. Můžete to vidět v animaci níže:
6. Stiskněte alt+a a přejděte na id_rsa.pub soubor, který jste nahráli dříve, a stiskněte alt+o na OK . Měli byste vidět otisk prstu přidaný k uživateli root.
7. Pokračujte stisknutím alt+o na OK z nabídek a nakonec alt+q ukončit. Můžete to vidět v animaci níže:
V této fázi jste úspěšně provedli výměnu klíčů za root! Nyní smažte nahrané /home/
Ověření pomocí klíče
Nakonec byste měli vyzkoušet připojení pomocí nově vytvořeného klíče. Chcete-li to provést:
Otevřete konzolu PowerShell a zkuste spustit ssh
otestovat přihlášení jako váš uživatel i jako uživatel root. Tato příručka používá homelab
uživatele jako běžného uživatele. Pokud vše půjde dobře, měli byste být okamžitě přihlášeni k některému z účtů. Můžete to vidět níže:
Nyní se můžete přihlásit SSH jako root a terminál ani nepožádal o heslo. SSH pro Windows věděl, kde hledat váš soukromý klíč (C:\users\
Konfigurace kódu VS pro použití kteréhokoli uživatele
Co když se potřebujete připojit ke vzdálenému hostiteli SSH pomocí obou root
uživatelský účet a standardní administrátor? Tento scénář můžete nastavit pomocí dvou různých konfigurací ve VS Code.
- Ve VS Code klikněte na Vzdálený průzkumník na postranním panelu a klikněte na ozubené kolečko pod Cíle SSH Jak je ukázáno níže.
2. VS Code požádá o výběr souboru. Stisknutím klávesy Enter vyberte výchozí soubor, který jste vygenerovali dříve v tomto článku. VS Code otevře konfigurační soubor, který lze upravit, jak je uvedeno níže.
3. Zkopírujte první tři řádky konfigurace a vložte je níže oddělené prázdným řádkem.
4. Změňte druhého uživatele z homelab
na níže uvedeném snímku obrazovky) na root
. Také jim dejte popisnější názvy (Host
parametr), abyste mohli tyto dvě konfigurace od sebe odlišit. Stiskněte Covládání+s uložit:
Host
parametr je citlivý na mezery a speciální znaky. Pojmenujte svého hostitele pouze pomocí pomlček a alfanumerických písmen.Hostname
je ekvivalentní IP nebo DNS názvu. Výše uvedený příklad používá IP172.25.179.190
Nyní můžete vidět (na snímku obrazovky níže), že máte dva cíle SSH:test-machine a test-machine-root .
5. Nyní se připojte k libovolnému hostiteli kliknutím pravým tlačítkem na cíl SSH a kliknutím na Připojit k hostiteli v aktuálním okně Jak je ukázáno níže.
Pokud se připojíte jako root, máte plná přístupová práva ke svému počítači – včetně chráněných souborů.
Pokud se připojíte k hostiteli v novém okně , VSCode spustí samostatnou instanci s novým připojením. To vám umožní mít obě
root
aotevřít současně ve dvou samostatných relacích. Nepleťte si, který je který!