问题标签 [authorized-keys]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
21295 浏览

git - 无法打开用户的 ssh/authorized_keys

我知道这对你们中的一些人来说可能是微不足道的。

我不是 linux 专家,我正在尝试使用 git。为此,我想尝试将我的公共 SSH 密钥添加到~/.ssh/authorized_keys我的用户 git 中。

但问题是,当我使用 git 用户使用 putty 登录到我的服务器时,我无法访问任何名为~/.ssh/authorized_keys.

所以我试着用root来做,也许这是解决方案,但我认为authorized_keys每个用户都有一个。

我可以看到授权密钥,但我不想把所有事情都搞砸,所以我想清楚这一点。有没有办法使用我的 git 用户帐户并修改ssh/authorized_keys

非常感谢!

0 投票
1 回答
1719 浏览

ssh - Amazon EC2 AMI 根 Authorized_keys

我正在使用 EC2 上的公共 RedHat AMI,并尝试创建一个默认情况下允许sshroot 的图像。我更改了/etc/ssh/sshd_config文件,使其PermitRootLogin设​​置为yes,并更改/root/.ssh/authorized_keys为文件以ssh-rsa而不是开头:

执行此操作后,我能够以 root 身份 ssh 进入我的实例,但是当我从该实例创建自定义 AMI 时,该/root/.ssh/authorized_keys文件将恢复为不允许它的旧版本。

我想知道如何使我的自定义AMI默认启用root ssh,或者是否有某个文件将root的authorized_key文件更改回我可以编辑的原始文件。

谢谢!

0 投票
0 回答
1290 浏览

ssh - 缺少授权密钥文件 - AWS

我已经使用 AWS 实例一个多月了。但突然之间,我无法使用 SSH 登录我的 AWS。我说权限被拒绝(公钥)。然后我发现必须将一些东西附加到 authorized_keys 中,我去寻找文件~.ssh/夹中的文件。但它不见了。我是新来的。来人帮帮我。

0 投票
1 回答
5851 浏览

ssh - 在 Docker 镜像上设置 ssh 公钥

我设置了一个支持 ssh 的 Docker 映像。没问题,很多例子。但是,大多数示例显示使用 passwd 设置密码。我想分发我的图像。拥有固定密码,尤其是 root 密码,似乎是一个巨大的安全漏洞。对我来说,更好的是使用没有密码的 root 设置图像。当用户获取图像时,他们会将其公共 ssh 文件复制到图像 /root/.ssh/authorized_keys 文件中。

有推荐的方法吗?

  1. 使用用户可以编辑的 ADD 命令提供基于我的图像构建的 Dockerfile?
  2. 提供一个运行类似“cat ~/.ssh/authorized_keys | docker run -i sh -c 'cat > root/.ssh/authorized_keys”的 shell 脚本?
0 投票
1 回答
1892 浏览

python - 从python中的ssh2公钥中提取authorized_keys密钥的密钥

我正在尝试为 authorized_keys 文件提取所需的密钥。它与我打开密钥文件 (.pub) 时得到的不同。到目前为止,这是我的代码。每当我尝试在 pubfile 上运行它时,我都会在文件的第一行得到一个指向 SSH2 的无效语法。“---- BEGIN SSH2 PUBLIC KEY ----” 我不知道为什么这不起作用。提前感谢您的帮助

0 投票
6 回答
96335 浏览

ssh - 如何使用 id_rsa.pub 密钥在远程服务器上附加授权密钥

如何使用单个命令从本地计算机使用 id_rsa.pub 密钥在远程服务器上附加 authorized_keys?

0 投票
0 回答
4979 浏览

permission-denied - CentOS 7 - sshd:如果用户主文件夹在另一个分区上,则授权密钥上的权限被拒绝

我有一个让我发疯的问题......我现在尝试修复它至少 2 小时 - 但我不是很成功。

问题本身:我在应该托管我们的 git 和 gitolite 环境的 VM 上安装了 CentoS7(我不知道它是否是 CentOs 7 的特定行为)。我安装了所需的服务和用户。一切运行良好,我可以通过 SSH 连接密码和基于密钥的身份验证。所有用户的主目录都在 /home/ 中。现在,我想用 /srv/data/home/git (/srv 在一个单独的分区上)添加一个新用户(git)作为主目录并启用基于密钥的身份验证。两个分区都是 ext4 格式。

我安装了 gitolite 并根据官方文档创建了用户:

gitolite setup 命令的输出是:

在 /srv/data/home/git/repositories/gitolite-admin.git/ 中初始化空 Git 存储库 在 /srv/data/home/git/repositories/testing.git/ 中初始化空 Git 存储库 警告:/srv/data/home /git/.ssh/authorized_keys 丢失;创建一个新的(这在全新安装中是正常的)

下一步包括克隆 gitolite-admin 存储库,该存储库不断失败:

请点击此链接查看整个 debug3 日志:http ://pastebin.com/eiZSTu55

最重要的几行:

现在,我做了一些检查:

我又做了一些测试。在下面找到我的测试用例的摘要: - 使用 /home/testuser 作为主目录创建了一个用户,重复了 .ssh 目录的步骤并将我的 pub 密钥移动到它。结果:工作正常!- 使用 /srv/testuser2 作为主目录创建了一个用户,并执行与上述完全相同的操作。结果:authorized_keys 文件上的权限被拒绝 - 使用 /home/testuserls 作为主目录创建了一个新用户,并为 .ssh 目录重复了这些步骤。现在我创建了一个从 /home/testuser3 到 /home/testuserls 的符号链接,并修改了 /etc/passwd 以将 /home/testuser3 设置为该用户的主目录。结果:工作正常!- 使用 /srv/testuser4 作为主目录创建一个新用户,放入 .ssh 文件夹并创建从 /home/testuser4 到 /srv/testuser4 的符号链接,并再次修改 /etc/passwd 以将他的主目录映射到 /home /testuser4. 结果:

这给了我:

我不知道为什么会发生这种情况以及如何解决这个问题。它与CentOS7有关吗?我是瞎子还是傻子?这是版本 openssh-server-6.4p1-8.el7.x86_64 中 ssh 守护程序的新限制吗?我在谷歌或这边没有发现任何类似的问题,也找不到任何解决方案......任何帮助将不胜感激!

更新 I 所有分区(当然交换除外)都被格式化为 ext4。/etc/mtab 中的相应行是:

我不使用任何 ACL。否则,它应该在上面的行中列为挂载选项,对吧?UID 1000 是用户 git 的 UID。

让我们检查从 / 开始的权限

** 更新二 - 已修复 **

原来selinux被激活了。该问题已通过 .ssh-Folder 上的以下命令修复:

0 投票
1 回答
483 浏览

ssh - 如何向 Gitolite 添加新的 ssh 密钥

我只是想添加一个新密钥。所以我将它添加到keydir中,在gitolite conf中设置权限,提交并推送,但没有。

什么时候将新密钥添加到 .ssh 授权密钥文件中?因为似乎新密钥永远不会进入那里,这就是为什么使用密钥的人无法访问...

0 投票
1 回答
778 浏览

ssh - 仅当我从其他操作系统挂载磁盘时创建文件时,authorized_keys 权限才会被拒绝

环境:

VM A : 我想在没有密码的情况下访问的机器

VM B : 我想从机器上访问没有密码的 VM A

问题描述:

由于我想在没有密码的情况下从 VM B 访问 VM A,我想首先将 VM B 的公钥注入 VM A,但如果我使用 ssh-copy,我仍然需要密码,所以我尝试通过挂载注入文件。

步骤:

  1. 从 LiveCD 启动 VM A
  2. 挂载VM A的根盘(包含操作系统)
  3. 在 ${mount_point}/root/.ssh/ 下创建一个 authorized_keys 文件
  4. 将 VM B 的公钥放入 authorized_keys 文件中
  5. 停止 VM A 并移除 LiveCD,然后再次启动 VM A
  6. 通过命令从 VM B 访问 VM A

    ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o PasswordAuthentication=no root@9.112.224.130

结果:

但是在我执行了以下命令之后,它就可以工作了(文件模式都是 600 并且与 diff 命令没有区别)

所以我尝试再次注入它,但是这次,我在从LiveCD启动之前创建了一个空的authorized_keys文件,并跳过了第3步,其他步骤都一样,这次VM B可以在没有密码的情况下访问VM A

问题:

  1. authorized_keys 和 authorized_keys_bak 的属性都是一样的,为什么一个有效,一个无效?

  2. 我的authorized_keys 只能在我创建文件而不是从LiveCD 挂载时工作?

0 投票
2 回答
1477 浏览

ssh - Puppet root 授权密钥文件

我一直在玩 puppet,遇到了一个困扰我的问题。也许有人可以提供一些启示。这个想法是我有一个 rsync 脚本来更新我的 puppet master 上的 authorized_keys 文件。每 4 小时 puppet 代理抓取新的 authorized_keys 文件。

这是主清单

我的代理虽然收到此错误

错误:无法应用目录:不是目录 - /root/.ssh/authorized_keys