بحث Port Knocking در فوق که مورد توجه دوستان قرار گرفت گفتم در ادامه اش ؛ این مطلب زیر رو هم بگذارم
مقوله Single Packet Authorization یا احراز هویت با بسته منفرد؛ یک تکنیک امنیتی پیشرفته برای مخفیکردن سرویسها و کنترل دسترسی به آنهاست.
در این روش، درست مثل Port Knocking، همه پورتهای حساس (مثل SSH روی پورت 22) بهطور پیشفرض بستهاند. اما فرق اصلی اینجاست: به جای اینکه کاربر چند “تقتق” بزند و یک دنباله بسازد، همه چیز در یکبار و فقط با یک بسته رمزنگاریشده انجام میشود.
داستان چطور است؟
فرض کنید خانهای دارید با یک در نامرئی. فقط با گفتن یک کلمهعبور رمزنگاریشده، که آن را در یک یادداشت قفلشده داخل پاکت به نگهبان در میدهید، در برای شما باز میشود و برای بقیه همچنان نامرئی باقی میماند.
در شبکه هم همین اتفاق میافتد:
وضعیت اولیه (همه چیز بسته): فایروال سرور هیچ پاسخی به هیچ اتصال روی پورت حساس نمیدهد (Stealth Mode کامل). ارسال بسته جادویی: کاربر مجاز ؛ با استفاده از ابزاری مثل fwknop یا یک کلاینت اختصاصی، یک بسته UDP یا TCP حاوی اطلاعات احراز هویت را رمزنگاری و امضا شده به سرور میفرستد. تشخیص روی سرور: سرویس SPA روی سرور (مثلاً fwknopd) بسته را باز میکند، امضا را بررسی میکند و در صورتی که معتبر بود، پورت مورد نظر را فقط برای همان IP باز میکند. اعتبار موقت: این باز شدن فقط برای مدت کوتاهی فعال است و سپس به حالت “کاملاً نامرئی” برمیگردد.
چرا این روش بهتر از Port Knocking است؟
یک شلیک، یک ضربه: به جای چند پورت و دنباله پیچیده، همه چیز در یک بسته انجام میشود. رمزنگاری: حتی اگر مهاجم ترافیک را شنود کند، الگو و محتوای Knock را نمیبیند. امنیت در برابر Replay Attack: چون دارای زمانبندی و شمارهیکتای احراز است، بازپخش آن بیفایده میماند. سازگاری با NAT و IPv6: برخلاف Port Knocking سنتی، اینجا مشکل آدرسهای پویای پشت NAT کمتر است.
به زبان ساده، SPA مناسب برای محیطهایی که هم امنیت بالا میخواهند و هم سرویسها باید کاملاً مخفی بمانند