برنامه نویسی

خودکار کردن حذف قوانین ورودی خاص از هر گروه امنیتی در AWS از طریق Config

گردش کار تصویر

همانطور که ایجاد منابع در ابر مانند AWS بسیار سرگرم کننده است، حفظ بررسی های امنیتی خود نیز بسیار مهم است. زیرا حتی یک نقض امنیتی برای از بین بردن زیرساخت ابری شما در برخی موارد کافی است.
بنابراین من اکنون یک داستان کوچک برای شما تعریف می کنم، من قبلاً برنامه ایجاد می کردم ساقه لوبیا الاستیک به عنوان یک توسعه دهنده، زیرا ایجاد و مدیریت آن بسیار آسان است که سرویس مدیریت شده aws است. سپس پس از مدتی متوجه شدم که ساقه لوبیا الاستیک کل فکر را به عنوان یک پشته تشکیل ابر ایجاد می کند. یکی از اشکالات این است که سرور EC2 را با قوانین گروه امنیتی پیش‌فرض (مانند SSH (پورت 22) به هر جایی باز است 0.0.0.0/0 که بزرگ است نه نه!!)
بنابراین هر بار که EB گروه های امنیتی را ایجاد، بازسازی یا به روز می کند، این قانون SSH به عنوان پیش فرض می آید. قبلاً از حذف دستی قوانین ssh پس از اخطار Trust Advisor استفاده می کردم که بسیار خسته کننده است اما مهم ترین خطر است زیرا ما هرگز نمی دانیم اگر پورت SSH را حتی برای 5 دقیقه باز کنیم چه اتفاقی می افتد.

اکنون راهی پیدا کردم که با آن می توانید به طور خودکار قانون را در آن تنظیم کنید پیکربندی AWS (به شما کمک می‌کند پیکربندی‌ها و روابط منابع خود را ارزیابی، بررسی و ارزیابی کنید) و هر زمان که confid آن قانون را در هر یک از گروه‌های امنیتی شما شناسایی کرد، آن قوانین را با AWS SSM (Systems Manager) حذف کنید. بنابراین بیایید شروع کنیم و کل فرآیند را درک کنیم.

پیکربندی AWS به طور مداوم بر منابع و پیکربندی نظارت می کند و اقدامات اصلاحی را بر اساس قوانین پیکربندی انجام می دهد.

ایجاد نقش IAM برای مدیریت سیستم (AWS SSM)

1.) برو به کنسول مدیریت AWS.

2.) یک نقش IAM ایجاد کنید و به آن مجوز بدهید به SSM اجازه می دهد از طرف شما با خدمات AWS تماس بگیرد.
روی ایجاد نقش کلیک کنید، سپس AWS services را انتخاب کنید.

تصویر 2
و مورد استفاده به عنوان مدیر سیستم ها

تصویر 3

در مرحله بعد، را انتخاب کنید AmazonSSMAutomationRole سیاست از لیست
تصویر 4
3.) در نهایت نام را بدهید و مجوزهای آن را بررسی کنید SSMAutomationRoleForConfig و نقش را ایجاد کنید

تصویر 5

4.) پس از این یک خط مشی درون خطی برای دادن دسترسی Role برای حذف گروه های امنیتی ضمیمه کنید. در زیر خط مشی IAM برای آن آمده است.

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": [
                "ec2:RevokeSecurityGroupIngress",
                "ec2:DescribeSecurityGroups"
            ],
            "Resource": "*"
        }
    ]
}
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

قوانین پیکربندی AWS را برای محدود کردن دسترسی SSH تنظیم کنید.

5.) به AWS Config بروید، روی آن کلیک کنید قانون اضافه کنید.
تصویر 6

6.) حالا نوع قانون as را انتخاب کنید قانون مدیریت شده AWS یعنی محدود-ssh از لیست قوانین

تصویر 7

7.) قانون را پیکربندی کنید و نام بصری را مانند بگذارید محدود-ssh
تصویر 8
منابع را به عنوان انتخاب کنید گروه های امنیتی در بخش تغییرات در حالت ارزیابی.

می توانید گزینه های دیگر مانند پارامترها و برچسب ها را به عنوان پیش فرض رها کنید.
در نهایت قانون Config را مرور کنید و پس از اتمام روی Add Rule کلیک کنید.

تصویر 9

اصلاح قانون Config را مدیریت کنید.

پس از ایجاد، قانون را انتخاب کنید و در اقدامات کلیک کنید مدیریت اصلاح

تصویر 10

حالا اکشن Remediation را به صورت خودکار انتخاب کنید.

تصویر 4rtwfe
سپس اقدام اصلاحی را به عنوان انتخاب کنید AWS-DisableincomingSShOnPort22 این کار ترافیک SSH ورودی نامحدود در پورت 22 را برای گروه های امنیتی EC2 غیرفعال می کند.

تصویر dsanc

می‌توانید محدودیت‌های نرخ را بر اساس موارد استفاده خود به‌روزرسانی کنید یا فعلاً آن را پیش‌فرض بگذارید. و در پارامتر Resource Id، را انتخاب کنید SecurityGroupIds(یا می توانید با انتخاب پارامتری که به نوع منبع وابسته است، شناسه منبع منابع ناسازگار را به یک اقدام اصلاحی منتقل کنید.). اما در اینجا ما می خواهیم این کار را برای همه گروه های امنیتی انجام دهیم.

تصویر 11

در بخش بعدی پارامترها، SecurityGroupIds خاکستری خواهد شد، بنابراین نیازی به نگرانی در مورد آن نیست. و در AutomationAssumeRole، شماره ARN را قرار دهید. نقشی که در بالا ایجاد کردید یعنی SSMAutomationRoleForConfig در مورد ما.

در نهایت همه چیز را مرور کنید و ذخیره تغییرات.

تست کنید آیا واقعا کار می کند 🤔

  • به داشبورد EC2 بروید، هر نمونه ای را انتخاب کنید و قانون ورودی آن گروه امنیتی را به صورت 🚨🚨 ویرایش کنید SSH (پورت 22) به 0.0.0.0/0 اجازه می دهد (هشدار: لطفاً این کار را با منابع تولید (یا منابع جدی) انجام ندهید، فقط از سرورهای آزمایشی استفاده کنید که در هر صورت چیزی برای به خطر انداختن ندارند.)

تصویر 12

  • اگر یک بدن سعی کند به ssh (پورت 22) قانون ورودی به یک سرور مهم اجازه دهد تا بتواند در داخل آن ssh کند و هر گونه داده را از بین ببرد یا به نوعی به برنامه آسیب برساند.
  • حتی اگر 5 دقیقه باشد، ما حتی نمی دانیم که شخصی داده ها را برداشته یا ssh را در ماشین مجازی انجام داده است. شما هیچ آلارمی نیز دریافت نخواهید کرد. اما با پیکربندی می‌توانیم این مشکل را کاملاً حل کنیم و زیرساخت AWS Cloud خود را ایمن کنیم.

  • پس از مدتی شما اصلاح را مانند زیر مشاهده خواهید کرد. از قانون ssh محدود خود پیروی کنید

تصویر edfgsic

تصویر دژجنون

تصویر 342

و قانون that ssh توسط حذف خواهد شد قانون پیکربندی و AWS SSM Automatic Exection API.

تصویر ddsfsvon

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا