Подключение к EC2 с помощью keypair (.pem файл) через Fabric
У любого есть рецепт Fabric, который показывает, как подключиться к EC2 с помощью файла pem?
Я попробовал написать его таким образом:
Команда запуска Python Fabric возвращает "binascii.Error: Неправильное дополнение"
Но я столкнулся с проблемой кодирования, когда я выполняю функцию run()
.
Ответы
Ответ 1
Чтобы использовать файл pem, я обычно добавляю pem к агенту ssh, а затем просто ссылаюсь на имя пользователя и хост:
ssh-add ~/.ssh/ec2key.pem
fab -H [email protected] deploy
или укажите информацию env (без ключа), как пример, с которым вы связались:
env.user = 'ubuntu'
env.hosts = [
'ec2-host'
]
и выполняйте как обычно:
fab deploy
Ответ 2
Без решения проблемы с кодировкой вы можете поместить свой материал EC2 в конфигурационный файл ssh:
или, если global:
Здесь вы можете указать свой хост, IP-адрес, пользователь, идентифицировать файл и т.д., поэтому это просто:
ssh myhost
Пример:
Host myhost
User ubuntu
HostName 174.129.254.215
IdentityFile ~/.ssh/mykey.pem
Подробнее: man ssh_config
Ответ 3
Еще одна вещь, которую вы можете сделать, - установить key_filename в переменной env: fooobar.com/info/66076/...