SSH from PuTTy to Debian "authorized_keys is not a regular file" Error

8,733

Solution 1

The problem is:

User myuser authorized keys /home/myuser/.ssh/authorized_keys is not a regular file

It appears you've made a directory named authorized_keys and put all your key files in it. This is why it's not working. authorized_keys is meant to be a regular file, and you can put all your keys in ~/.ssh.

Solution 2

The main problem is that ~/.ssh/authorized_keys should not be a directory. It is a text file that contains the public keys appended one line after the other.

Since you only have one key, simply move out the ~/.ssh/authorized_keys/id_rsa.pub file to a temporary location, delete the ~/.ssh/authorized_keys directory, then move back the public key file by renaming it to ~/.ssh/authorized_keys. You should now be able to connect without using a login password.

Share:
8,733

Related videos on Youtube

tacotuesday
Author by

tacotuesday

Updated on September 18, 2022

Comments

  • tacotuesday
    tacotuesday almost 2 years

    I cannot connect from my Windows 7 computer using PuTTy to a newly configured Debian Squeeze server using SSH RSA key authentication.

    I get this error when running SSH in debug mode: User myuser authorized keys /home/myuser/.ssh/authorized_keys is not a regular file


    What I've done so far:

    1. ssh-keygen -t rsa
    2. Set passphrase.
    3. Copied the id_rsa.pub file to ~/.ssh/authorized_keys
    4. Copied the id_rsa to a text file on my Windows 7 machine
    5. Imported the key into puttygen.exe and converted it to a .ppk private key file.
    6. Loaded that private key file into pageant.exe and made sure Connection->SSH->Auth Authetication methods had "Attempt authenticaiton using Pageant" checked.
    7. Loaded the profile.

    Based off of the FAQ from OpenSSH.org, I changed the permissions to the following:

    drwxr-xr-x 3 root   root   4096 Aug 13 14:16 /home
    drwxr-xr-x 7 myuser myuser 4096 Aug 17 12:55 /home/myuser
    drwx------ 3 myuser myuser 4096 Aug 17 13:24 /home/myuser/.ssh
    drw------- 2 myuser myuser 4.0K Aug 17 13:23 /home/myuser/.ssh/authorized_keys
    -rw------- 1 myuser myuser  396 Aug 17 13:17 /home/myuser/.ssh/authorized_keys/id_rsa.pub
    

    I started debug mode on ssh, and got the following:

    debug1: userauth-request for user myuser service ssh-connection method publickey
    debug1: attempt 1 failures 0
    debug1: test whether pkalg/pkblob are acceptable
    debug1: Checking blacklist file /usr/share/ssh/blacklist.RSA-2048
    debug1: Checking blacklist file /etc/ssh/blacklist.RSA-2048
    debug1: temporarily_use_uid: 1000/1000 (e=0/0)
    debug1: trying public key file /home/myuser/.ssh/authorized_keys
    User myuser authorized keys /home/myuser/.ssh/authorized_keys is not a regular file
    debug1: restore_uid: 0/0
    Failed publickey for myuser from 10.1.1.1 port 50710 ssh2
    

    I'm at a loss as to what else to check. I haven't setup SELinux or anything. Any ideas would be much appreciated.