- portlar
- 0.0.0.0:80 → 80/tcp
- healthcheck
- yo'q
- restart
- no (standart)
- user
- root (standart)
- volume
- /etc/nginx → /etc/nginx
- tarmoq
- default
~/labs / eng-kam-huquqback
Asoslar10/15
Eng kam huquq tamoyili
qiyin
Konteyner buzib kirilsa, hujumchi o'sha konteyner qanday huquqqa ega bo'lsa, shunga ega bo'ladi. Standart holatda bu — root va yoziladigan fayl tizimi. Ikkalasini ham torting.
webvaapiroot bo'lmagan foydalanuvchida ishlasin (user: "1000:1000").- Ikkalasining ham fayl tizimi faqat o'qish uchun bo'lsin (
read_only: true). - Ikkala image ham aniq versiya tegiga bog'langan bo'lsin.
web80 portda ochilsin,apiesa tashqariga umuman chiqmasin.- Ikkalasi ham
ichkitarmoqda bo'lsin va u e'lon qilinsin.
Eslatma: bu konfiguratsiyada privileged, cap_add yoki host papkasini ulash ham bor — xavfsizlik tekshiruvlari ularni alohida qizil qilib ko'rsatadi.
…
docker-compose.yml
123456789101112131415
services: web: image: nginx:latest ports: - "80:80" privileged: true volumes: - /etc/nginx:/etc/nginx api: image: python:latest ports: - "8000:8000" cap_add: - SYS_ADMIN
! 3 ta muammo —
Tab ichkariga · Shift+Tab tashqariga⌘/Ctrl+Enter tekshirishEsc maydondan chiqish
2 servis · 0 tarmoq · 0 volume · 3 ta muammo
Muammolar 3
- lab siyosati rad etadi
web.privileged— kengaytirilgan huquqlab siyosati: privileged/cap_add/devices ishlatilmaydi - lab siyosati rad etadi
/etc/nginx— host papkasi ulanmoqdalab siyosati: faqat nomlangan volume'lar - lab siyosati rad etadi
api.cap_add— kengaytirilgan huquqlab siyosati: privileged/cap_add/devices ishlatilmaydi
Servislar 2
- portlar
- 0.0.0.0:8000 → 8000/tcp
- healthcheck
- yo'q
- restart
- no (standart)
- user
- root (standart)
- tarmoq
- default
Ishga tushish tartibi
- 1webhech kimni kutmaydiapihech kimni kutmaydi
learner@lab: ~/app
learner@lab:~/app$
help — buyruqlar ro'yxati. Yuqori/pastki strelkalar — tarix, Tab — to'ldirish (bo'sh qatorda keyingi elementga o'tadi), Ctrl+C — to'xtatish.
hisobot shu yerda chiqadi
tekshirish uchun avval
tekshirish uchun avval