Я подключаюсь к экземпляру EC2 Amazon Web Service (AWS) в частной подсети виртуального частного сервера через экземпляр NAT и получаю следующую ошибку:
В доступе отказано (publickey)
Это происходит после того, как я подключился к NAT и пытаюсь подключиться по SSH к экземпляру частной подсети EC2.
Процедура:
Определите хост в
~/.ssh/config
следующим образом:Host my_aws_nat Hostname xx.xx.xx.xx User ec2-user IdentityFile /location/of/my/aws/key_pair.pem ForwardAgent yes
SSH к экземпляру NAT через
ssh my_aws_nat
(что успешно)SSH к экземпляру в частной подсети
ssh ec2-user@10.0.X.X
- когда я получаю ошибку
Я могу пинговать свой личный экземпляр с моего NAT с помощью ping 10.0.X.X
Так что я уверен, что это не проблема групп безопасности. Похоже, это проблема переадресации агентов.
В настоящее время экземпляр, к которому я подключаюсь, использует ту же пару ключей, что и экземпляр NAT (в режиме обучения).
Другой способ, которым я пробовал, это подключиться к NAT с помощью:
ssh -A ec2-user@XX.XX.XX.XX -i key_pair.pem
Что опять-таки правильно подключается к NAT, но выдает ту же ошибку при подключении к частному экземпляру.
Нужно ли использовать ssh-agent
в Mac OS X?
Или не следует указывать ForwardAgent yes
в /.ssh/config
делать то же самое?