🛡️
DevSecOps
ادمج الأمان في كل مرحلة من خط الأنابيب. الأمان ليس فكرة لاحقة — هو جزء من كل قرار.
متقدم
Security First
Shift Left
📖 ما هو DevSecOps؟
Security as Code
DevSecOps يدمج ممارسات الأمان في خط أنابيب DevOps. بدلاً من فحص الأمان في النهاية (Late Stage)، يُفحص في كل مرحلة من البداية (Shift Left).
🔍
SAST
تحليل الكود المصدري بحثاً عن ثغرات أمنية. SonarQube, Semgrep.
📦
SCA
فحص الاعتماديات (Dependencies) بحثاً عن ثغرات معروفة. Trivy, Dependabot.
🐳
Container Security
فحص صور Docker بحثاً عن ثغرات وإعدادات خاطئة. Trivy, Grype.
🔑
Secrets Management
إدارة آمنة لكلمات المرور والمفاتيح. HashiCorp Vault, AWS Secrets Manager.
🔍 فحص الحاويات بـ Trivy
apt install wget apt-transport-https gnupg
wget -qO - https://aquasecurity.github.io/trivy-repo/deb/public.key | gpg --dearmor > /usr/share/keyrings/trivy.gpg
echo "deb [signed-by=/usr/share/keyrings/trivy.gpg] https://aquasecurity.github.io/trivy-repo/deb generic main" > /etc/apt/sources.list.d/trivy.list
apt update && apt install trivy
trivy image nginx:latest
trivy fs .
trivy image --severity CRITICAL --exit-code 1 nginx:latest
trivy image -f json -o report.json nginx:latest
🔑 HashiCorp Vault
إدارة الأسرار بشكل آمن
Vault يخزن ويدير كلمات المرور، API Keys، الشهادات، وأي بيانات حساسة. يوفر وصول مشفر ومدقق.
vault server -dev
export VAULT_ADDR='http://127.0.0.1:8200'
vault login
vault kv put secret/db password="s3cr3t" username="admin"
vault kv get secret/db
vault read database/creds/readonly
🐙 الأمان في CI/CD
name: Security Scan
on:
push:
branches: [main]
pull_request:
branches: [main]
jobs:
sast:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Run Semgrep
uses: returntocorp/semgrep-action@v1
container-scan:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build image
run: docker build -t myapp .
- name: Run Trivy
uses: aquasecurity/trivy-action@master
with:
image-ref: 'myapp'
format: 'table'
exit-code: '1'
severity: 'CRITICAL,HIGH'
secret-scan:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: TruffleHog
uses: trufflesecurity/trufflehog@main
🛡️ CrowdSec — حماية الخادم
بديل Fail2Ban الذكي
CrowdSec نظام أمان تعاوني. يكتشف الهجمات ويحظر المهاجمين. يشارك التهديدات مع المجتمع لتحسين الحماية للجميع.
apt install crowdsec
cscli decisions list
cscli scenarios list
apt install crowdsec-nginx-bouncer
cscli metrics
✅ أفضل الممارسات
🎯
1. فعّل فحص الأمان في CI/CD pipeline
2. استخدم Vault أو AWS Secrets Manager
3. لا تضع Secrets في الكود أو Git
4. حدّث الصور والاعتماديات بانتظام
5. فعّل MFA على كل الحسابات
6. استخدم Network Policies في Kubernetes
7. راجع صلاحيات IAM دورياً