abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×

    dnes 15:44 | Bezpečnostní upozornění

    Binarly REsearch před týdnem informoval o kritických zranitelnostech UEFI souhrnně pojmenovaných LogoFAIL. Tento týden doplnil podrobnosti. Útočník může nahradit logo zobrazováno při bootování vlastním speciálně upraveným obrázkem, jehož "zobrazení" při bootování spustí připravený kód. Pětiminutové povídání o LogoFAIL a ukázka útoku na YouTube.

    Ladislav Hagara | Komentářů: 1
    dnes 00:11 | Nová verze

    Byla vydána listopadová aktualizace aneb nová verze 1.85 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a animovanými gify v poznámkách k vydání. Ve verzi 1.85 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 12
    včera 13:33 | Komunita Ladislav Hagara | Komentářů: 2
    včera 13:22 | Komunita

    Richard Hughes na svém blogu oznámil, že počet aktualizací firmwarů pomocí služby LVFS (Linux Vendor Firmware Service) přesáhl 100 milionů. Přehled podporovaných zařízení, nejnovějších firmwarů nebo zapojených výrobců na stránkách LVFS.

    Ladislav Hagara | Komentářů: 0
    včera 12:55 | Nová verze

    Byla vydána nová stabilní verze 3.19.0, tj. první z nové řady 3.19, minimalistické linuxové distribuce zaměřené na bezpečnost Alpine Linux (Wikipedie) postavené na standardní knihovně jazyka C musl libc a BusyBoxu. Z novinek lze vypíchnou podporu Raspberry Pi 5.

    Ladislav Hagara | Komentářů: 0
    včera 12:22 | Zajímavý software

    Altap Salamander (Wikipedie), dvoupanelový správce souborů pro Windows, byl uvolněn jako open source pod názvem Open Salamander. Zdrojové kódy jsou k dispozici na GitHubu pod licencí GPLv2.

    Ladislav Hagara | Komentářů: 2
    včera 07:00 | IT novinky

    Společnost JetBrains představila (YouTube) svou umělou inteligenci JetBrains AI a nástroj AI Assistant v IDE.

    Ladislav Hagara | Komentářů: 8
    6.12. 22:33 | Nová verze

    Byla vydána nová verze 255 správce systému a služeb systemd (GitHub, NEWS). Z novinek lze vypíchnout například novou službu systemd-bsod.service.

    Ladislav Hagara | Komentářů: 0
    6.12. 18:44 | IT novinky

    Google představil Gemini, svůj největší a nejschopnější model umělé inteligence.

    Ladislav Hagara | Komentářů: 0
    6.12. 16:44 | Komunita

    openSUSE komunita vybírá nová loga. Jedním z cílů je odlišit se od SUSE. Aktuálně probíhá hlasování o logu openSUSE a čtyř distribucí Tumbleweed, Leap, Slowroll a Kalpa.

    Ladislav Hagara | Komentářů: 6
     (34%)
     (13%)
     (53%)
    Celkem 86 hlasů
     Komentářů: 2, poslední 6.12. 22:12
    Rozcestník

    Dotaz: SSH - přihlášení pomocí klíče

    Petr Maleček avatar 15.7.2010 09:42 Petr Maleček | skóre: 28 | Plzeň - Bolevec
    SSH - přihlášení pomocí klíče
    Přečteno: 1060×
    Ahoj, vím, že se to tu už řešilo nespočetněkrát, ale pořád si nevím rady, přestože v minulosti se mi to už povedlo několikráte rozběhnout.

    Chci používat Tortoise Git na správu repozitářů. Jako přihlašovací "prvek" jsem zvolil přihlašování pomocí SSH a privátního klíče.

    Takto vypadá moje nastavení /etc/ssh/sshd_config:
    
    # Package generated configuration file
    # See the sshd(8) manpage for details
    
    # What ports, IPs and protocols we listen for
    Port 22
    # Use these options to restrict which interfaces/protocols sshd will bind to
    #ListenAddress ::
    #ListenAddress 0.0.0.0
    Protocol 2
    # HostKeys for protocol version 2
    HostKey /etc/ssh/ssh_host_rsa_key
    HostKey /etc/ssh/ssh_host_dsa_key
    #Privilege Separation is turned on for security
    UsePrivilegeSeparation yes
    
    # Lifetime and size of ephemeral version 1 server key
    KeyRegenerationInterval 3600
    ServerKeyBits 768
    
    # Logging
    SyslogFacility AUTH
    LogLevel INFO
    
    # Authentication:
    LoginGraceTime 120
    PermitRootLogin yes
    StrictModes yes
    
    RSAAuthentication yes
    PubkeyAuthentication yes
    #AuthorizedKeysFile     %h/.ssh/authorized_keys
    
    # Don't read the user's ~/.rhosts and ~/.shosts files
    IgnoreRhosts yes
    # For this to work you will also need host keys in /etc/ssh_known_hosts
    RhostsRSAAuthentication no
    # similar for protocol version 2
    HostbasedAuthentication no
    # Uncomment if you don't trust ~/.ssh/known_hosts for RhostsRSAAuthentication
    #IgnoreUserKnownHosts yes
    
    # To enable empty passwords, change to yes (NOT RECOMMENDED)
    PermitEmptyPasswords no
    
    # Change to yes to enable challenge-response passwords (beware issues with
    # some PAM modules and threads)
    ChallengeResponseAuthentication no
    
    # Change to no to disable tunnelled clear text passwords
    #PasswordAuthentication yes
    
    # Kerberos options
    #KerberosAuthentication no
    #KerberosGetAFSToken no
    #KerberosOrLocalPasswd yes
    #KerberosTicketCleanup yes
    
    # GSSAPI options
    #GSSAPIAuthentication no
    #GSSAPICleanupCredentials yes
    
    X11Forwarding yes
    X11DisplayOffset 10
    PrintMotd no
    PrintLastLog yes
    TCPKeepAlive yes
    #UseLogin no
    
    #MaxStartups 10:30:60
    #Banner /etc/issue.net
    
    # Allow client to pass locale environment variables
    AcceptEnv LANG LC_*
    
    Subsystem sftp /usr/lib/openssh/sftp-server
    
    UsePAM yes
    
    Vesměs asi skorem defaultní konfig, který se instaluje společně s balíčkem.

    Další kroky, které dělám jsou následující:
    -- spustím puttygen
    -- kliknu na Generate a jezdím v prázdném poli myší pro vygenerování klíče
    -- poté přejmenuji komentář klíče na git@********.cz
    -- poté kliknu na save public key, uložím jako git-public.key, a pak na save private key, uložím jako git-private.ppk
    -- určitě jste si všimli, že jsem nezadal heslo pro privátní klíč, předpokládám, že to není nutností, ani když jsem ho vyplnil, tak se změna nedostavila
    -- teď překopíruji text (klíč) který se zobrazil v puttygenu a vložím ho na serveru, do složky /home/git/.ssh do souboru authorized_keys (uživatele jsem vytvořil, bez hesla) a uložím.
    -- nyní spustím znovu Putty, vyplním adresu a přiložím klíč git-private.ppk
    A výsledek ?
    
    login as: git
    Server refused our key
    git@********-server.pilsfree.czf's password:
    
    Vygenerovaný klíč, který vkládám do authorized_keys vypadá zhruba takto:
    ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAlFcudIV3/Wgkefzo/n/xy9zsD/AVb1zXXocG5W32wW5qZdzxo/8sHd14467yx....blablablabla...BYW3ay1+xJKF5mqtVqqNmdnkEUQViH/KCdxB6WZjvsezq8XqxdZ2ms+G2h9ThvlsWtfSXYNVuBXtHGIR/EHYFPYLqh6tWrO46DJF5q2jOGyYtP0bAVg4v51lcCJW6oZruW9XiU+vtCIB5TLesnvhhIWOhwK9XSmTWSleBNgOfKr+tZvE9r0oTfFQIVKnLmTIsz6AtiFcn7VQBm56KOVIg5CxwKAKZzYGJ1Ezhi+Yl1rgsVzdv7NhmENWY7JraOZ8J1v8AQ== git@********.cz
    
    Nemáte někdo ponětí, co dělám zase špatně ? Bohužel se mi nepodařilo ani nic vyčmuchat v logu, co by mi pomohlo. Případně pokud potřebujete ještě soubor /etc/ssh/ssh_config, tak jej mohu dodatečně přiložit, ale myslím si, že v tom nehraje roli.

    Díky.
    LinMuck, WinFuck :-P

    Řešení dotazu:


    Odpovědi

    Petr Maleček avatar 15.7.2010 09:47 Petr Maleček | skóre: 28 | Plzeň - Bolevec
    Rozbalit Rozbalit vše Re: SSH - přihlášení pomocí klíče
    Tak se moc omlouvám, za zbytečný dotaz, vše je v pořádku, jen jsem musel znovu nastavit práva pro zápis/čtení adresáře uživatele, nějak jsem se "za-chmod-oval". Nastavil jsem tedy:

    $ chmod 700 /home/git -R

    a už je vše v pořádku. Můžete to tedy brát jako takový nový návod :D
    LinMuck, WinFuck :-P
    Petr Maleček avatar 15.7.2010 10:53 Petr Maleček | skóre: 28 | Plzeň - Bolevec
    Rozbalit Rozbalit vše Re: SSH - přihlášení pomocí klíče
    Ještě doplním jaká by měla být práva k adresářům:
    /home/git - drwxr-xr-x
    /home/git/.ssh - drwxr-xr-x
    /home/git/.ssh/authorized_keys - -rw-r--r--
    
    LinMuck, WinFuck :-P
    15.7.2010 11:33 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: SSH - přihlášení pomocí klíče
    maximálně
    15.7.2010 20:14 pht | skóre: 48 | blog: pht
    Rozbalit Rozbalit vše Re: SSH - přihlášení pomocí klíče
    $ chmod 700 /home/git -R
    Tohle bych jako bernou minci nebral, protože to nastaví 700 i na všech souborech v tom adresáři. Úplně stačí to použít bez toho -R.

    Jinak je pravda že pokud sshd odmítá klíč a všechno se zdá býti v pořádku tak jsou za tím téměř vždy nesprávná práva na domovský adresář.
    In Ada the typical infinite loop would normally be terminated by detonation.
    15.7.2010 20:53 Ash | skóre: 53
    Rozbalit Rozbalit vše Re: SSH - přihlášení pomocí klíče
    ...i na všech adresářích a podadresářích a souborech v podadresářích...
    Petr Maleček avatar 16.7.2010 08:55 Petr Maleček | skóre: 28 | Plzeň - Bolevec
    Rozbalit Rozbalit vše Re: SSH - přihlášení pomocí klíče
    O tom vím, vzhledem k tomu, že byl domovský adresář prázdný, tak jsem pro jistotu přidal -R parametr, ale je pravda, že zbytečně :-)
    LinMuck, WinFuck :-P
    16.7.2010 09:33 pht | skóre: 48 | blog: pht
    Rozbalit Rozbalit vše Re: SSH - přihlášení pomocí klíče
    Mohly v něm být soubory typu .bashrc, které se normálně při výpisu nezobrazují.
    In Ada the typical infinite loop would normally be terminated by detonation.
    Oskar avatar 16.7.2010 09:55 Oskar | skóre: 18
    Rozbalit Rozbalit vše Re: SSH - přihlášení pomocí klíče
    Jinak je pravda že pokud sshd odmítá klíč a všechno se zdá býti v pořádku tak jsou za tím téměř vždy nesprávná práva na domovský adresář.
    Ne na celý adresář, ale jen na soubor ~/.ssh/authorized_keys

    Jde o to, že kdyby tento soubor byl zapisovatelný pro skupinu, nebo dokonce pro svět, mohl by si tam kdokoli přidat klíč a následně se přihlásit jménem uživatele.
    16.7.2010 10:44 pht | skóre: 48 | blog: pht
    Rozbalit Rozbalit vše Re: SSH - přihlášení pomocí klíče
    Ne na celý adresář, ale jen na soubor ~/.ssh/authorized_keys

    Bohužel ve světe UNIXu tohle nestačí. Pokud nemáte právo zápisu k .ssh/authorized_keys ale máte právo zápisu na adresáři .ssh, můžete provést:
    rm .ssh/authorized_keys
    cat mujkey >.ssh/authorized_keys
    
    Pokud nemáte možnost zápisu do adresáře .ssh (ergo ke smazání toho souboru), ale máte zápis do /home/user můžete provést zase jiný trik:
    mv /home/user/.ssh /home/user/.ssh-nasrat
    mkdir /home/user/.ssh
    cat mujkey >.ssh/authorized_keys
    
    Jo, UNIX je radost...

    Proto sshd kontroluje práva všech adresářů od toho souboru až nahoru a nejlepší, co můžete udělat je nechat si svůj home privátní.
    chmod 700 $HOME
    
    In Ada the typical infinite loop would normally be terminated by detonation.
    Oskar avatar 16.7.2010 11:57 Oskar | skóre: 18
    Rozbalit Rozbalit vše Re: SSH - přihlášení pomocí klíče
    Pravda, testoval jsem to a odvolávám svůj předchozí post. Nicméně tyhle postupy:
    rm .ssh/authorized_keys
    cat mujkey >.ssh/authorized_keys
    
    ...
    
    mv /home/user/.ssh /home/user/.ssh-nasrat
    mkdir /home/user/.ssh
    cat mujkey >.ssh/authorized_keys
    
    by vedly k vytvoření souboru/adresáře s jiným jménem vlastníka (za předpokladu, že na adresářích není SUID/SGID), takže to by sshd mělo stačit zkontrolovat, zda authorized_keys má odpovídající práva a zda je vlastněn majitelem účtu. Ale skutečně nestačí.
    Proto sshd kontroluje práva všech adresářů od toho souboru až nahoru a nejlepší, co můžete udělat je nechat si svůj home privátní.
    Až nahoru ne, práva na adresář /home mohou být libovolná (aspoň u mě).
    16.7.2010 12:11 pht | skóre: 48 | blog: pht
    Rozbalit Rozbalit vše Re: SSH - přihlášení pomocí klíče
    by vedly k vytvoření souboru/adresáře s jiným jménem vlastníka (za předpokladu, že na adresářích není SUID/SGID), takže to by sshd mělo stačit zkontrolovat, zda authorized_keys má odpovídající práva a zda je vlastněn majitelem účtu.
    Až nahoru ne, práva na adresář /home mohou být libovolná (aspoň u mě).
    Teoreticky máte pravdu, proč je to v opensshd zrovna takto je asi otázka do mail listu :-)
    In Ada the typical infinite loop would normally be terminated by detonation.
    16.7.2010 09:41 Cuda
    Rozbalit Rozbalit vše Re: SSH - přihlášení pomocí klíče
    Tu bych přidal i já malou zkušenost a to s puttygen, když jsem uložil public key a ten dal do authorized_keys tak to nefungovalo. Ale když jsem vzal do clipboardu zobrazený public key ve vrchní části puttygen a vložil do autohorized_keys tak OK. Blíže jsem to nezkoumal, od té doby to vždy dělám takto :-)

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.