使用CLI添加SSH密钥对到OpenStack
时间:2020-02-23 14:45:23 来源:igfitidea点击:
本教程基于OpenStack Ocata Release。
公共/私钥对通过在服务器上保留公钥以及本地工作站上的私钥。
一旦服务器验证了两个键匹配,就可以进行安全连接。
所以让我们生成新的SSH密钥对,如果我们已经有一个:
$ssh-keygen -t rsa -b 4096 Generating public/private rsa key pair. Enter file in which to save the key (/home/josphat/.ssh/id_rsa): Created directory '/home/josphat/.ssh'. Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /home/josphat/.ssh/id_rsa. Your public key has been saved in /home/josphat/.ssh/id_rsa.pub. The key fingerprint is: 28:14:e0:14:11:0d:77:23:2d:6c:65:12:4e:26:a1:de Hyman@theitroad The key's randomart image is: +--[ RSA 4096]----+ | XXO+= | | + *=*.. | |. ..o. | |. .. . | | . E. . S | | . | | | | | | | +-----------------+
将键复制到剪贴板:
xclip -sel clip < ~/.ssh/id_rsa.pub
然后登录OpenStack控制器节点并将密钥保存到文件:
vim josphat.pub
粘贴文件中的密钥内容,然后保存。
下一步是使用OpenStack Keypair命令导入密钥:
# openstack keypair create --public-key josphat.pub josphat +-------------+-------------------------------------------------+ | Field | Value | +-------------+-------------------------------------------------+ | fingerprint | 19:7b:5c:14:a2:21:7a:a3:dd:56:c6:e4:3a:22:e8:3f | | name | josphat | | user_id | 93f0f5c4197f4f73b01bfe8086ecbec0 | +-------------+-------------------------------------------------+
最后的"josphat"是凯内特的名称,如OpenStack命令CLI和Horizo n Dashboard所示。
确认:
# openstack keypair list +---------------+-------------------------------------------------+ | Name | Fingerprint | +---------------+-------------------------------------------------+ | jmutai_pubkey | 19:7b:5c:14:a2:21:7a:a3:dd:56:c6:e4:3a:22:e8:3f | | josphat | 19:7b:5c:14:a2:21:7a:a3:dd:56:c6:e4:3a:22:e8:3f | +---------------+-------------------------------------------------+
通过进入Project>键对,可以在Horizo n Dashboard上确认同样的情况:
OpenStack可以将公共SSH键注入启动的实例,以便在准备就绪后,我们可以使用私钥访问。
继续创建一个新的VM,带有上传的密钥对:
openstack server create --flavor m1.tiny --image CoreOS-x86_64 \ --nic net-id=a54af9d4-d297-45b6-a98c-79d84add5f2e --security-group default \ --key-name josphat coreos-test-vm
如果我们没有上传任何图像,我就如何将图像添加到OpenStack的全面教程,请在下面的链接上查看:
将镜像添加到OpenStackGlance
网络ID,镜像名称(ID)和安全组可以使用:
# openstack image list # openstack network list # openstack security group list
检查是否创建的实例正在运行,并获取其IP地址:
openstack server list
验证Access:
$ping -c 4 ip_address
我们现在可以使用以下方式登录VM:
ssh Hyman@theitroad_address
由于我正在使用CoreOS镜像,默认用户名是核心
Hyman@theitroad ~ $cat /etc/os-release NAME="Container Linux by CoreOS" ID=coreos VERSION=1409.8.0 VERSION_ID=1409.8.0 BUILD_ID=2016-08-10-0112 PRETTY_NAME="Container Linux by CoreOS 1409.8.0 (Ladybug)" ANSI_COLOR="38;5;75" HOME_URL="https://coreos.com/" BUG_REPORT_URL="https://issues.coreos.com" COREOS_BOARD="amd64-usr"