在Bash Shell WSL中添加永久SSH代理转发

时间:2018-08-23 10:36:21

标签: amazon-web-services ssh

我正在尝试将mykeypair.pem永久添加到Windows bash中的〜/ .ssh / config文件中。 我已经在〜/ .ssh / config cmod 600中授予了配置文件权限。 mykeypair.pem的位置是

/mnt/c/Users/xxx/AWS/mykeypair.pem

我添加了

IdentityFile /mnt/c/Users/xxx/AWS/mykeypair.pem

到〜/ .ssh / config中的配置文件,但收到消息

Permission denied (publickey)

我在做什么错了?

merci A

3 个答案:

答案 0 :(得分:1)

  1. 创建文件

    $ nano ~/.ssh/config

  2. 在WSL中创建目录~/.ec2,然后在其中复制 mykeypair.pem

  3. 更改权限chmod 600 ~/.ssh/config
  4. 插入〜/ .ssh / config

    AddKeysToAgent yes
    IdentityFile ~/.ssh/mykeypair
    
  5. 使用$ ssh -A ubuntu@public DNS

答案 1 :(得分:0)

mykeypair.pem文件需要只读权限。在Windows上,这实际上是正确设置的麻烦。

以下是我必须运行的命令,以便在Windows系统上正确设置权限。如果您跳过任何步骤,它将无法正常工作。 SSH-KEYGEN是一个很好的工具,可用来验证您是否设置了正确的权限(ssh-keygen -y -f mykeypair.pem> mykeypair.pub.openssh)

REM Disable inheritance on mykeypair.pem
icacls mykeypair.pem /inheritance:d

REM Delete "NT AUTHORITY\Authenticated Users" from having any rights
icacls mykeypair.pem /remove "NT AUTHORITY\Authenticated Users"

REM Delete "BUILTIN\Users" from having any rights
icacls mykeypair.pem /remove "BUILTIN\Users"

REM Grant Read-Only rights to me
icacls mykeypair.pem /GRANT:R "%USERNAME%:(R)"

答案 2 :(得分:0)

以下是一些可能的原因,

  1. 检查私钥的许可并将其许可设置为600。
  2. 使用正确的私钥。
  3. 使用正确的用户名或将用户添加到您的配置中,例如User vikas

希望这会有所帮助。