来自 数据 2021-07-18 06:05 的文章

cc防御_游戏盾隐藏ip的原理_超高防御

问题:我需要为服务器添加一个SSH密钥帐户。通过Halo API可以创建或修改服务器帐户,并通过在POST或PUT调用的请求正文中提供密钥数组来更新其SSH密钥集。CloudPassation提供了一个REST API集合,这些API接受并返回JSON格式的数据。**注意**自撰写此博客文章以来,Halo API已经发生了变化–请参阅Halo API开发人员指南,并使用Halo API了解详细信息。我们将利用REST控制台Chrome扩展来执行web调用。(restconsole是一个HTTP请求可视化工具和构造函数工具,帮助开发人员构建、调试和测试restfulapi。)我们将查看位于来,走1获取执行SSH密钥所需的API调用更新。查找在API指南中,我们会找到一个只处理"服务器帐户"的部分。在"服务器帐户"下面有"更新服务器帐户的SSH密钥"部分,阿里云服务器防御ddos,注意PUT的格式调用:PUT https://portal.cloudpassage.com/api/1/servers/{server{id}/accounts/{username}注意GET的格式呼叫:获取https://portal.cloudpassage.com/api/1/servers/{server}id}/accounts/{username}正在查看两个调用我们将看到它们都需要2个变量;{server}和{username}。我们很可能知道要添加密钥的用户名,但是什么是服务器标识?Server_id是Halo分配给每个服务器的唯一id。我们将使用GET调用获取当前帐户信息,并使用PUT调用更新所需的帐户。PUT调用将要求在请求中传递数据身体。注意请求主体的格式为:{"account":{"ssh_authorized_keys":[{"key":"ssh dsa aae0644012e21a713e06448012ksadk1ks2229askd913e06448012e21a713 current key"},{"key":"ssh dsa aaaae0644012egfjhdgyw3433333rfsfsfs480sk2kdk2lk2209ss2e21a713 new key"}}}}现在这个调用类型将删除"授权密钥"中可能包含的任何现有密钥。所以一定要在你的PUT call中加入任何已经在里面的键。在这里您可以看到我们正在添加当前键和带有PUT调用的新键。如果您想用一个新的键替换当前的键,那么只需包含新的键键。步骤2Let获取要添加SSH密钥的服务器的server_id值。我们将执行一个GET调用,该调用将返回活动服务器及其相应的服务器标识的列表值。查询服务器上写着:"获取https://portal.cloudpassage.com/api/1/servers"应返回:"servers":[{"id":"ffac359ce7536515a44204628ca8ce3","url":https://portal.cloudpassage.com/api/1/servers/ffac359ce7536515a44204628ca8ce3", "hostname":"ip-10-xx-xx-xx","连接逯ip_address":"23.20。xxx.xxx公司","state":"active","interfaces":[{"name":"eth0","ip地址":"10.70。xxx.xxx公司"}]}]}我们看到第2行列出了服务器"id"。在下面的步骤中,我们需要使用这个"id"来推送ssh钥匙。台阶3让我们设置REST控制台,以便执行所需的调用。首先,在"Target"部分,有效的ddos防御方案有哪些,我们将添加URL GET调用,免费的ddos防御,服务器的标识为"ffac359ce7536515a44204628ca8ce3"和用户名"Bob"https://portal.cloudpassage.com/api/1/servers/ffac359ce7536515a44204628ca8ce3/accounts/bob"看下面。第二在"Body"部分,我们将把内容类型定义为"application/json",并在请求参数下添加API键作为"x-cpauth-access"。API密钥是必需的,它将向您的特定帐户的cloudpassions服务器验证您的身份。看到了吗下面。表演获取并返回用户名"Bob"的帐户信息,在我们的REST控制台上按"GET",将使用当前设置的变量执行API调用。正如您在我们的"响应"部分中看到的,返回"Bob"的帐户信息。注意;如果REST控制台没有检测到"Syntax Highlighting",udpddos攻击防御,您可以将其强制为"JSON"。另请注意,"authorized_ssh_keys"的值为"null"。尚未为此帐户设置SSH密钥。看到了吗下面。步骤4让我们在Rest控制台的"Body"部分添加一个"Request Payload",这样我们就可以将SSH密钥添加到"Bob"中账户。我们的"Target"将保持不变,但是我们将添加到"Request Payload"。目标=https://portal.cloudpassage.com/api/1/servers/ffac359ce7536515a44204628ca8ce3/accounts/bobRequest Payload={"account":{"ssh_authorized_keys":[{"key":"ssh dsa aae0644012e21a713e06448012e21a713e06448012e21a713=="},{"key":"ssh dsa aaae06448012egfjhdyw3433333rfsfsfs48012e21a713e06448012e21a713=="}]}在这里我们要向帐户"Bob"添加两个密钥。看到了吗下面。步骤5执行"PUT"并将SSH密钥添加到帐户"Bob"中,哪家高防cdn好,按REST控制台上的"PUT"按钮将把API请求发送到cloudpassion服务器,添加我们在"请求负载"中定义的SSH密钥。看到了吗下面。那个REST控制台的"Response"部分显示我们刚刚执行的"PUT"调用的状态。我们可以看到SSH密钥已添加到队列中,当前状态为"queued"。Queued意味着下次在该服务器上运行的守护进程检入CloudPassage计算网格时,它将收到一个命令,将SSH密钥添加到"Bob"帐户。由于守护进程的签入时间设置为1分钟,因此密钥将在不到分。步6验证密钥是否已添加到帐户"Bob"中,让我们继续登录服务器,看看SSH密钥是否确实已添加到帐户"Bob"中。看到了吗下面。看在/home/bob/.ssh中,我们看到"authorized\u keys"文件确实包含我们刚刚通过API添加的密钥打电话。所以就这样。我们已经查询了CloudPassage API中的服务器_id,使用我们的API密钥对自己进行身份验证,并将一个新密钥推送到所选服务器和特定帐户。所有这些都是针对Chrome的REST控制台插件。这一切都可以通过编写perl或python或者"选择编程毒药"脚本来轻松完成。