| WPA_CLI(8) | WPA_CLI(8) |
نام (NAME)
wpa_cli - کلاینت خط فرمانی WPA برای wpa_supplicant
خلاصه دستور (SYNOPSIS)
wpa_cli [ -p مسیر سوکتهای کنترل ] [ -g مسیر سوکت سراسری ctrl_interface ] [ -i نام رابط ] [ -hvB ] [ -a فایل اقدام ] [ -P فایل pid ] [ -G بازه پینگ ] [ دستور ... ]
بررسی اجمالی (OVERVIEW)
دستور wpa_cli یک برنامه پیشانی (فرانتاند) مبتنی بر متن برای تعامل با wpa_supplicant است. این ابزار برای استعلام وضعیت فعلی، تغییر پیکربندی، راهاندازی رویدادها و درخواست ورودی تعاملی کاربر استفاده میشود.
دستور wpa_cli میتواند وضعیت فعلی احراز هویت، حالت امنیتی انتخابشده، MIBهای dot11 و dot1x و غیره را نمایش دهد. علاوه بر این، میتواند برخی متغیرها مانند پارامترهای ماشین وضعیت EAPOL را پیکربندی کرده و رویدادهایی مانند اتصال مجدد (reassociation) و ورود/خروج (logoff/logon) در IEEE 802.1X را فراخوانی کند. ابزار wpa_cli یک رابط کاربری برای درخواست اطلاعات احراز هویت، مانند نام کاربری و گذرواژه در صورتی که در فایل پیکربندی گنجانده نشده باشند، فراهم میسازد. این قابلیت میتواند برای پیادهسازی مواردی چون گذرواژههای یکبارمصرف (OTP) یا احراز هویت مبتنی بر کارتهای توکن عمومی (Generic Token Card) که در آنها احراز هویت بر اساس چالش-پاسخ (challenge-response) با استفاده از یک دستگاه خارجی برای تولید پاسخ انجام میشود، به کار رود.
رابط کنترل wpa_supplicant را میتوان طوری پیکربندی کرد که امکان دسترسی کاربران غیرریشه را فراهم کند (پارامتر ctrl_interface GROUP= در فایل پیکربندی). این قابلیت اجرای wpa_cli را با یک حساب کاربری عادی ممکن میسازد.
دستور wpa_cli از دو حالت تعاملی و خط فرمانی پشتیبانی میکند. هر دو حالت از مجموعه دستورات یکسانی بهره میبرند و تفاوت اصلی آنها در این است که حالت تعاملی امکان دسترسی به پیامهای خودکار و بدون درخواست (پیامهای رویداد و درخواستهای نام کاربری/گذرواژه) را فراهم میآورد.
حالت تعاملی زمانی آغاز میشود که wpa_cli بدون مشخص کردن دستور به عنوان آرگومان خط فرمان اجرا شود. در این حالت، دستورات در خط اعلان (پرامپت) wpa_cli وارد میشوند. در حالت خط فرمان، همان دستورات به عنوان آرگومانهای خط فرمان به wpa_cli داده میشوند.
درخواست تعاملی پارامترهای احراز هویت
هنگامی که wpa_supplicant به پارامترهای احراز هویت مانند نام کاربری و گذرواژه نیاز دارد که در فایل پیکربندی موجود نیستند، یک پیام درخواست به تمامی برنامههای پیشانی متصلشده، مانند wpa_cli در حالت تعاملی، ارسال میکند. wpa_cli این درخواستها را با پیشوند "CTRL-REQ-<type>-<id>:<text>" نمایش میدهد. در اینجا <type> نشاندهنده نوع درخواست (مانند IDENTITY ،PASSWORD یا OTP برای گذرواژه یکبارمصرف) است. شناسه <id> یک شناسه یکتا برای شبکه فعلی است. عبارت <text> توضیحی درباره درخواست است. در مورد درخواست OTP، این بخش شامل متن چالش ارائهشده از سوی سرور احراز هویت خواهد بود.
پاسخ به این درخواستها میتواند با دستورات identity، password و otp ارائه شود. مقدار <id> باید از درخواست مربوطه کپی شود. دستورات password و otp صرفنظر از اینکه نوع درخواست PASSWORD یا OTP بوده است، قابل استفاده هستند. تفاوت اصلی میان این دو دستور در این است که مقادیر ارائهشده با password تا زمانی که wpa_supplicant در حال اجرا است به یاد سپرده میشوند، در حالی که مقادیر ارائهشده با otp تنها یک بار استفاده شده و سپس فراموش میشوند؛ یعنی wpa_supplicant برای هر بار استفاده، مقدار جدیدی از برنامه پیشانی درخواست خواهد کرد. این ویژگی میتواند برای پیادهسازی فهرستهای گذرواژه یکبارمصرف و احراز هویت مبتنی بر کارتهای توکن عمومی به کار رود.
نمونه درخواست برای گذرواژه و پاسخ متناظر:
CTRL-REQ-PASSWORD-1:Password needed for SSID foobar > password 1 mysecretpassword
نمونه درخواست برای چالش-پاسخ در کارت توکن عمومی:
CTRL-REQ-OTP-2:Challenge 1235663 needed for SSID foobar > otp 2 9876
گزینهها (OPTIONS)
- -p مسیر
- تغییر مسیری که سوکتهای کنترل باید در آن جستجو شوند.
- -g مسیر سوکت کنترل
- اتصال به سوکت کنترل سراسری در مسیر مشخصشده، به جای سوکت کنترل ویژه یک رابط خاص.
- -i نام رابط
- مشخص کردن رابطی که در حال پیکربندی است. به طور پیشفرض، نخستین رابط یافتشده دارای سوکت کنترل در مسیر سوکت انتخاب میشود.
- -h
- راهنما. نمایش پیام راهنمای نحوه استفاده.
- -v
- نمایش اطلاعات نسخه.
- -B
- اجرا به عنوان یک دیمن (daemon) در پسزمینه.
- -a فایل
- اجرا در حالت دیمن و اجرای فایل اقدام بر اساس رویدادهای دریافتی از wpa_supplicant. فایل مشخصشده با دو آرگومان اجرا خواهد شد: آرگومان نخست برابر با نام رابط شبکه و آرگومان دوم بسته به رویداد، برابر با "CONNECTED" یا "DISCONNECTED" خواهد بود. این قابلیت میتواند برای اجرای ابزارهای شبکهای مورد نیاز جهت پیکربندی رابط استفاده شود.
- علاوه بر این، سه متغیر محیطی در دسترس این فایل قرار دارند: WPA_CTRL_DIR، WPA_ID و WPA_ID_STR. متغیر WPA_CTRL_DIR شامل مسیر مطلق به سوکت ctrl_interface است. متغیر WPA_ID شامل شناسه یکتای network_id اختصاصیافته به شبکه فعال است، و متغیر WPA_ID_STR شامل محتوای گزینه id_str میباشد.
- -P فایل
- تنظیم محل ذخیره فایل شناسه فرایند (PID).
- -G بازه پینگ
- تنظیم بازه زمانی (به ثانیه) که طی آن wpa_cli به supplicant پینگ ارسال میکند.
- command
- اجرای یک دستور. دستورات در دسترس در بخش بعدی فهرست شدهاند.
دستورات (COMMANDS)
دستورات زیر در دسترس هستند:
- status
- دریافت وضعیت فعلی WPA/EAPOL/EAP
- mib
- دریافت متغیرهای MIB (مانند dot1x و dot11)
- help
- نمایش این راهنمای استفاده
- interface [ifname]
- نمایش رابطها / انتخاب رابط
- level <debug level>
- تغییر سطح اشکالزدایی (debug level)
- license
- نمایش متن کامل مجوز wpa_cli
- logoff
- خروج (logoff) از ماشین وضعیت IEEE 802.1X EAPOL
- logon
- ورود (logon) به ماشین وضعیت IEEE 802.1X EAPOL
- set
- تنظیم متغیرها (در صورت اجرا بدون آرگومان، فهرستی از متغیرها را نمایش میدهد)
- pmksa
- نمایش حافظه موقت (کَش) PMKSA
- reassociate
- اجبار به اتصال مجدد (reassociation)
- reconfigure
- اجبار wpa_supplicant به بازخوانی فایل پیکربندی خود
- preauthenticate <BSSID>
- اجبار به پیشاحراز هویت (preauthentication)
- identity <network id> <identity>
- پیکربندی هویت (identity) برای یک SSID
- password <network id> <password>
- پیکربندی گذرواژه (password) برای یک SSID
- pin <network id> <pin>
- پیکربندی کد پین (pin) برای یک SSID
- otp <network id> <password>
- پیکربندی گذرواژه یکبارمصرف (OTP) برای یک SSID
- bssid <network id> <BSSID>
- تعیین BSSID ترجیحی برای یک SSID
- list_networks
- فهرست کردن شبکههای پیکربندیشده
- terminate
- خاتمه دادن به فرایند wpa_supplicant
- quit
- خروج از wpa_cli
همچنین ببینید (SEE ALSO)
نویسندگان (AUTHORS)
برنامه wpa_supplicant دارای حق نشر © 2003-2022 متعلق به Jouni Malinen <j@w1.fi> و مشارکتکنندگان است. تمامی حقوق محفوظ است.
این برنامه تحت مجوز BSD (نسخه بدون بند تبلیغات) منتشر شده است.
| 07 August 2019 |