linux免密登陆设置

要实现免密登录Linux服务器,你需要将本机的SSH公钥添加到服务器的~/.ssh/authorized_keys文件中。以下是具体步骤:

  1. 生成SSH密钥对(如果尚未生成)
    如果你还没有SSH密钥对,可以使用ssh-keygen命令生成。例如,执行ssh-keygen -t rsa来生成RSA类型的密钥对。按照提示操作,通常可以直接按回车键接受默认设置。

  2. 复制公钥到服务器
    将你的公钥(通常是~/.ssh/id_rsa.pub文件中的内容)复制到你想免密登录的Linux服务器的对应用户家目录下的.ssh/authorized_keys文件中。你可以使用ssh-copy-id命令或者手动复制粘贴。

    • 使用ssh-copy-id(推荐方式):

      bash
      ssh-copy-id -i ~/.ssh/id_rsa.pub username@remote_host

      username替换为服务器的用户名,remote_host替换为服务器的地址。

    • 手动复制:
      首先,使用scp或者其他方式将你的公钥文件复制到服务器上,然后登录到服务器,将公钥内容追加到~/.ssh/authorized_keys文件中。如果文件不存在,你需要创建它。

      bash
      cat id_rsa.pub >> ~/.ssh/authorized_keys
  3. 设置文件和目录权限
    确保服务器上的~/.ssh目录权限设置为700(即仅允许用户自己读写执行),authorized_keys文件权限设置为600(即仅允许用户自己读写)。这可以通过以下命令实现:

    bash
    chmod 700 ~/.ssh
    chmod 600 ~/.ssh/authorized_keys
  4. 测试免密登录
    现在,你应该能够从你的本机免密登录到Linux服务器了。使用SSH命令进行测试:

    bash
    ssh username@remote_host

    如果一切顺利,你将不会收到输入密码的提示,而是直接登录到服务器。

请注意,为了安全起见,确保你的私钥文件(id_rsa)保持私密,不要泄露给他人或在公共场所存放。

posted @ 2024-04-16 15:54  年轻人——001  阅读(1347)  评论(0编辑  收藏  举报