Я пытаюсь подключиться к EC2 по SSH с компьютера Windows. После установки CYGWIN (с включенным SSH) я попытался выполнить следующую команду:
ssh -i /cygdrive/c/cygwin64/home/user/.ssh/user-pc.pem ec2-user@ec2-xx-xxx-xxx-xxx.compute-1.amazonaws.com
Что возвращается
Псевдотерминал не будет выделен, потому что stdin не является терминалом.
Я также попытался перейти в каталог на /home/user/.ssh и запустить команду оттуда после соответствующего изменения пути к файлу .pem. Однако получаю тот же результат.
Что я могу сделать, чтобы это исправить?
Попробуйте запустить ssh с -t
вариант, например:
ssh -t -i /cygdrive/c/cygwin64/home/user/.ssh/user-pc.pem ec2-user@ec2-xx-xxx-xxx-xxx.compute-1.amazonaws.com
Добавив -t
параметр, который вы указываете, ssh принудительно создает псевдотерминал, даже если он обычно не создает его.
Что в итоге сработало для меня, так это переустановка Cygwin, убедившись, что все компоненты SSH добавлены во время установки. Вдобавок мне пришлось «cd» войти в каталог с файлом .pem и запустить команду оттуда.