DO - Osnovne informacije
Reading time: 6 minutes
tip
Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Učite i vežbajte Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Podržite HackTricks
- Proverite planove pretplate!
- Pridružite se 💬 Discord grupi ili telegram grupi ili pratite nas na Twitteru 🐦 @hacktricks_live.
- Podelite hakerske trikove slanjem PR-ova na HackTricks i HackTricks Cloud github repozitorijume.
Osnovne informacije
DigitalOcean je platforma za cloud računarstvo koja korisnicima pruža razne usluge, uključujući virtuelne privatne servere (VPS) i druge resurse za izgradnju, implementaciju i upravljanje aplikacijama. Usluge DigitalOcean-a su dizajnirane da budu jednostavne i lake za korišćenje, što ih čini popularnim među programerima i malim preduzećima.
Neke od ključnih karakteristika DigitalOcean-a uključuju:
- Virtuelni privatni serveri (VPS): DigitalOcean pruža VPS koji se mogu koristiti za hostovanje veb sajtova i aplikacija. Ovi VPS su poznati po svojoj jednostavnosti i lakoći korišćenja, i mogu se brzo i lako implementirati koristeći razne unapred pripremljene "droplete" ili prilagođene konfiguracije.
- Skladištenje: DigitalOcean nudi niz opcija za skladištenje, uključujući skladištenje objekata, blok skladištenje i upravljane baze podataka, koje se mogu koristiti za skladištenje i upravljanje podacima za veb sajtove i aplikacije.
- Alati za razvoj i implementaciju: DigitalOcean pruža niz alata koji se mogu koristiti za izgradnju, implementaciju i upravljanje aplikacijama, uključujući API-je i unapred pripremljene droplete.
- Bezbednost: DigitalOcean stavlja veliki naglasak na bezbednost i nudi niz alata i karakteristika koje pomažu korisnicima da drže svoje podatke i aplikacije sigurnim. Ovo uključuje enkripciju, rezervne kopije i druge mere bezbednosti.
Sve u svemu, DigitalOcean je platforma za cloud računarstvo koja korisnicima pruža alate i resurse potrebne za izgradnju, implementaciju i upravljanje aplikacijama u oblaku. Njegove usluge su dizajnirane da budu jednostavne i lake za korišćenje, što ih čini popularnim među programerima i malim preduzećima.
Glavne razlike u odnosu na AWS
Jedna od glavnih razlika između DigitalOcean-a i AWS-a je raspon usluga koje nude. DigitalOcean se fokusira na pružanje jednostavnih i lakih za korišćenje virtuelnih privatnih servera (VPS), skladištenja i alata za razvoj i implementaciju. AWS, s druge strane, nudi mnogo širi spektar usluga, uključujući VPS, skladištenje, baze podataka, mašinsko učenje, analitiku i mnoge druge usluge. To znači da je AWS pogodniji za složene, aplikacije na nivou preduzeća, dok je DigitalOcean više prilagođen malim preduzećima i programerima.
Još jedna ključna razlika između dve platforme je struktura cena. Cene DigitalOcean-a su generalno jednostavnije i lakše za razumevanje od AWS-a, sa nizom planova cena koji se zasnivaju na broju dropleta i drugih korišćenih resursa. AWS, s druge strane, ima složeniju strukturu cena koja se zasniva na raznim faktorima, uključujući tip i količinu korišćenih resursa. Ovo može otežati predviđanje troškova prilikom korišćenja AWS-a.
Hijerarhija
Korisnik
Korisnik je ono što očekujete, korisnik. On može kreirati timove i biti član različitih timova.
Tim
Tim je grupa korisnika. Kada korisnik kreira tim, on ima ulogu vlasnika tog tima i inicijalno postavlja informacije o naplati. Ostali korisnici mogu biti pozvani u tim.
Unutar tima može biti nekoliko projekata. Projekat je samo set usluga koje rade. Može se koristiti za razdvajanje različitih faza infrastrukture, kao što su prod, staging, dev...
Projekat
Kao što je objašnjeno, projekat je samo kontejner za sve usluge (droplete, prostore, baze podataka, kubernetes...) koje rade zajedno unutar njega.
Digital Ocean projekat je vrlo sličan GCP projektu bez IAM-a.
Dozvole
Tim
U suštini, svi članovi tima imaju pristup DO resursima u svim projektima kreiranim unutar tima (sa više ili manje privilegija).
Uloge
Svaki korisnik unutar tima može imati jednu od sledeće tri uloge unutar njega:
Uloga | Deljeni resursi | Informacije o naplati | Podešavanja tima |
---|---|---|---|
Vlasnik | Potpun pristup | Potpun pristup | Potpun pristup |
Naplata | Nema pristup | Potpun pristup | Nema pristup |
Član | Potpun pristup | Nema pristup | Nema pristup |
Vlasnik i član mogu da navedu korisnike i provere njihove uloge (naplata ne može).
Pristup
Korisničko ime + lozinka (MFA)
Kao i na većini platformi, da biste pristupili GUI-u, možete koristiti set važećeg korisničkog imena i lozinke za pristup cloud resursima. Kada se prijavite, možete videti sve timove kojima pripadate na https://cloud.digitalocean.com/account/profile.
I možete videti sve svoje aktivnosti na https://cloud.digitalocean.com/account/activity.
MFA može biti omogućena za korisnika i nametnuta za sve korisnike u timu da pristupe timu.
API ključevi
Da bi koristili API, korisnici mogu generisati API ključeve. Ovi ključevi će uvek imati Read dozvole, ali Write dozvole su opcione.
API ključevi izgledaju ovako:
dop_v1_1946a92309d6240274519275875bb3cb03c1695f60d47eaa1532916502361836
Alat za komandnu liniju je doctl. Inicijalizujte ga (potreban vam je token) sa:
doctl auth init # Asks for the token
doctl auth init --context my-context # Login with a different token
doctl auth list # List accounts
Podrazumevano, ovaj token će biti zapisan u čistom tekstu na Mac-u u /Users/<username>/Library/Application Support/doctl/config.yaml
.
Ključevi za pristup Spaces
Ovo su ključevi koji daju pristup Spaces (kao S3 u AWS-u ili Storage u GCP-u).
Sastoje se od imena, keyid i secret. Primer bi mogao biti:
Name: key-example
Keyid: DO00ZW4FABSGZHAABGFX
Secret: 2JJ0CcQZ56qeFzAJ5GFUeeR4Dckarsh6EQSLm87MKlM
OAuth aplikacija
OAuth aplikacije mogu dobiti pristup preko Digital Ocean.
Moguće je napraviti OAuth aplikacije na https://cloud.digitalocean.com/account/api/applications i proveriti sve dozvoljene OAuth aplikacije na https://cloud.digitalocean.com/account/api/access.
SSH ključevi
Moguće je dodati SSH ključeve u Digital Ocean tim iz konsole na https://cloud.digitalocean.com/account/security.
Na ovaj način, ako kreirate novi droplet, SSH ključ će biti postavljen na njemu i moći ćete da se prijavite putem SSH bez lozinke (napomena da novouploadovani SSH ključevi nisu postavljeni na već postojeće droplete iz bezbednosnih razloga).
Token za autentifikaciju funkcija
Način da se pokrene funkcija putem REST API (uvek omogućen, to je metoda koju koristi cli) je slanjem zahteva sa tokenom za autentifikaciju kao:
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="
Logovi
Logovi korisnika
Logovi korisnika mogu se pronaći na https://cloud.digitalocean.com/account/activity
Logovi tima
Logovi tima mogu se pronaći na https://cloud.digitalocean.com/account/security
Reference
tip
Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Učite i vežbajte Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Podržite HackTricks
- Proverite planove pretplate!
- Pridružite se 💬 Discord grupi ili telegram grupi ili pratite nas na Twitteru 🐦 @hacktricks_live.
- Podelite hakerske trikove slanjem PR-ova na HackTricks i HackTricks Cloud github repozitorijume.