【问题标题】:Server refused our key, set authorized_keys perrmissions to 777服务器拒绝了我们的密钥,将 authorized_keys 权限设置为 777
【发布时间】:2016-11-09 06:30:31
【问题描述】:

我正在从我的 ec2 实例上的主目录复制一些文件,出于懒惰,我运行了命令 sudo chmod 777 /home/ec2-user/*。我猜这使我的 .ssh 文件夹和authorized_keys 也可能拥有 777 权限。事实证明,如果 authorized_keys 设置为 777,您就无法使用这些密钥通过 SSH 进入该框(因为其他用户可能已对其进行了更新)。

我的问题是,我该如何解决这个问题并再次登录我的盒子?这是一个 ec2 实例,所以我必须 ssh 进入。

【问题讨论】:

    标签: amazon-web-services ssh amazon-ec2 public-key-encryption


    【解决方案1】:

    为使停机时间最短,请获取实例的映像(在无重启模式下)并使用此映像和您之前指定的密钥创建一台新机器。 AWS 在创建新框时,将密钥放置在适当的权限中。

    请注意,私有和公共 IP 会发生变化,如果您不想更改 IP,请使用弹性 IP,然后使用弹性 IP。

    【讨论】:

    • 不幸的是,这对我不起作用...同样的问题仍然存在,看起来密钥没有被替换...作为说明,我使用了与旧密钥相同的私钥例如,所以我不知道这是否影响它。
    【解决方案2】:

    要更改权限,您需要访问实例内的文件。

    由于您无法在实例中 ssh,因此您需要执行以下操作:

    1. 为您的应用程序安排停机时间,因为您需要停止该实例。
    2. 备份 Instance Store 中的所有内容(临时卷)。
    3. 停止实例。
    4. 从相关 EC2 实例中分离卷。
    5. 将卷附加到另一个工作的 EC2 实例。
    6. 对您的 .ssh 目录及其文件进行 chmod 更改。
    7. 分离卷。
    8. 附加到有问题的 EC2 实例。
    9. 启动 EC2 实例。
    10. 尝试连接到 EC2 实例。

    请注意,如果您没有为实例配置弹性 IP,IP 地址会发生变化。

    有关将卷附加到 EC2 实例的更多信息,请参阅此AWS Documentation

    【讨论】:

    • 当我单击卷选项卡以分离卷时,我的实例重新启动。你知道为什么吗? stackoverflow.com/questions/38290095/…
    • 因为从逻辑上讲,您正在从正在运行的机器中删除存储设备。
    • 我的但是为什么我的实例在停止后继续重启
    猜你喜欢
    • 2013-01-12
    • 2011-11-08
    • 2017-02-07
    • 1970-01-01
    • 2022-09-30
    • 2020-01-22
    • 2019-01-13
    • 1970-01-01
    相关资源
    最近更新 更多