PermitOpen نام مقصدی را که کلاینت SOCKS ارائه میدهد بررسی میکند
یک مقصد محدود SSH SOCKS را بر اساس نام میزبان درخواستی و پورت آن تطبیق دهید، نه با فرض اینکه نامهای مستعار DNS و نشانیهای عددی معادل هستند.
یک حساب موجود برای ارسال SSH میتواند جفتهای مقصد را که کلاینتهای SOCKS آن استفاده میکنند محدود کند. یک قطعه در سمت سرور میتواند یک سرویس نامدار را مجاز کند:
Match User proxyuser
PermitOpen api.example.net:443
این را با سیاست موجود احراز هویت و ارسال حساب یکپارچه کنید. PermitOpen خودش اجازه ارسال نمیدهد و دسترسی shell را غیرفعال نمیکند.
OpenSSH نامهای مقصد ارائهشده را بدون انجام جستوجوی نشانی برای آن مقایسه، مقایسه میکند. بهجز شکلهای wildcard مستندشده، این مقدار یک الگوی عمومی نام میزبان نیست.
این برای SOCKS5 مهم است. کلاینتی که api.example.net را با پورت 443 میفرستد میتواند با آن جفت مطابقت داشته باشد. کلاینتی که همان نام را بهصورت محلی حل میکند و یک IP عددی میفرستد، رشته مقصد متفاوتی ارائه کرده است. نام مستعاری که به همان نشانی حل میشود نیز متفاوت است.
حالت حل محلی در برابر حل از طریق پروکسی کلاینت را با قاعده موردنظر سازگار نگه دارید. حل بعدی نام میزبان مجاز همچنان تعیین میکند سرور به کجا متصل میشود؛ این تنظیم ممنوعیتی آگاه از DNS برای هر نشانی خصوصی نیست.
محدودیتهای مخصوص هر کلید و دیگر تنظیمات قابلاعمال سرور را همراه با آن بررسی کنید، زیرا هر ممنوعیت ارسال بیشتر همچنان میتواند درخواست را رد کند.