SSH 密钥权限 chmod 设置?

cri*_*aul 117 ssh permissions

我需要在我的机器上使用 SSH 来访问我的网站及其数据库(设置符号链接 - 但我离题了)。

以下问题

我输入命令:

ssh-keygen -t dsa
Run Code Online (Sandbox Code Playgroud)

生成公共/私有 dsa 密钥对。我将其保存在默认值 ( /home/user/.ssh/id_dsa) 中并输入两次 Enter 密码。

然后我得到这个:

WARNING: UNPROTECTED PRIVATE KEY FILE!  
Permissions 0755 for '/home/etc.ssh/id_rsa' are too open. It is recommended that your private key files are NOT accessible by others. This private key will be ignored. bad permissions: ignore key: [then the FILE PATH in VAR/LIB/SOMEWHERE]
Run Code Online (Sandbox Code Playgroud)

现在解决这个问题,然后我尝试

sudo chmod 600 ~/.ssh/id_rsa         sudo chmod 600 ~/.ssh/id_rsa.pub    
Run Code Online (Sandbox Code Playgroud)

但是在我的电脑死机后不久,重新登录时出现了一个could not find .ICEauthority error.

我解决了这个问题并删除了 SSH 文件,但希望能够使用正确的权限来避免将来出现这些问题。

我应该如何设置 ICEauthority,或者我应该在哪里保存 SSH 密钥 - 或者他们应该拥有什么权限?使用虚拟机会更好吗?

这一切都非常新,我的学习曲线非常陡峭,因此感谢任何帮助。

Gil*_*il' 154

chmod 600 ~/.ssh/id_rsa; chmod 600 ~/.ssh/id_rsa.pub(即chmod u=rw,go= ~/.ssh/id_rsa ~/.ssh/id_rsa.pub)是正确的。

chmod 644 ~/.ssh/id_rsa.pub(ie chmod a=r,u+w ~/.ssh/id_rsa.pub) 也是正确的,但chmod 644 ~/.ssh/id_rsa(ie chmod a=r,u+w ~/.ssh/id_rsa) 不会。您的公钥可以是公开的,重要的是您的私钥是私有的。

此外,您的.ssh目录本身必须只能由您写入:chmod 700 ~/.sshchmod u=rwx,go= ~/.ssh. 您当然需要能够读取它并访问其中的文件(执行权限)。如果其他人可以阅读它,它不会直接有害,但它也没有用处。

你不需要sudo. 不要sudo用来操作自己的文件,那只会导致错误。

关于的错误.ICEauthoritychmod您显示的命令无关。要么是巧合,要么是您运行了其他一些没有向我们展示的命令。

  • ~/.ssh/known_hosts 上的权限需要是什么? (3认同)

Scr*_*uck 6

    # Set public/private key permissions

    # Octal form
    chmod 600 ~/.ssh/id_rsa
    chmod 600 ~/.ssh/id_rsa.pub

    # Equivalent literal form
    chmod u=rw,go= ~/.ssh/id_rsa ~/.ssh/id_rsa.pub

    # Optional: make public key readable
    chmod 644 ~/.ssh/id_rsa.pub # chmod a=r,u+w ~/.ssh/id_rsa.pub

    # Set directory permissions
    chmod 700 ~/.ssh # chmod u=rwx,go= ~/.ssh

    # Legend for literal form
    # +: allow       -: deny
    # u: user        r: read
    # g: group       w: write
    # o: others      x: execute
Run Code Online (Sandbox Code Playgroud)

  • 很好的解释,但是 `a=r` 中的 `a` 是什么? (2认同)