SOCKSIFY(1) دستورات کاربر SOCKSIFY(1)

socksify - پروکسی‌سازی زمان اجرا (socksification) برای برنامه‌های منتخب

اسکریپت شل socksify به منظور تسهیل استفاده از پروتکل ساکس (SOCKS) به همراه باینری‌های پویای از پیش کامپایل‌شده در نظر گرفته شده است. این کار با تنظیم متغیر محیطی LD_PRELOAD روی libdsocks انجام می‌شود و سپس برنامه تلاش می‌کند تمام فراخوانی‌های سیستمی مربوط به شبکه را در بر بگیرد (wrap کند).

هنگام استفاده، این اسکریپت می‌تواند با قرار دادن نام اسکریپت socksify در ابتدای دستور برنامه مورد نظر و آرگومان‌های آن، برنامه را پروکسی‌سازی کند، مانند مثال زیر:

$ socksify ftp ftp.example.org

اسکریپت socksify و کتابخانه دانته ساکس (Dante socks) که توسط اسکریپت استفاده می‌شود، می‌توانند چندین متغیر محیطی را تفسیر کنند:

نام فایل socks.conf را مشخص می‌کند. پیش‌فرض /etc/socks.conf است، مگر اینکه هنگام کامپایل کتابخانه‌های Dante libsocks تغییر داده شده باشد.

ایجاد فایل socks.conf روش توصیه‌شده برای استفاده از socksify است، اما socksify می‌تواند برای اکثر پیکربندی‌های ساده بدون هیچ فایل socks.conf نیز استفاده شود، تا زمانی که سرور پروکسی در یکی از متغیرهای محیطی پشتیبانی‌شده تنظیم شده باشد.

ثبت لاگ اشکال‌زدایی (debug) را فعال می‌کند. مقدار داده‌شده باید یک عدد، از یک به بالا باشد، که سطح اشکال‌زدایی ارائه‌شده را مشخص می‌کند.
این مقدار کنترل می‌کند که کتابخانه کلاینت خروجی لاگ را به کجا بفرستد. این مقدار می‌تواند syslog، stdout، stderr، یک نام فایل یا ترکیبی از آن‌ها باشد. مقدار پیش‌فرض هیچ‌جا است.
استفاده از مقدار SOCKS_USERNAME به عنوان نام کاربری هنگام احراز هویت با نام کاربری.
استفاده از مقدار SOCKS_PASSWORD به عنوان گذرواژه هنگام احراز هویت با نام کاربری. توصیه نمی‌شود زیرا سایر کاربران سیستم ممکن است بتوانند گذرواژه شما را ببینند.
این متغیرها اجازه می‌دهند آدرس سرور بدون استفاده از فایل socks.conf مشخص شود. اگر فایل socks.conf وجود داشته باشد، در صورت تنظیم هر یک از این متغیرها، نادیده گرفته می‌شود.

قالب پذیرفته‌شده به صورت <ipaddress>:<port> است. اگر مقدار SOCKS_SERVER تنظیم شده باشد، نشان می‌دهد که سرور مشخص‌شده از تمام نسخه‌های ساکس پشتیبانی‌شده توسط Dante پشتیبانی می‌کند. اگر هر یک از دو متغیر دیگر استفاده شوند، نشان می‌دهند که سرور ساکس مشخص‌شده تنها از نسخه ساکس متناظر، v4 یا v5 پشتیبانی می‌کند. توجه داشته باشید که اگر سرور ساکس به هر شکلی از احراز هویت نیاز دارد، باید از SOCKS5_SERVER استفاده کنید، زیرا v4 از احراز هویت پشتیبانی نمی‌کند.

این متغیر می‌تواند برای مشخص کردن مکان یک پراکسی HTTP که از درخواست connect پشتیبانی می‌کند استفاده شود. قالب مورد استفاده برای تعیین یک پراکسی HTTP به صورت http://<ipaddress>:<port> است.
این متغیر می‌تواند برای مشخص کردن مکان یک مسیریاب IGD با قابلیت UPNP استفاده شود. سه مقدار ممکن برای این متغیر وجود دارد: یک نشانی اینترنتی (URL) کامل، نام رابطی که مسیریاب از طریق آن قابل دسترسی است، یا مقدار "broadcast" برای جستجوی IGD در تمام رابط‌های مناسب.
توجه داشته باشید که اگر هر یک از متغیرهای محیطی فوق که سرور پراکسی مورد استفاده را نشان می‌دهند تنظیم شوند، کلاینت دانته فایل socks.conf را پردازش نخواهد کرد.
اگر این متغیر روی "no" تنظیم شود، کلاینت سعی نخواهد کرد مسیرهای مستقیم را برای تمام آدرس‌های موجود در شبکه محلی (LAN) به‌طور خودکار اضافه کند. حالت پیش‌فرض افزودن آن‌ها است.
اگر این متغیر تنظیم شود، کلاینت قفل‌گذاری ریسه‌ها (threadlocking) را انجام نمی‌دهد. پیش‌فرض این است که کلاینت خود بررسی کند آیا برنامه‌ای که باید پروکسی شود نیازمند قفل‌گذاری ریسه هست یا خیر.
اگر روی "yes" تنظیم شود، کلاینت در صورت شکست مسیر پراکسی به تلاش برای برقراری اتصال مستقیم بازمی‌گردد. پیش‌فرض "no" است.

/etc/socks.conf

برای شرکت inferno Nettverk A/S:
Michael Shuldman
Karl-Andre' Skevik

socks.conf(5), sockd(8), sockd.conf(5)

اطلاعات مربوط به انتشار نسخه‌های جدید و سایر موضوعات مرتبط را می‌توان در وبگاه رسمی Dante به آدرس http://www.inet.no/dante یافت.

فایل BUGS همراه برنامه را ببینید. اشکالات جدید باید به dante-bugs@inet.no گزارش شوند.

۶ ژوئیه ۲۰۱۳