Jak zabezpečit přístup na Github pomocí klíče SSH 13

Jak zabezpečit přístup na Github pomocí klíče SSH

Propojení klíče SSH s Github je jedním z klíčových kroků při zabezpečení vašeho účtu. Umožňuje vám využít sílu kryptografie s veřejným klíčem k ochraně vašich úložišť Git. Tento článek vám ukáže, co jsou klíče SSH a jak je můžete použít k posílení svého účtu Github.

Poznámka: jste v Gitu noví? Naučte se nyní z našeho průvodce Začínáme.

Co jsou klíče SSH?

V podstatě jsou klíče SSH veřejné klíče, které ukládáte na vzdáleném serveru. Ty fungují jako ověřovací proxy, která vám umožňuje připojit se a komunikovat se stroji bez zadání uživatelského jména a hesla.

Terminál zobrazující příklad veřejného klíče SSH.

Funguje to tak, že kdykoli se připojíte k počítači prostřednictvím SSH, váš místní počítač odešle zprávu podepsanou vaším soukromým klíčem SSH. Vzdálený počítač pak použije váš veřejný klíč SSH k ověření pravosti zprávy a přihlásí vás.

Github používá stejný přístup k ověření vaší identity na svých serverech. Web používá váš veřejný klíč, kdykoli nahrajete a upravíte své úložiště. Tím je zajištěno, že při odesílání potvrzení neodhalíte své přihlašovací údaje Github.

Dobré vědět: Zjistěte více o kryptografii s veřejným klíčem a o tom, jak může zabezpečit vaši online identitu instalací GNU Kleopatra v Linuxu.

Generování klíčů SSH pro Github

Chcete-li začít, otevřete novou relaci terminálu pomocí spouštěče aplikací vašeho distribuce.

Ujistěte se, že jste na svůj počítač nainstalovali OpenSSH a že je aktuálně spuštěn démon agenta SSH:

sudo apt install ssh
eval `ssh-agent -s`

Spuštěním následujícího příkazu spusťte průvodce generováním klíče SSH:

ssh-keygen -t ed25519 -C "[email protected]"

Průvodce se vás poté zeptá, zda chcete pro svůj klíč použít vlastní název souboru klíčů SSH. lis Vstupte přijmout výchozí název a umístění.

Terminál zobrazující výzvu k umístění souboru pro nový klíč SSH.

Zadejte heslo pro svůj nový klíč SSH. To bude sloužit jako přístupová fráze vašeho místního počítače, kdykoli se připojí k vašemu účtu Github.

Terminál zobrazující výzvu k zadání hesla pro nový klíč SSH.

Poznámka: Výzvu k zadání hesla můžete také nechat prázdnou, pokud chcete vytvořit klíč SSH bez hesla.

Přidejte svůj nově vygenerovaný klíč SSH do svého aktuálně spuštěného agenta SSH:

ssh-add ~/.ssh/id_ed25519

Dobré vědět: Pokud jste na Githubu nováčkem, zjistěte některé z nejlepších aplikací, které byste měli přidat do svého úložiště Github.

Přidání klíčů SSH na Github

S vaším novým klíčem SSH v provozu a nyní můžete propojit svůj místní počítač s účtem Github. Chcete-li začít, spusťte následující příkaz k vytištění veřejného klíče SSH:

cat ~/.ssh/id_ed25519.pub

Zvýrazněte svůj veřejný klíč SSH, klikněte pravým tlačítkem a vyberte „Kopírovat“.

Ve vztahu :  Jak chatovat ve streamech Twitch na ploše Linuxu s Chatterinem
Terminál zobrazující možnost Kopírovat v kontextové nabídce.

Otevřete novou relaci prohlížeče a poté přejděte na domovskou stránku Github.

Klikněte na ikonu svého profilu v pravém horním rohu stránky.

Snímek obrazovky výchozí domovské stránky Github.

V rozevíracím seznamu klikněte na „Nastavení“.

Snímek obrazovky zvýrazňující možnost Nastavení v nabídce profilu Github.

Na levém postranním panelu stránky nastavení vyberte „SSH and GPG Keys“.

Snímek obrazovky zvýrazňující možnost klíče SSH a GPG v nabídce nastavení Github.

Klikněte na tlačítko „Nový klíč SSH“ vedle záhlaví „Klíče SSH“.

Snímek obrazovky zvýrazňující tlačítko Nový klíč SSH na stránce klíčů SSH a GPG.

Vyberte textové pole „Název“ a zadejte název klíče.

Klikněte na textové pole „Klíč“ a poté stiskněte Ctrl + PROTI pro vložení klíče SSH.

Kliknutím na „Přidat klíč SSH“ potvrďte nové nastavení.

Secure Github Access Ssh Key 09 Přidat tlačítko Ssh Key

Otevřete novou relaci terminálu a spusťte následující příkaz:

ssh -T git@github.com

Zadejte „ano“ a poté stiskněte Vstupte.

Terminál zvýrazňující výzvu k důvěryhodnosti otisku SSH.

Tím spustíte novou relaci SSH na jednom z přijímajících serverů Github. Pokud váš klíč funguje správně, vytiskne se krátká zpráva potvrzující vaše připojení SSH.

Terminál zvýrazňující krátkou potvrzovací zprávu z Github.

Správa klíčů SSH

Zatímco pro většinu uživatelů stačí jeden klíč SSH, existují případy, kdy potřebujete synchronizovat úložiště Git, které je hostováno na více počítačích. Chcete-li to provést, musíte importovat klíče SSH specifické pro daný počítač.

Otevřete novou relaci terminálu v počítači, který chcete propojit s Github.

Ujistěte se, že je v systému nainstalován a spuštěn démon OpenSSH:

sudo apt install ssh
eval `ssh-agent -s`

Spusťte následující příkaz a vytvořte samostatný klíč SSH pro váš nový počítač:

ssh-keygen -t ed25519 -f ~/.ssh/id-ed25519-pc2 -C "[email protected]"

Zadejte zabezpečenou přístupovou frázi pro váš nový klíč SSH a stiskněte Vstupte.

Přidejte svůj nový alternativní klíč k agentovi SSH:

ssh-add ~/.ssh/id-ed25519-pc2

Vytiskněte obsah svého veřejného klíče SSH a poté jej zkopírujte do schránky systému:

cat ~/.ssh/id-ed-25519-pc2

Vraťte se na stránku „Klíče SSH a GPG“ vašeho účtu Github.

Znovu klikněte na tlačítko „Nový klíč SSH“.

Zadejte jedinečný štítek pro svůj nový klíč a poté vložte obsah schránky do textového pole „Klíč“.

Snímek obrazovky ukazující nový alternativní klíč v Github.

Kliknutím na „Přidat klíč SSH“ použijete nové nastavení.

Otestujte, zda váš nový počítač používá váš zabezpečený klíč pro připojení ke Githubu přihlášením přes SSH:

ssh -T git@github.com

Úprava stávajících klíčů SSH

Kromě odesílání nově vygenerovaných klíčů do Github můžete také upravit stávající klíče SSH, které již máte ve svém počítači. To může být užitečné, pokud již používáte klíče SSH jako přihlášení bez hesla v Linuxu.

Chcete-li upravit existující klíč, přejděte do adresáře „.ssh“ vašeho počítače:

cd ~/.ssh

Běh ssh-keygen s -p, -o a -f příznaky spolu s vaším klíčem SSH. To vám umožní změnit heslo na existujícím soukromém klíči:

ssh-keygen -p -o -f ./id-ed25519

Poznámka: Tyto příznaky můžete také použít k převodu běžného klíče SSH na klíč bez hesla.

Můžete také změnit vloženou e-mailovou adresu ve vašem veřejném klíči pomocí -c vlajka:

ssh-keygen -c -C "[email protected]" -f ./id-ed25519

Znovu načtěte agenta SSH s nově aktualizovaným klíčem:

ssh-add ~/.ssh/id-ed25519

Nahraďte odpovídající veřejný klíč SSH z vašeho profilu Github.

Snímek obrazovky ukazující nově upravený klíč SSH v Github.

Odebrání klíčů SSH z Github

Otevřete novou relaci terminálu a poté spusťte démona agenta SSH:

eval `ssh-agent -s`

Spusťte následující příkaz k odstranění soukromého klíče SSH ve vašem počítači:

ssh-add -d ~/.ssh/id-ed25519

Vraťte se do kategorie „SSH a GPG klíče“ vašeho účtu Github.

Ve vztahu :  Jak přidat systémové informace na plochu Linuxu

Procházejte seznam klíčů SSH na této stránce a poté klikněte na „Odstranit“ u toho, který chcete odstranit.

Snímek obrazovky zvýrazňující tlačítko Delete pro nově upravený klíč SSH.

Klikněte na „Rozumím, smazat tento klíč SSH“.

Snímek obrazovky zvýrazňující poslední výzvu k potvrzení pro smazání klíče SSH.

Ujistěte se, že váš starý klíč SSH je nyní nefunkční spuštěním relace SSH na jednom ze serverů Github:

ssh -T ssh@github.com

Propojení klíče SSH k zabezpečení vašeho účtu Github je jen prvním krokem k pochopení toho, jak funguje kryptografie a šifrování s veřejným klíčem. Zjistěte více o šifrování dat v klidu vytvořením šifrované cloudové zálohy pomocí Rclone.

Mezitím se můžete také dozvědět více o automatické správě úložiště pomocí Git hooks.

Kredit obrázku: Roman Synkevych přes Unsplash. Všechny úpravy a snímky obrazovky od Ramces Red.