DO - Droplets

支持 HackTricks

基本信息

在DigitalOcean中,“droplet”是一个虚拟专用服务器 (VPS),可用于托管网站和应用程序。Droplet是一个预配置的计算资源包,包括一定数量的 CPU、内存和存储空间,可以快速轻松地部署在DigitalOcean的云基础设施上。

您可以选择常见操作系统,已经运行的应用程序(如WordPress、cPanel、Laravel...),甚至上传和使用您自己的镜像

Droplets支持用户数据脚本

快照和备份之间的区别

在DigitalOcean中,快照是Droplet磁盘的某个时间点的副本。它捕获了快照被拍摄时Droplet磁盘的状态,包括操作系统、已安装的应用程序以及磁盘上的所有文件和数据。

快照可用于使用与原始Droplet相同配置创建新的Droplet,或将Droplet恢复到拍摄快照时的状态。快照存储在DigitalOcean的对象存储服务上,它们是增量的,这意味着仅存储自上次快照以来的更改。这使得它们使用高效且存储成本低廉。

另一方面,备份是Droplet的完整副本,包括操作系统、已安装的应用程序、文件和数据,以及Droplet的设置和元数据。备份通常按照定期计划执行,并捕获特定时间点的Droplet的整个状态。

与快照不同,备份以压缩和加密格式存储,并将其转移到DigitalOcean基础设施之外的远程位置进行安全保存。这使得备份非常适合灾难恢复,因为它们提供了Droplet的完整副本,可以在数据丢失或其他灾难事件发生时恢复。

总之,快照是Droplet磁盘的时间点副本,而备份是Droplet的完整副本,包括其设置和元数据。快照存储在DigitalOcean的对象存储服务上,而备份被转移到DigitalOcean基础设施之外的远程位置。快照和备份都可用于恢复Droplet,但快照更有效率且存储成本更低,而备份为灾难恢复提供了更全面的备份解决方案。

认证

对于认证,可以通过用户名和密码(在创建Droplet时定义的密码)启用SSH。或选择一个或多个上传的SSH密钥

防火墙

默认情况下,droplets在创建时没有防火墙(不像其他云平台如AWS或GCP)。因此,如果您希望DO保护droplet(VM)的端口,您需要创建并附加防火墙

更多信息:

DO - Networking

枚举

# VMs
doctl compute droplet list # IPs will appear here
doctl compute droplet backups <droplet-id>
doctl compute droplet snapshots <droplet-id>
doctl compute droplet neighbors <droplet-id> # Get network neighbors
doctl compute droplet actions <droplet-id> # Get droplet actions

# VM interesting actions
doctl compute droplet-action password-reset <droplet-id> # New password is emailed to the user
doctl compute droplet-action enable-ipv6 <droplet-id>
doctl compute droplet-action power-on <droplet-id>
doctl compute droplet-action disable-backups <droplet-id>

# SSH
doctl compute ssh <droplet-id> # This will just run SSH
doctl compute ssh-key list
doctl compute ssh-key import <key-name> --public-key-file /path/to/key.pub

# Certificates
doctl compute certificate list

# Snapshots
doctl compute snapshot list

Droplets有元数据端点,但在DO中没有IAM或类似于AWS的角色或类似于GCP的服务账户。

RCE

通过访问URL,可以在控制台中获取到droplet内部的shellhttps://cloud.digitalocean.com/droplets/<droplet-id>/terminal/ui/

还可以启动恢复控制台以在主机内运行命令,访问**https://cloud.digitalocean.com/droplets/<droplet-id>/console**(但在这种情况下,您需要知道root密码)。

支持HackTricks

Last updated