AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 409788
Accepted
mik
mik
Asked: 2012-07-21 14:34:26 +0800 CST2012-07-21 14:34:26 +0800 CST 2012-07-21 14:34:26 +0800 CST

SSH 自动登录偶尔会起作用

  • 772

我正在安装 20 台服务器。

在每个特定用户上,我创建了一个 dsa 密钥。

我cat key.pub从每台服务器到~/.ssh/authorized_keys第一台服务器

我验证了所有服务器都可以在没有密码的情况下登录到第一台服务器。

使用 puppet,我将.ssh/authorized_key第一台服务器复制到所有其他服务器。

权限一样,600

我无法自动登录;它仍然适用于从服务器到第一个 - 但不适用于任何其他服务器。我以用户身份登录,ssh 到其他服务器 - 它要求我输入密码。

我重新启动了 sshd 服务,但没有用。/etc/ssh/sshd_config 在第一台服务器和所有其他服务器上是相同的。

这是 RHEL6。

有任何想法吗?我做错什么了吗?

这是人偶文件;现在可以用了——我的根是 775

file {"/home/user":
    owner   => user,
    group   => user,
    ensure  => directory,
    mode    => 755,
}

file {"/home/user/.ssh":
    owner   => user,
    group   => user,
    ensure  => directory,
    mode    => 700,
}

file {"/home/user/.ssh/authorized_keys":
    owner   => user,
    group   => user,
    ensure  => file,
    mode    => 600,
    source => "puppet://puppet/files/user_sshkeys.txt";
}
ssh
  • 3 3 个回答
  • 410 Views

3 个回答

  • Voted
  1. Best Answer
    ewwhite
    2012-07-22T07:49:06+08:002012-07-22T07:49:06+08:00

    目录的权限~/.ssh应该是700。该~/.ssh/authorized_keys文件的权限应为600. 您可能希望限制用户对用户主目录的写入权限。

    chmod go-w ~/
    chmod 700 ~/.ssh
    chmod 600 ~/.ssh/authorized_keys
    

    不要使用cat,而是尝试使用ssh-copy-id命令,因为它会处理这些权限。

    你能告诉我们你的 Puppet 文件指令是什么样子的吗?这可能可以在那里得到纠正。

    • 2
  2. n2deep
    2012-07-21T15:01:13+08:002012-07-21T15:01:13+08:00

    您尝试设置的称为“基于主机的身份验证”。对此进行网络搜索,您会找到所需的内容。这是一个高级 SSH 主题,一旦完成就很容易做到。

    • 0
  3. SW.
    2013-04-11T15:17:21+08:002013-04-11T15:17:21+08:00

    Puppet(在我写这篇文章时,版本 3.1.1)有一个名为ssh_authorized_key. 使用这个你可以简单地将你的密钥推送到你的机器,它会为你处理权限等。

    这是我的配置中的内容:

    ssh_authorized_key { 'root pub key':
        ensure  => present,
        key     => "yourkeyhere",
        name    => "name@server",
        user    => "user",
        type    => "ssh-rsa",
    

    您可以在此处查看相关文档。

    否则,有些模块由其他人编写,它们做的事情大致相同,但提供了一些额外的选项,因为该类型的功能有一些限制ssh_authorized_key。

    • 0

相关问题

  • 如何最好地设置 ssh 隧道以访问远程网络 (Linux)

  • SSH 和重定向

  • 通过 SSH 会话使用 NET USER 命令拒绝访问

  • SSH 服务器零日漏洞利用 - 保护自己的建议

  • ubuntu apt-get upgrade - 如何在 shell 中单击确定?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve