mirror of
https://github.com/HackTricks-wiki/hacktricks-cloud.git
synced 2025-12-30 22:50:43 -08:00
Translated ['.github/pull_request_template.md', 'src/pentesting-cloud/az
This commit is contained in:
@@ -1,23 +1,19 @@
|
||||
# DO - Services
|
||||
# DO - サービス
|
||||
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
|
||||
DO offers a few services, here you can find how to **enumerate them:**
|
||||
DOはいくつかのサービスを提供しています。ここではそれらを**列挙する方法**を見つけることができます:
|
||||
|
||||
- [**Apps**](do-apps.md)
|
||||
- [**Container Registry**](do-container-registry.md)
|
||||
- [**Databases**](do-databases.md)
|
||||
- [**Droplets**](do-droplets.md)
|
||||
- [**Functions**](do-functions.md)
|
||||
- [**Images**](do-images.md)
|
||||
- [**アプリ**](do-apps.md)
|
||||
- [**コンテナレジストリ**](do-container-registry.md)
|
||||
- [**データベース**](do-databases.md)
|
||||
- [**ドロップレット**](do-droplets.md)
|
||||
- [**関数**](do-functions.md)
|
||||
- [**イメージ**](do-images.md)
|
||||
- [**Kubernetes (DOKS)**](do-kubernetes-doks.md)
|
||||
- [**Networking**](do-networking.md)
|
||||
- [**Projects**](do-projects.md)
|
||||
- [**Spaces**](do-spaces.md)
|
||||
- [**Volumes**](do-volumes.md)
|
||||
- [**ネットワーキング**](do-networking.md)
|
||||
- [**プロジェクト**](do-projects.md)
|
||||
- [**スペース**](do-spaces.md)
|
||||
- [**ボリューム**](do-volumes.md)
|
||||
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -2,18 +2,17 @@
|
||||
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
|
||||
## Basic Information
|
||||
## 基本情報
|
||||
|
||||
[From the docs:](https://docs.digitalocean.com/glossary/app-platform/) App Platform is a Platform-as-a-Service (PaaS) offering that allows developers to **publish code directly to DigitalOcean** servers without worrying about the underlying infrastructure.
|
||||
[ドキュメントから:](https://docs.digitalocean.com/glossary/app-platform/) App Platformは、開発者が**DigitalOcean**サーバーに直接コードを**公開**できるプラットフォーム・アズ・ア・サービス(PaaS)です。基盤となるインフラストラクチャについて心配する必要はありません。
|
||||
|
||||
You can run code directly from **github**, **gitlab**, **docker hub**, **DO container registry** (or a sample app).
|
||||
**github**、**gitlab**、**docker hub**、**DOコンテナレジストリ**(またはサンプルアプリ)から直接コードを実行できます。
|
||||
|
||||
When defining an **env var** you can set it as **encrypted**. The only way to **retreive** its value is executing **commands** inside the host runnig the app.
|
||||
**env var**を定義する際には、**暗号化**されたものとして設定できます。その値を**取得**する唯一の方法は、アプリを実行しているホスト内で**コマンド**を実行することです。
|
||||
|
||||
An **App URL** looks like this [https://dolphin-app-2tofz.ondigitalocean.app](https://dolphin-app-2tofz.ondigitalocean.app)
|
||||
|
||||
### Enumeration
|
||||
**App URL**は次のようになります [https://dolphin-app-2tofz.ondigitalocean.app](https://dolphin-app-2tofz.ondigitalocean.app)
|
||||
|
||||
### 列挙
|
||||
```bash
|
||||
doctl apps list # You should get URLs here
|
||||
doctl apps spec get <app-id> # Get yaml (including env vars, might be encrypted)
|
||||
@@ -21,18 +20,13 @@ doctl apps logs <app-id> # Get HTTP logs
|
||||
doctl apps list-alerts <app-id> # Get alerts
|
||||
doctl apps list-regions # Get available regions and the default one
|
||||
```
|
||||
|
||||
> [!CAUTION]
|
||||
> **Apps doesn't have metadata endpoint**
|
||||
> **アプリにはメタデータエンドポイントがありません**
|
||||
|
||||
### RCE & Encrypted env vars
|
||||
### RCE & 暗号化された環境変数
|
||||
|
||||
To execute code directly in the container executing the App you will need **access to the console** and go to **`https://cloud.digitalocean.com/apps/<app-id>/console/<app-name>`**.
|
||||
アプリを実行しているコンテナ内で直接コードを実行するには、**コンソールへのアクセス**が必要で、**`https://cloud.digitalocean.com/apps/<app-id>/console/<app-name>`**に移動します。
|
||||
|
||||
That will give you a **shell**, and just executing **`env`** you will be able to see **all the env vars** (including the ones defined as **encrypted**).
|
||||
これにより、**シェル**が得られ、**`env`**を実行することで、**すべての環境変数**(**暗号化**されたものを含む)を見ることができます。
|
||||
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -2,14 +2,13 @@
|
||||
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
|
||||
## Basic Information
|
||||
## 基本情報
|
||||
|
||||
DigitalOcean Container Registry is a service provided by DigitalOcean that **allows you to store and manage Docker images**. It is a **private** registry, which means that the images that you store in it are only accessible to you and users that you grant access to. This allows you to securely store and manage your Docker images, and use them to deploy containers on DigitalOcean or any other environment that supports Docker.
|
||||
DigitalOcean Container Registryは、**Dockerイメージを保存および管理することを可能にする**、DigitalOceanが提供するサービスです。これは**プライベート**レジストリであり、保存したイメージはあなたと、あなたがアクセスを許可したユーザーのみがアクセスできます。これにより、Dockerイメージを安全に保存および管理し、DigitalOceanやDockerをサポートする他の環境でコンテナをデプロイするために使用できます。
|
||||
|
||||
When creating a Container Registry it's possible to **create a secret with pull images access (read) over it in all the namespaces** of Kubernetes clusters.
|
||||
|
||||
### Connection
|
||||
Container Registryを作成する際には、Kubernetesクラスターのすべてのネームスペースで**プルイメージアクセス(読み取り)を持つシークレットを作成することが可能です**。
|
||||
|
||||
### 接続
|
||||
```bash
|
||||
# Using doctl
|
||||
doctl registry login
|
||||
@@ -19,9 +18,7 @@ docker login registry.digitalocean.com
|
||||
Username: <paste-api-token>
|
||||
Password: <paste-api-token>
|
||||
```
|
||||
|
||||
### Enumeration
|
||||
|
||||
### 列挙
|
||||
```bash
|
||||
# Get creds to access the registry from the API
|
||||
doctl registry docker-config
|
||||
@@ -29,9 +26,4 @@ doctl registry docker-config
|
||||
# List
|
||||
doctl registry repository list-v2
|
||||
```
|
||||
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -2,22 +2,19 @@
|
||||
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
|
||||
## Basic Information
|
||||
## 基本情報
|
||||
|
||||
With DigitalOcean Databases, you can easily **create and manage databases in the cloud** without having to worry about the underlying infrastructure. The service offers a variety of database options, including **MySQL**, **PostgreSQL**, **MongoDB**, and **Redis**, and provides tools for administering and monitoring your databases. DigitalOcean Databases is designed to be highly scalable, reliable, and secure, making it an ideal choice for powering modern applications and websites.
|
||||
DigitalOcean Databasesを使用すると、基盤となるインフラストラクチャを気にすることなく、**クラウド内でデータベースを簡単に作成および管理**できます。このサービスは、**MySQL**、**PostgreSQL**、**MongoDB**、および**Redis**など、さまざまなデータベースオプションを提供し、データベースの管理および監視のためのツールを提供します。DigitalOcean Databasesは、高いスケーラビリティ、信頼性、およびセキュリティを備えており、現代のアプリケーションやウェブサイトを支える理想的な選択肢です。
|
||||
|
||||
### Connections details
|
||||
### 接続の詳細
|
||||
|
||||
When creating a database you can select to configure it **accessible from a public network**, or just from inside a **VPC**. Moreover, it request you to **whitelist IPs that can access it** (your IPv4 can be one).
|
||||
|
||||
The **host**, **port**, **dbname**, **username**, and **password** are shown in the **console**. You can even download the AD certificate to connect securely.
|
||||
データベースを作成する際に、**パブリックネットワークからアクセス可能**にするか、**VPC**内からのみアクセス可能にするかを選択できます。さらに、**アクセスできるIPをホワイトリストに登録する**必要があります(あなたのIPv4がその一つになる可能性があります)。
|
||||
|
||||
**ホスト**、**ポート**、**dbname**、**ユーザー名**、および**パスワード**は、**コンソール**に表示されます。安全に接続するためにAD証明書をダウンロードすることもできます。
|
||||
```bash
|
||||
sql -h db-postgresql-ams3-90864-do-user-2700959-0.b.db.ondigitalocean.com -U doadmin -d defaultdb -p 25060
|
||||
```
|
||||
|
||||
### Enumeration
|
||||
|
||||
### 列挙
|
||||
```bash
|
||||
# Databse clusters
|
||||
doctl databases list
|
||||
@@ -39,9 +36,4 @@ doctl databases backups <db-id> # List backups of DB
|
||||
# Pools
|
||||
doctl databases pool list <db-id> # List pools of DB
|
||||
```
|
||||
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -2,47 +2,46 @@
|
||||
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
|
||||
## Basic Information
|
||||
## 基本情報
|
||||
|
||||
In DigitalOcean, a "droplet" is a v**irtual private server (VPS)** that can be used to host websites and applications. A droplet is a **pre-configured package of computing resources**, including a certain amount of CPU, memory, and storage, that can be quickly and easily deployed on DigitalOcean's cloud infrastructure.
|
||||
DigitalOceanにおいて、「ドロップレット」はv**irtual private server (VPS)**であり、ウェブサイトやアプリケーションをホストするために使用できます。ドロップレットは、特定のCPU、メモリ、ストレージの量を含む**事前構成されたコンピューティングリソースのパッケージ**であり、DigitalOceanのクラウドインフラストラクチャ上に迅速かつ簡単に展開できます。
|
||||
|
||||
You can select from **common OS**, to **applications** already running (such as WordPress, cPanel, Laravel...), or even upload and use **your own images**.
|
||||
**一般的なOS**や、すでに稼働している**アプリケーション**(WordPress、cPanel、Laravelなど)を選択することができ、または**自分のイメージ**をアップロードして使用することもできます。
|
||||
|
||||
Droplets support **User data scripts**.
|
||||
ドロップレットは**ユーザーデータスクリプト**をサポートしています。
|
||||
|
||||
<details>
|
||||
|
||||
<summary>Difference between a snapshot and a backup</summary>
|
||||
<summary>スナップショットとバックアップの違い</summary>
|
||||
|
||||
In DigitalOcean, a snapshot is a point-in-time copy of a Droplet's disk. It captures the state of the Droplet's disk at the time the snapshot was taken, including the operating system, installed applications, and all the files and data on the disk.
|
||||
DigitalOceanにおいて、スナップショットはドロップレットのディスクの時点コピーです。スナップショットが取得された時点でのドロップレットのディスクの状態をキャプチャし、オペレーティングシステム、インストールされたアプリケーション、ディスク上のすべてのファイルとデータを含みます。
|
||||
|
||||
Snapshots can be used to create new Droplets with the same configuration as the original Droplet, or to restore a Droplet to the state it was in when the snapshot was taken. Snapshots are stored on DigitalOcean's object storage service, and they are incremental, meaning that only the changes since the last snapshot are stored. This makes them efficient to use and cost-effective to store.
|
||||
スナップショットは、元のドロップレットと同じ構成の新しいドロップレットを作成するためや、スナップショットが取得された時点の状態にドロップレットを復元するために使用できます。スナップショットはDigitalOceanのオブジェクトストレージサービスに保存され、増分であるため、最後のスナップショット以降の変更のみが保存されます。これにより、効率的に使用でき、コスト効果も高くなります。
|
||||
|
||||
On the other hand, a backup is a complete copy of a Droplet, including the operating system, installed applications, files, and data, as well as the Droplet's settings and metadata. Backups are typically performed on a regular schedule, and they capture the entire state of a Droplet at a specific point in time.
|
||||
一方、バックアップはドロップレットの完全なコピーであり、オペレーティングシステム、インストールされたアプリケーション、ファイル、データ、さらにドロップレットの設定とメタデータを含みます。バックアップは通常、定期的に実行され、特定の時点でのドロップレットの全体の状態をキャプチャします。
|
||||
|
||||
Unlike snapshots, backups are stored in a compressed and encrypted format, and they are transferred off of DigitalOcean's infrastructure to a remote location for safekeeping. This makes backups ideal for disaster recovery, as they provide a complete copy of a Droplet that can be restored in the event of data loss or other catastrophic events.
|
||||
スナップショットとは異なり、バックアップは圧縮され暗号化された形式で保存され、DigitalOceanのインフラストラクチャからリモートの場所に転送されて安全に保管されます。これにより、バックアップは災害復旧に理想的であり、データ損失やその他の重大なイベントが発生した場合に復元できるドロップレットの完全なコピーを提供します。
|
||||
|
||||
In summary, snapshots are point-in-time copies of a Droplet's disk, while backups are complete copies of a Droplet, including its settings and metadata. Snapshots are stored on DigitalOcean's object storage service, while backups are transferred off of DigitalOcean's infrastructure to a remote location. Both snapshots and backups can be used to restore a Droplet, but snapshots are more efficient to use and store, while backups provide a more comprehensive backup solution for disaster recovery.
|
||||
要約すると、スナップショットはドロップレットのディスクの時点コピーであり、バックアップはドロップレットの完全なコピーで、設定とメタデータを含みます。スナップショットはDigitalOceanのオブジェクトストレージサービスに保存され、バックアップはDigitalOceanのインフラストラクチャからリモートの場所に転送されます。スナップショットとバックアップの両方はドロップレットを復元するために使用できますが、スナップショットは使用と保存がより効率的であり、バックアップは災害復旧のためのより包括的なバックアップソリューションを提供します。
|
||||
|
||||
</details>
|
||||
|
||||
### Authentication
|
||||
### 認証
|
||||
|
||||
For authentication it's possible to **enable SSH** through username and **password** (password defined when the droplet is created). Or **select one or more of the uploaded SSH keys**.
|
||||
認証のために、ユーザー名と**パスワード**(ドロップレット作成時に定義されたパスワード)を通じて**SSHを有効にする**ことが可能です。または、**アップロードされたSSHキーの1つ以上を選択**することもできます。
|
||||
|
||||
### Firewall
|
||||
### ファイアウォール
|
||||
|
||||
> [!CAUTION]
|
||||
> By default **droplets are created WITHOUT A FIREWALL** (not like in oder clouds such as AWS or GCP). So if you want DO to protect the ports of the droplet (VM), you need to **create it and attach it**.
|
||||
> デフォルトでは**ドロップレットはファイアウォールなしで作成されます**(AWSやGCPなどの他のクラウドとは異なります)。したがって、DOがドロップレット(VM)のポートを保護することを望む場合は、**作成して接続する**必要があります。
|
||||
|
||||
More info in:
|
||||
詳細は以下を参照してください:
|
||||
|
||||
{{#ref}}
|
||||
do-networking.md
|
||||
{{#endref}}
|
||||
|
||||
### Enumeration
|
||||
|
||||
### 列挙
|
||||
```bash
|
||||
# VMs
|
||||
doctl compute droplet list # IPs will appear here
|
||||
@@ -68,18 +67,13 @@ doctl compute certificate list
|
||||
# Snapshots
|
||||
doctl compute snapshot list
|
||||
```
|
||||
|
||||
> [!CAUTION]
|
||||
> **Droplets have metadata endpoints**, but in DO there **isn't IAM** or things such as role from AWS or service accounts from GCP.
|
||||
> **Dropletsにはメタデータエンドポイントがありますが、DOには** IAM **やAWSのロール、GCPのサービスアカウントのようなものはありません。**
|
||||
|
||||
### RCE
|
||||
|
||||
With access to the console it's possible to **get a shell inside the droplet** accessing the URL: **`https://cloud.digitalocean.com/droplets/<droplet-id>/terminal/ui/`**
|
||||
コンソールにアクセスすると、**URLにアクセスすることでドロップレット内でシェルを取得することが可能です**: **`https://cloud.digitalocean.com/droplets/<droplet-id>/terminal/ui/`**
|
||||
|
||||
It's also possible to launch a **recovery console** to run commands inside the host accessing a recovery console in **`https://cloud.digitalocean.com/droplets/<droplet-id>/console`**(but in this case you will need to know the root password).
|
||||
**`https://cloud.digitalocean.com/droplets/<droplet-id>/console`**にアクセスしてホスト内でコマンドを実行するための**リカバリーコンソール**を起動することも可能です(ただし、この場合はルートパスワードを知っている必要があります)。
|
||||
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -2,39 +2,34 @@
|
||||
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
|
||||
## Basic Information
|
||||
## 基本情報
|
||||
|
||||
DigitalOcean Functions, also known as "DO Functions," is a serverless computing platform that lets you **run code without having to worry about the underlying infrastructure**. With DO Functions, you can write and deploy your code as "functions" that can be **triggered** via **API**, **HTTP requests** (if enabled) or **cron**. These functions are executed in a fully managed environment, so you **don't need to worry** about scaling, security, or maintenance.
|
||||
DigitalOcean Functions、または「DO Functions」として知られるこのサービスは、**基盤となるインフラストラクチャを気にせずにコードを実行できる**サーバーレスコンピューティングプラットフォームです。DO Functionsを使用すると、**API**、**HTTPリクエスト**(有効な場合)または**cron**を介して**トリガー**できる「関数」としてコードを書いてデプロイできます。これらの関数は完全に管理された環境で実行されるため、**スケーリング、セキュリティ、またはメンテナンスを気にする必要はありません**。
|
||||
|
||||
In DO, to create a function first you need to **create a namespace** which will be **grouping functions**.\
|
||||
Inside the namespace you can then create a function.
|
||||
DOで関数を作成するには、まず**名前空間を作成**する必要があります。これが**関数をグループ化**します。\
|
||||
その名前空間内で関数を作成できます。
|
||||
|
||||
### Triggers
|
||||
|
||||
The way **to trigger a function via REST API** (always enabled, it's the method the cli uses) is by triggering a request with an **authentication token** like:
|
||||
### トリガー
|
||||
|
||||
**REST APIを介して関数をトリガーする方法**(常に有効で、cliが使用する方法)は、**認証トークン**を使用してリクエストをトリガーすることです。
|
||||
```bash
|
||||
curl -X POST "https://faas-lon1-129376a7.doserverless.co/api/v1/namespaces/fn-c100c012-65bf-4040-1230-2183764b7c23/actions/functionname?blocking=true&result=true" \
|
||||
-H "Content-Type: application/json" \
|
||||
-H "Authorization: Basic MGU0NTczZGQtNjNiYS00MjZlLWI2YjctODk0N2MyYTA2NGQ4OkhwVEllQ2t4djNZN2x6YjJiRmFGc1FERXBySVlWa1lEbUxtRE1aRTludXA1UUNlU2VpV0ZGNjNqWnVhYVdrTFg="
|
||||
-H "Content-Type: application/json" \
|
||||
-H "Authorization: Basic MGU0NTczZGQtNjNiYS00MjZlLWI2YjctODk0N2MyYTA2NGQ4OkhwVEllQ2t4djNZN2x6YjJiRmFGc1FERXBySVlWa1lEbUxtRE1aRTludXA1UUNlU2VpV0ZGNjNqWnVhYVdrTFg="
|
||||
```
|
||||
|
||||
To see how is the **`doctl`** cli tool getting this token (so you can replicate it), the **following command shows the complete network trace:**
|
||||
|
||||
この**`doctl`** CLIツールがこのトークンをどのように取得しているかを確認するために(再現できるように)、**次のコマンドは完全なネットワークトレースを表示します:**
|
||||
```bash
|
||||
doctl serverless connect --trace
|
||||
```
|
||||
|
||||
**When HTTP trigger is enabled**, a web function can be invoked through these **HTTP methods GET, POST, PUT, PATCH, DELETE, HEAD and OPTIONS**.
|
||||
**HTTPトリガーが有効な場合**、ウェブ関数はこれらの**HTTPメソッド GET、POST、PUT、PATCH、DELETE、HEAD、OPTIONS**を通じて呼び出すことができます。
|
||||
|
||||
> [!CAUTION]
|
||||
> In DO functions, **environment variables cannot be encrypted** (at the time of this writing).\
|
||||
> I couldn't find any way to read them from the CLI but from the console it's straight forward.
|
||||
> DO関数では、**環境変数は暗号化できません**(この執筆時点で)。\
|
||||
> CLIからそれらを読む方法は見つかりませんでしたが、コンソールからは簡単です。
|
||||
|
||||
**Functions URLs** look like this: `https://<random>.doserverless.co/api/v1/web/<namespace-id>/default/<function-name>`
|
||||
|
||||
### Enumeration
|
||||
**関数のURL**は次のようになります: `https://<random>.doserverless.co/api/v1/web/<namespace-id>/default/<function-name>`
|
||||
|
||||
### 列挙
|
||||
```bash
|
||||
# Namespace
|
||||
doctl serverless namespaces list
|
||||
@@ -53,12 +48,7 @@ doctl serverless activations result <activation-id> # get only the response resu
|
||||
|
||||
# I couldn't find any way to get the env variables form the CLI
|
||||
```
|
||||
|
||||
> [!CAUTION]
|
||||
> There **isn't metadata endpoint** from the Functions sandbox.
|
||||
> Functionsサンドボックスには**メタデータエンドポイントがありません**。
|
||||
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -2,22 +2,16 @@
|
||||
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
|
||||
## Basic Information
|
||||
## 基本情報
|
||||
|
||||
DigitalOcean Images are **pre-built operating system or application images** that can be used to create new Droplets (virtual machines) on DigitalOcean. They are similar to virtual machine templates, and they allow you to **quickly and easily create new Droplets with the operating system** and applications that you need.
|
||||
DigitalOcean Imagesは、**新しいDroplets(仮想マシン)をDigitalOcean上で作成するために使用できる、事前構築されたオペレーティングシステムまたはアプリケーションのイメージ**です。これらは仮想マシンのテンプレートに似ており、**必要なオペレーティングシステム**とアプリケーションを持つ新しいDropletsを**迅速かつ簡単に作成する**ことを可能にします。
|
||||
|
||||
DigitalOcean provides a wide range of Images, including popular operating systems such as Ubuntu, CentOS, and FreeBSD, as well as pre-configured application Images such as LAMP, MEAN, and LEMP stacks. You can also create your own custom Images, or use Images from the community.
|
||||
DigitalOceanは、Ubuntu、CentOS、FreeBSDなどの人気のあるオペレーティングシステムや、LAMP、MEAN、LEMPスタックなどの事前構成されたアプリケーションイメージを含む、幅広いImagesを提供しています。また、自分自身のカスタムImagesを作成したり、コミュニティからのImagesを使用したりすることもできます。
|
||||
|
||||
When you create a new Droplet on DigitalOcean, you can choose an Image to use as the basis for the Droplet. This will automatically install the operating system and any pre-installed applications on the new Droplet, so you can start using it right away. Images can also be used to create snapshots and backups of your Droplets, so you can easily create new Droplets from the same configuration in the future.
|
||||
|
||||
### Enumeration
|
||||
DigitalOceanで新しいDropletを作成する際には、Dropletの基盤として使用するImagesを選択できます。これにより、新しいDropletにオペレーティングシステムと事前インストールされたアプリケーションが自動的にインストールされるため、すぐに使用を開始できます。Imagesは、Dropletsのスナップショットやバックアップを作成するためにも使用できるため、将来的に同じ構成から新しいDropletsを簡単に作成できます。
|
||||
|
||||
### 列挙
|
||||
```
|
||||
doctl compute image list
|
||||
```
|
||||
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -2,19 +2,18 @@
|
||||
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
|
||||
## Basic Information
|
||||
## 基本情報
|
||||
|
||||
### DigitalOcean Kubernetes (DOKS)
|
||||
|
||||
DOKS is a managed Kubernetes service offered by DigitalOcean. The service is designed to **deploy and manage Kubernetes clusters on DigitalOcean's platform**. The key aspects of DOKS include:
|
||||
DOKSは、DigitalOceanが提供するマネージドKubernetesサービスです。このサービスは、**DigitalOceanのプラットフォーム上でKubernetesクラスターをデプロイおよび管理するために設計されています**。DOKSの主な特徴は以下の通りです:
|
||||
|
||||
1. **Ease of Management**: The requirement to set up and maintain the underlying infrastructure is eliminated, simplifying the management of Kubernetes clusters.
|
||||
2. **User-Friendly Interface**: It provides an intuitive interface that facilitates the creation and administration of clusters.
|
||||
3. **Integration with DigitalOcean Services**: It seamlessly integrates with other services provided by DigitalOcean, such as Load Balancers and Block Storage.
|
||||
4. **Automatic Updates and Upgrades**: The service includes the automatic updating and upgrading of clusters to ensure they are up-to-date.
|
||||
|
||||
### Connection
|
||||
1. **管理の容易さ**:基盤となるインフラストラクチャのセットアップと維持の必要がなくなり、Kubernetesクラスターの管理が簡素化されます。
|
||||
2. **ユーザーフレンドリーなインターフェース**:クラスターの作成と管理を容易にする直感的なインターフェースを提供します。
|
||||
3. **DigitalOceanサービスとの統合**:Load BalancersやBlock Storageなど、DigitalOceanが提供する他のサービスとシームレスに統合されます。
|
||||
4. **自動更新とアップグレード**:サービスには、クラスターを最新の状態に保つための自動更新とアップグレードが含まれています。
|
||||
|
||||
### 接続
|
||||
```bash
|
||||
# Generate kubeconfig from doctl
|
||||
doctl kubernetes cluster kubeconfig save <cluster-id>
|
||||
@@ -22,9 +21,7 @@ doctl kubernetes cluster kubeconfig save <cluster-id>
|
||||
# Use a kubeconfig file that you can download from the console
|
||||
kubectl --kubeconfig=/<pathtodirectory>/k8s-1-25-4-do-0-ams3-1670939911166-kubeconfig.yaml get nodes
|
||||
```
|
||||
|
||||
### Enumeration
|
||||
|
||||
### 列挙
|
||||
```bash
|
||||
# Get clusters
|
||||
doctl kubernetes cluster list
|
||||
@@ -35,9 +32,4 @@ doctl kubernetes cluster node-pool list <cluster-id>
|
||||
# Get DO resources used by the cluster
|
||||
doctl kubernetes cluster list-associated-resources <cluster-id>
|
||||
```
|
||||
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,49 +1,35 @@
|
||||
# DO - Networking
|
||||
# DO - ネットワーキング
|
||||
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
|
||||
### Domains
|
||||
|
||||
### ドメイン
|
||||
```bash
|
||||
doctl compute domain list
|
||||
doctl compute domain records list <domain>
|
||||
# You can also create records
|
||||
```
|
||||
|
||||
### Reserverd IPs
|
||||
|
||||
### 予約済みIP
|
||||
```bash
|
||||
doctl compute reserved-ip list
|
||||
doctl compute reserved-ip-action unassign <ip>
|
||||
```
|
||||
|
||||
### Load Balancers
|
||||
|
||||
### ロードバランサー
|
||||
```bash
|
||||
doctl compute load-balancer list
|
||||
doctl compute load-balancer remove-droplets <id> --droplet-ids 12,33
|
||||
doctl compute load-balancer add-forwarding-rules <id> --forwarding-rules entry_protocol:tcp,entry_port:3306,...
|
||||
```
|
||||
|
||||
### VPC
|
||||
|
||||
```
|
||||
doctl vpcs list
|
||||
```
|
||||
|
||||
### Firewall
|
||||
|
||||
> [!CAUTION]
|
||||
> By default **droplets are created WITHOUT A FIREWALL** (not like in oder clouds such as AWS or GCP). So if you want DO to protect the ports of the droplet (VM), you need to **create it and attach it**.
|
||||
|
||||
> デフォルトでは**ドロップレットはファイアウォールなしで作成されます**(AWSやGCPなどの他のクラウドとは異なります)。したがって、DOがドロップレット(VM)のポートを保護することを望む場合は、**作成して接続する必要があります**。
|
||||
```bash
|
||||
doctl compute firewall list
|
||||
doctl compute firewall list-by-droplet <droplet-id>
|
||||
doctl compute firewall remove-droplets <fw-id> --droplet-ids <droplet-id>
|
||||
```
|
||||
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -2,26 +2,20 @@
|
||||
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
|
||||
## Basic Information
|
||||
## 基本情報
|
||||
|
||||
> project is just a container for all the **services** (droplets, spaces, databases, kubernetes...) **running together inside of it**.\
|
||||
> For more info check:
|
||||
> プロジェクトは、すべての**サービス**(ドロップレット、スペース、データベース、クバネティス...)が**内部で一緒に実行される**ためのコンテナです。\
|
||||
> 詳細については、次を確認してください:
|
||||
|
||||
{{#ref}}
|
||||
../do-basic-information.md
|
||||
{{#endref}}
|
||||
|
||||
### Enumeration
|
||||
|
||||
It's possible to **enumerate all the projects a user have access to** and all the resources that are running inside a project very easily:
|
||||
### 列挙
|
||||
|
||||
ユーザーがアクセスできるすべてのプロジェクトと、プロジェクト内で実行されているすべてのリソースを**簡単に列挙する**ことが可能です:
|
||||
```bash
|
||||
doctl projects list # Get projects
|
||||
doctl projects resources list <proj-id> # Get all the resources of a project
|
||||
```
|
||||
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -2,25 +2,24 @@
|
||||
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
|
||||
## Basic Information
|
||||
## 基本情報
|
||||
|
||||
DigitalOcean Spaces are **object storage services**. They allow users to **store and serve large amounts of data**, such as images and other files, in a scalable and cost-effective way. Spaces can be accessed via the DigitalOcean control panel, or using the DigitalOcean API, and are integrated with other DigitalOcean services such as Droplets (virtual private servers) and Load Balancers.
|
||||
DigitalOcean Spacesは**オブジェクトストレージサービス**です。ユーザーは**大量のデータ**(画像やその他のファイルなど)をスケーラブルでコスト効率の良い方法で**保存および提供**することができます。SpacesはDigitalOceanのコントロールパネルまたはDigitalOcean APIを介してアクセスでき、Droplets(仮想プライベートサーバー)やLoad Balancersなどの他のDigitalOceanサービスと統合されています。
|
||||
|
||||
### Access
|
||||
### アクセス
|
||||
|
||||
Spaces can be **public** (anyone can access them from the Internet) or **private** (only authorised users). To access the files from a private space outside of the Control Panel, we need to generate an **access key** and **secret**. These are a pair of random tokens that serve as a **username** and **password** to grant access to your Space.
|
||||
Spacesは**公開**(誰でもインターネットからアクセス可能)または**非公開**(認可されたユーザーのみ)にすることができます。コントロールパネルの外部からプライベートスペースのファイルにアクセスするには、**アクセスキー**と**シークレット**を生成する必要があります。これらは、あなたのSpaceへのアクセスを許可するための**ユーザー名**と**パスワード**として機能する一対のランダムトークンです。
|
||||
|
||||
A **URL of a space** looks like this: **`https://uniqbucketname.fra1.digitaloceanspaces.com/`**\
|
||||
Note the **region** as **subdomain**.
|
||||
**スペースのURL**は次のようになります: **`https://uniqbucketname.fra1.digitaloceanspaces.com/`**\
|
||||
**サブドメイン**としての**リージョン**に注意してください。
|
||||
|
||||
Even if the **space** is **public**, **files** **inside** of it can be **private** (you will be able to access them only with credentials).
|
||||
**スペース**が**公開**であっても、その中の**ファイル**は**非公開**である可能性があります(資格情報がないとアクセスできません)。
|
||||
|
||||
However, **even** if the file is **private**, from the console it's possible to share a file with a link such as `https://fra1.digitaloceanspaces.com/uniqbucketname/filename?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=DO00PL3RA373GBV4TRF7%2F20221213%2Ffra1%2Fs3%2Faws4_request&X-Amz-Date=20221213T121017Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=6a183dbc42453a8d30d7cd2068b66aeb9ebc066123629d44a8108115def975bc` for a period of time:
|
||||
ただし、**ファイルが非公開**であっても、コンソールからは次のようなリンクを使用してファイルを共有することが可能です: `https://fra1.digitaloceanspaces.com/uniqbucketname/filename?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=DO00PL3RA373GBV4TRF7%2F20221213%2Ffra1%2Fs3%2Faws4_request&X-Amz-Date=20221213T121017Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=6a183dbc42453a8d30d7cd2068b66aeb9ebc066123629d44a8108115def975bc` 一定の期間で:
|
||||
|
||||
<figure><img src="../../../images/image (277).png" alt=""><figcaption></figcaption></figure>
|
||||
|
||||
### Enumeration
|
||||
|
||||
### 列挙
|
||||
```bash
|
||||
# Unauthenticated
|
||||
## Note how the region is specified in the endpoint
|
||||
@@ -42,9 +41,4 @@ aws s3 ls --endpoint=https://fra1.digitaloceanspaces.com s3://uniqbucketname
|
||||
|
||||
## It's also possible to generate authorized access to buckets from the API
|
||||
```
|
||||
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -2,18 +2,12 @@
|
||||
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
|
||||
## Basic Information
|
||||
## 基本情報
|
||||
|
||||
DigitalOcean volumes are **block storage** devices that can be **attached to and detached from Droplets**. Volumes are useful for **storing data** that needs to **persist** independently of the Droplet itself, such as databases or file storage. They can be resized, attached to multiple Droplets, and snapshot for backups.
|
||||
|
||||
### Enumeration
|
||||
DigitalOceanのボリュームは、**ブロックストレージ**デバイスであり、**Dropletsに接続および切断**できます。ボリュームは、データベースやファイルストレージなど、Droplet自体とは独立して**永続化**する必要がある**データの保存**に便利です。サイズ変更が可能で、複数のDropletsに接続でき、バックアップ用にスナップショットを作成できます。
|
||||
|
||||
### 列挙
|
||||
```
|
||||
compute volume list
|
||||
```
|
||||
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user