softlayer api: 更改 root 密码和 ssh-key 操作
softlayer api: change root password and ssh-key operation
我是一名开发人员,我目前的工作是编写一个脚本来管理软层虚拟机。问题是关于更改 Root 密码和绑定(删除绑定)SshKey。我的问题是:
我有一个运行 softlayer vm,wihch softlayer api可以帮我修改vm的root密码。
我有一个 运行 softlayer vm,它之前没有绑定 sshkey。是否有任何软层 api 可以帮助我将 ssh-key 与此 vm 绑定?
与第2点相反,如何使用softlayer解绑sshkey api?
关于您的第一个问题,从虚拟机更改 root 密码,请按照以下步骤操作:
从虚拟机中检索密码的标识符
https://$user:$apiKey@api.softlayer.com/rest/v3.1/SoftLayer_Virtual_Guest/$vsiId/getSoftwareComponents?objectMask=mask[passwords]
Method: Get
将$user、$apiKey和$vsiId替换为自己的信息
你会得到这样的结果:
hardwareId": null
"id": 345676755
"manufacturerLicenseInstance": "C412F72A-1BB1-4C07-9467-E55729234F8E"
"passwords": [1]
0: {
"createDate": "2016-06-09T11:10:28-03:00"
"id": 122333
"modifyDate": "2016-09-06T11:19:18-03:00"
"password": "Cochabamba"
"port": null
"softwareId": 11209641
"username": "Ruber"
"software": null
}
}
然后您可以使用以下调用进行更新:
https://$user:$apiKey@api.softlayer.com/rest/v3.1/SoftLayer_Software_Component_Password/$passwordId/editObject
Method: Post
{
"parameters":[
{
"username":"usernameTest",
"password":"Password*-"
}
]
}
将$user、$apiKey和$passwordId替换为自己的信息,在这种情况下,$passwordId 是:122333
关于您的 second 和 third 问题,不幸的是,无法通过 SoftLayer API 完成此操作,它是需要进行 OS 重新加载
- 我有一个运行 softlayer vm,wihch softlayer api可以帮我修改vm的root密码
Ruber Cuellar 发布的答案将更改 SoftLayer API、中列出的密码,但不会更改您系统上的密码,除非您执行 OS 重新加载。 API 方法实际上不会改变 运行 系统上的任何内容。
- 我有一个 运行 softlayer vm,它之前没有绑定 sshkey。是否有任何软层 api 可以帮助我将 ssh-key 与此 vm 绑定?
没有。您当然可以手动添加密钥。
https://help.ubuntu.com/community/SSH/OpenSSH/Keys
- 与第2点相反,如何使用softlayer解绑sshkey api?
不,但您也可以手动删除它们。
以下内容对于将 SSH 密钥与 SoftLayer 一起使用可能也很有用 API
http://sldn.softlayer.com/reference/services/SoftLayer_Security_Ssh_Key
http://softlayer-api-python-client.readthedocs.io/en/latest/api/managers/sshkey/
我是一名开发人员,我目前的工作是编写一个脚本来管理软层虚拟机。问题是关于更改 Root 密码和绑定(删除绑定)SshKey。我的问题是:
我有一个运行 softlayer vm,wihch softlayer api可以帮我修改vm的root密码。
我有一个 运行 softlayer vm,它之前没有绑定 sshkey。是否有任何软层 api 可以帮助我将 ssh-key 与此 vm 绑定?
与第2点相反,如何使用softlayer解绑sshkey api?
关于您的第一个问题,从虚拟机更改 root 密码,请按照以下步骤操作:
从虚拟机中检索密码的标识符
https://$user:$apiKey@api.softlayer.com/rest/v3.1/SoftLayer_Virtual_Guest/$vsiId/getSoftwareComponents?objectMask=mask[passwords]
Method: Get
将$user、$apiKey和$vsiId替换为自己的信息
你会得到这样的结果:
hardwareId": null
"id": 345676755
"manufacturerLicenseInstance": "C412F72A-1BB1-4C07-9467-E55729234F8E"
"passwords": [1]
0: {
"createDate": "2016-06-09T11:10:28-03:00"
"id": 122333
"modifyDate": "2016-09-06T11:19:18-03:00"
"password": "Cochabamba"
"port": null
"softwareId": 11209641
"username": "Ruber"
"software": null
}
}
然后您可以使用以下调用进行更新:
https://$user:$apiKey@api.softlayer.com/rest/v3.1/SoftLayer_Software_Component_Password/$passwordId/editObject
Method: Post
{
"parameters":[
{
"username":"usernameTest",
"password":"Password*-"
}
]
}
将$user、$apiKey和$passwordId替换为自己的信息,在这种情况下,$passwordId 是:122333
关于您的 second 和 third 问题,不幸的是,无法通过 SoftLayer API 完成此操作,它是需要进行 OS 重新加载
- 我有一个运行 softlayer vm,wihch softlayer api可以帮我修改vm的root密码
Ruber Cuellar 发布的答案将更改 SoftLayer API、中列出的密码,但不会更改您系统上的密码,除非您执行 OS 重新加载。 API 方法实际上不会改变 运行 系统上的任何内容。
- 我有一个 运行 softlayer vm,它之前没有绑定 sshkey。是否有任何软层 api 可以帮助我将 ssh-key 与此 vm 绑定?
没有。您当然可以手动添加密钥。 https://help.ubuntu.com/community/SSH/OpenSSH/Keys
- 与第2点相反,如何使用softlayer解绑sshkey api? 不,但您也可以手动删除它们。
以下内容对于将 SSH 密钥与 SoftLayer 一起使用可能也很有用 API
http://sldn.softlayer.com/reference/services/SoftLayer_Security_Ssh_Key
http://softlayer-api-python-client.readthedocs.io/en/latest/api/managers/sshkey/