اجرای Security Security Zero Trust در برنامه های بومی Cloud (AWS & Kubernetes)

مقدمه
امنیت در محیط های بومی ابر فراتر از مدل های سنتی مبتنی بر محیط تکامل یافته است. با امنیت صفر اعتماد ، هر درخواست ، کاربر و سیستم به طور مداوم تأیید و تأیید می شوند – اعتماد به نفس هرگز فرض نمی شود. این رویکرد در AWS و Kubernetes بسیار مهم است ، جایی که میکروسرویس ، API و بارهای کاری پویا در چندین شبکه و دستگاه در تعامل هستند.
در این راهنما ، ما اصول اعتماد صفر را تجزیه خواهیم کرد و نحوه اجرای آنها را در AWS و Kubernetes با نمونه های عملی نشان می دهیم.
امنیت اعتماد صفر چیست؟
اعتماد صفر از سه اصل اصلی پیروی می کند:
-
هرگز اعتماد نکنید ، همیشه تأیید کنید – هر درخواست باید تأیید شود ، حتی اگر از داخل شبکه سرچشمه بگیرد.
-
دسترسی کمترین امتیاز – کاربران و خدمات فقط حداقل مجوزهای مورد نیاز را دریافت می کنند.
-
نقض -اقدامات امنیتی باید در زمان واقعی ، تهدیدها را تشخیص داده ، حاوی و پاسخ دهد.
اجرای صفر اعتماد در AWS
1) کمترین امتیاز را با AWS IAM اجرا کنید
هویت و مدیریت دسترسی AWS (IAM) کنترل می کند که چه کسی می تواند به منابع دسترسی پیدا کند.
مثال: محدود کردن نقش IAM به دسترسی فقط خواندنی به S3
به جای اعطای دسترسی کامل به S3 ، مجوزها را محدود کنید:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::your-bucket-name/*"
}
]
}
بهترین روشها:
-
از نقش IAM به جای کاربران برای خدمات استفاده کنید.
-
به طور مرتب مجوزهای حسابرسی با آنالایزر دسترسی IAM.
-
اجرا
Multi-Factor Authentication (MFA)
بشر
2) دسترسی API را با AWS API Gateway & Cognito ایمن کنید
API ها یک سطح حمله کلیدی هستند. AWS API Gateway با Cognito اطمینان می دهد که فقط کاربران معتبر می توانند به خدمات دسترسی پیدا کنند.
مثال: محافظت از API با احراز هویت Cognito
-
برای تأیید اعتبار ، یک استخر کاربر Cognito ایجاد کنید.
-
مجوز Cognito را در API Gateway فعال کنید.
-
برای محدود کردن دسترسی به کاربران مجاز ، سیاستی را ضمیمه کنید.
بهترین روشها:
-
برای تأیید اعتبار از نشانه های JWT استفاده کنید.
-
محدود کردن نرخ و قوانین WAF را برای جلوگیری از حملات تنظیم کنید.
-
پاسخ های API را با TLS 1.2+ رمزگذاری کنید.
اجرای اعتماد صفر در Kubernetes
3) امنیت POD را با Kubernetes RBAC اجرا کنید
کنترل دسترسی مبتنی بر نقش (RBAC) مجوزها را در سطح خوشه ، فضای نام و سطح منابع تعریف می کند.
*مثال: نقشی را ایجاد کنید تا فقط دسترسی به غلاف ها امکان دسترسی به غلاف را فراهم کند
*
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
namespace: default
name: pod-reader
rules:
- apiGroups: [""]
resources: ["pods"]
verbs: ["get", "list"]
بهترین روشها:
4) ارتباط ایمن با سیاست های شبکه Kubernetes
به طور پیش فرض ، Kubernetes به همه غلاف ها اجازه می دهد تا ارتباط برقرار کنند. سیاست های شبکه ترافیک بین خدمات را محدود می کند.
مثال: اجازه دهید فقط غلافهای جلوی ارتباط با غلافهای باطن ارتباط برقرار کنند
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: frontend-to-backend
namespace: default
spec:
podSelector:
matchLabels:
role: backend
policyTypes:
- Ingress
ingress:
- from:
- podSelector:
matchLabels:
role: frontend
بهترین روشها:
-
پیش فرض تمام ترافیک Ingress را انکار کنید ، سپس به قوانین خاص اجازه دهید.
-
برای ارتباطات رمزگذاری شده از مش سرویس (ISTIO ، Linkerd) استفاده کنید.
5) هویت بار کار صفر را با Spiffe & Istio پیاده سازی کنید
احراز هویت سنتی به اعتبار استاتیک متکی است. Spiffe (چارچوب هویت تولید ایمن برای همه) هویت بار کاری پویا را ارائه می دهد.
مثال: تأیید اعتبار MTLS بین خدمات با ISTIO را فعال کنید
apiVersion: security.istio.io/v1beta1
kind: PeerAuthentication
metadata:
name: default
namespace: default
spec:
mtls:
mode: STRICT
بهترین روشها:
از MTLS برای تأیید اعتبار سرویس به سرویس استفاده کنید.
اعتبار سنجی هویت مبتنی بر JWT را اجرا کنید.
بار کار را با تله متری Istio کنترل کنید.
نظارت و پاسخ حادثه
اعتماد صفر فقط مربوط به پیشگیری نیست ، بلکه نظارت در زمان واقعی و پاسخ به حادثه است.
ابزارهای نظارت بر امنیت AWS:
-
AWS Guardduty – تهدیدها را در سیاههها تشخیص دهید.
-
AWS CloudTrail – فعالیت API حسابرسی.
-
قطب امنیتی AWS – نظارت بر انطباق.
ابزارهای امنیتی Kubernetes توصیه شده:
-
FALCO – امنیت زمان اجرا کانتینر را کنترل می کند.
-
Kube-Bench-بهترین شیوه های امنیتی خوشه را بررسی می کند.
-
Kyverno – سیاست های امنیتی را در سطح API Kubernetes اجرا می کند.
پایان
اجرای امنیت صفر اعتماد در AWS & Kubernetes به یک رویکرد لایه بندی شده نیاز دارد:
-
هویت و کنترل دسترسی (IAM ، RBAC)
-
API و ارتباط بار کار (API Gateway ، MTLS)
-
تقسیم شبکه (خط مشی های شبکه ، مش خدمات)
-
نظارت مداوم (Guardduty ، Falco)
با اجرای حداقل دسترسی به امتیاز ، تأیید مداوم و سیاستهای امنیتی قوی ، می توانید یک معماری قوی و صفر اعتماد به ابر بومی بسازید.
مراحل بعدی:
این استراتژی ها را در تنظیم AWS & Kubernetes خود اعمال کنید. به کمک نیاز دارید؟ سوالات خود را در زیر رها کنید!