2 个 AWS EC2 实例之间的 rsync:找不到 .pem 文件
rsync between 2 AWS EC2 insatnces: cannot locate .pem file
需要一点帮助。
我想不时地手动 运行 一个脚本来在我的生产实例和开发实例之间移动文件。
目前我将其作为 shell 脚本:
rsync --progress -avz -e "ssh -vvv -i $HOME/.ssh/my-ubuntu-ec2.pem" ubuntu@:111.111.111.111/var/www/test /var/www/test
我的问题是无法找到或联系 .pem 文件。我搜索了常用的地方并在整个系统中进行了文件搜索,但没有任何结果。
有问题的密钥对是通过控制台创建的,我以通常的方式手动将密钥添加到 authorized_keys。我原以为控制台会将密钥部署到 EC2 实例,但事实似乎并非如此。至少,我找不到。
我相信有人会发现我哪里出错了!
提前致谢,
杰森
在 Amazon EC2 管理控制台中创建密钥对时,密钥对(.pem
文件)会下载到您的计算机。这是私钥。
在控制台中创建密钥对不会将密钥放在任何现有的 Amazon EC2 实例上。但是,在启动新实例时,您可以 select 一个密钥对,它将被添加到 /home/ec2-user/.ssh/authorized_keys
文件中。
如果您有私钥,您可以使用以下命令从 .pem 文件生成 public 密钥:
ssh-keygen -y -f key.pem > key.pub
public 密钥应放置在目标计算机的目标用户的 ~/.ssh/authorized_keys
文件中(在您的命令示例中为 ubuntu
)。
私钥应在源计算机上使用(根据代码示例中的 my-ubuntu-ec2.pem
)。
如果您丢失了私钥,您将需要生成一个新私钥并替换实例上的密钥。
需要一点帮助。
我想不时地手动 运行 一个脚本来在我的生产实例和开发实例之间移动文件。
目前我将其作为 shell 脚本:
rsync --progress -avz -e "ssh -vvv -i $HOME/.ssh/my-ubuntu-ec2.pem" ubuntu@:111.111.111.111/var/www/test /var/www/test
我的问题是无法找到或联系 .pem 文件。我搜索了常用的地方并在整个系统中进行了文件搜索,但没有任何结果。
有问题的密钥对是通过控制台创建的,我以通常的方式手动将密钥添加到 authorized_keys。我原以为控制台会将密钥部署到 EC2 实例,但事实似乎并非如此。至少,我找不到。
我相信有人会发现我哪里出错了!
提前致谢,
杰森
在 Amazon EC2 管理控制台中创建密钥对时,密钥对(.pem
文件)会下载到您的计算机。这是私钥。
在控制台中创建密钥对不会将密钥放在任何现有的 Amazon EC2 实例上。但是,在启动新实例时,您可以 select 一个密钥对,它将被添加到 /home/ec2-user/.ssh/authorized_keys
文件中。
如果您有私钥,您可以使用以下命令从 .pem 文件生成 public 密钥:
ssh-keygen -y -f key.pem > key.pub
public 密钥应放置在目标计算机的目标用户的 ~/.ssh/authorized_keys
文件中(在您的命令示例中为 ubuntu
)。
私钥应在源计算机上使用(根据代码示例中的 my-ubuntu-ec2.pem
)。
如果您丢失了私钥,您将需要生成一个新私钥并替换实例上的密钥。