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 10:44 | Nová verze

    MicroPython (Wikipedie), tj. implementace Pythonu 3 optimalizovaná pro jednočipové počítače, byl vydán ve verzi 1.23.0. V přehledu novinek je vypíchnuta podpora dynamických USB zařízení nebo nové moduly openamp, tls a vfs.

    Ladislav Hagara | Komentářů: 0
    dnes 10:22 | Nová verze

    Canonical vydal Ubuntu Core 24. Představení na YouTube. Nová verze Ubuntu Core vychází z Ubuntu 24.04 LTS a podporována bude 12 let. Ubuntu Core je určeno pro IoT (internet věcí) a vestavěné systémy.

    Ladislav Hagara | Komentářů: 0
    dnes 01:00 | Nová verze Ladislav Hagara | Komentářů: 0
    včera 19:55 | IT novinky

    Intel na veletrhu Computex 2024 představil (YouTube) mimo jiné procesory Lunar Lake a Xeon 6.

    Ladislav Hagara | Komentářů: 0
    včera 13:44 | IT novinky

    Na blogu Raspberry Pi byl představen Raspberry Pi AI Kit určený vlastníkům Raspberry Pi 5, kteří na něm chtějí experimentovat se světem neuronových sítí, umělé inteligence a strojového učení. Jedná se o spolupráci se společností Hailo. Cena AI Kitu je 70 dolarů.

    Ladislav Hagara | Komentářů: 0
    včera 13:22 | Nová verze

    Byla vydána nová verze 14.1 svobodného unixového operačního systému FreeBSD. Podrobný přehled novinek v poznámkách k vydání.

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

    Společnost Kaspersky vydala svůj bezplatný Virus Removal Tool (KVRT) také pro Linux.

    Ladislav Hagara | Komentářů: 8
    včera 12:33 | Nová verze

    Grafický editor dokumentů LyX, založený na TeXu, byl vydán ve verzi 2.4.0 shrnující změny za šest let vývoje. Novinky zahrnují podporu Unicode jako výchozí, export do ePub či DocBook 5 a velké množství vylepšení uživatelského rozhraní a prvků editoru samotného (např. rovnic, tabulek, citací).

    Fluttershy, yay! | Komentářů: 4
    včera 12:00 | Nová verze

    Byla vydána (𝕏) nová verze 7.0 LTS open source monitorovacího systému Zabbix (Wikipedie). Přehled novinek v oznámení na webu, v poznámkách k vydání a v aktualizované dokumentaci.

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

    Organizace Apache Software Foundation (ASF) vydala verzi 22 integrovaného vývojového prostředí a vývojové platformy napsané v Javě NetBeans (Wikipedie). Přehled novinek na GitHubu. Instalovat lze také ze Snapcraftu a Flathubu.

    Ladislav Hagara | Komentářů: 3
    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: 1065×
    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.