| RADCLIENT(1) | FreeRADIUS Daemon | RADCLIENT(1) |
نام (NAME)
radclient - ارسال بستهها به سرور RADIUS و نمایش پاسخ
خلاصه دستور (SYNOPSIS)
radclient [-4] [-6] [-b] [-c count] [-d raddb_directory] [-D dictionary_directory] [-f file] [-F] [-h] [-i id] [-n num_requests_per_second] [-p num_requests_in_parallel] [-q] [-r num_retries] [-s] [-S shared_secret_file] [-t timeout] [-v] [-x] server {acct|auth|status|coa|disconnect|auto} secret
توضیحات (DESCRIPTION)
radclient یک برنامه کلاینت radius است. این برنامه میتواند بستههای دلخواه radius را به یک سرور radius ارسال کند و سپس پاسخ را نمایش دهد. از آن میتوان برای آزمایش تغییراتی که در پیکربندی سرور radius ایجاد کردهاید، یا برای نظارت بر فعال بودن سرور radius استفاده کرد.
radclient جفتهای ویژگی/مقدار radius را از ورودی استاندارد خود، یا از یک فایل مشخصشده در خط فرمان میخواند. سپس این جفتهای ویژگی/مقدار را با استفاده از دیکشنری کدگذاری کرده و به سرور راه دور ارسال میکند.
ویژگیهای User-Password و CHAP-Password پیش از ارسال بسته به سرور به صورت خودکار رمزگذاری میشوند.
گزینهها (OPTIONS)
- -4
- استفاده از IPv4 (پیشفرض)
- -6
- استفاده از IPv6
- -b
- اعمال
بررسیهای
Blast RADIUS. تمامی
پاسخها به
یک بسته Access-Request
باید دارای
Message-Authenticator به
عنوان
نخستین
ویژگی
باشند.
برای سازگاری با سرورهای قدیمی، این پرچم به صورت پیشفرض فعال نیست. با این حال، radclient همچنان امضای Blast RADIUS را بررسی کرده و بستههایی را که با این حمله تطابق داشته باشند دور میاندازد.
- -c count
- ارسال هر بسته به تعداد count بار.
- -d raddb_directory
- پوشهای که فایل دیکشنری کاربر در آن قرار دارد. پیشفرض /etc/raddb است.
- -D dictionary_directory
- پوشهای که فایل دیکشنری اصلی در آن قرار دارد. پیشفرض /usr/share/freeradius است.
- -f file[:file]
- فایلی برای خواندن جفتهای ویژگی/مقدار. اگر این گزینه مشخص نشود، از ورودی استاندارد (stdin) خوانده میشوند. این گزینه را میتوان چندین بار تعیین کرد؛ در این حالت بستهها به ترتیب فایلها و در هر فایل از نخستین بسته تا آخرین بسته ارسال میشوند. یک خط خالی، بستههای منطقی را درون یک فایل از هم جدا میکند. اگر جفتی از فایلها که با دونقطه از یکدیگر جدا شدهاند مشخص شود، فایل دوم برای پالایش (فیلتر کردن) پاسخهای مربوط به درخواستهای فایل نخست استفاده خواهد شد. تعداد درخواستها و فیلترها باید یکسان باشد. در صورت ارسال گزینه -s، خلاصهای از نتایج فیلتر نمایش داده میشود.
- -F
- چاپ نام فایل، شماره بسته و کد پاسخ.
- -h
- نمایش اطلاعات راهنمای نحوه استفاده.
- -i id
- استفاده از id به عنوان شناسه درخواست RADIUS.
- -n num_requests_per_second
- تلاش برای
ارسال num_requests_per_second
بسته در
ثانیه با
فواصل منظم.
این گزینه
به شما
اجازه
میدهد نرخ
ارسال
درخواستهای
radclient را کاهش
دهید. هنگام
عدم
استفاده از
-n، حالت
پیشفرض
ارسال
بستهها در
سریعترین
زمان ممکن و
بدون وقفه
بین
بستهای
است.
به دلیل محدودیتهای radclient، این گزینه تعداد بستهها در ثانیه را با دقت کامل ارسال نمیکند.
- -p num_requests_in_parallel
- ارسال num_requests_in_parallel
درخواست به
صورت
همزمان،
بدون
انتظار
برای
دریافت
پاسخ هر یک
از آنها.
به طور
پیشفرض، radclient
نخستین
درخواستی
را که
خوانده
ارسال
میکند،
منتظر
دریافت
پاسخ
میماند، و
پس از
دریافت
پاسخ،
درخواست
دوم موجود
در فهرست را
میفرستد.
این گزینه
امکان
ارسال
چندین
درخواست را
به طور
همزمان
فراهم
میسازد. پس
از ارسال
num_requests_in_parallel بسته،
radclient تا زمان
دریافت
تمامی
پاسخها (یا
پایان مهلت
زمانی
درخواستها)
منتظر
میماند و
سپس
بستههای
بعدی را
ارسال
میکند.
این گزینه به شما اجازه میدهد بیشترین بار کاری قابل پذیرش توسط سرور RADIUS را ارزیابی و کشف کنید.
- -P proto
- استفاده از پروتکل انتقال proto (مقدار "tcp" یا "udp"). تنها در صورتی در دسترس است که FreeRADIUS با پشتیبانی از انتقال TCP کامپایل شده باشد.
- -q
- ورود به حالت بیصدا (quiet) و عدم چاپ هرگونه خروجی.
- -r num_retries
- تلاش برای ارسال مجدد هر بسته به میزان num_retries بار، پیش از صرفنظر کردن از آن. مقدار پیشفرض ۱۰ است.
- -s
- چاپ خلاصه اطلاعات بستههای ارسالی و دریافتی.
- -S shared_secret_file
- به جای خواندن راز مشترک از خط فرمان (که برای سایر افراد در سیستم محلی قابل مشاهده است)، آن را از shared_secret_file میخواند.
- -t timeout
- انتظار به مدت timeout ثانیه پیش از نتیجهگیری اینکه NAS به درخواستی پاسخ نداده است و ارسال مجدد بسته. زمان انتظار پیشفرض ۳ ثانیه است.
- -v
- چاپ اطلاعات نسخه برنامه.
- -x
- چاپ اطلاعات اشکالزدایی (دیباگ).
- server[:port]
- نام میزبان
یا نشانی IP
سرور راه
دور. به
صورت
اختیاری
میتوان
درگاه UDP را
نیز مشخص
کرد. اگر
پورت UDP
تعیین
نشود، در
/etc/services جستجو
میشود. نام
سرویس مورد
جستجو برای
بستههای
حسابرسی radacct
و برای سایر
درخواستها
radius است. اگر
سرویسی در
/etc/services یافت
نشود، به
ترتیب
پورتهای
۱۸۱۳ و ۱۸۱۲
استفاده
خواهند شد.
برای
بستههای coa
و disconnect از پورت
۳۷۹۹
استفاده
میشود.
اگر یک نام میزبان مشخص شود، radclient یک جستجوی DNS انجام داده و از رکورد A برای یافتن نشانی IP سرور RADIUS استفاده میکند. اگر رکورد A وجود نداشته باشد، radclient به دنبال رکورد AAAA میگردد. اگر رکورد AAAA نیز وجود نداشته باشد، خطایی صادر خواهد شد.
نشانیهای IPv6 را میتوان با قرار دادن آنها در براکت مشخص کرد. برای نمونه [2002:c000:0201:0:0:0:0:0]، یا همراه با پورت، [2002:c000:0201:0:0:0:0:0]:18120.
ویژگیهای RADIUS خواندهشده توسط radclient میتوانند شامل ویژگی ویژه Packet-Dst-IP-Address باشند. اگر این ویژگی وجود داشته باشد، بسته به آن نشانی IP ارسال میشود و پارامتر server مشخصشده در خط فرمان نادیده گرفته خواهد شد.
اگر فهرست ویژگیهای RADIUS همواره دارای ویژگی Packet-Dst-IP-Address باشد، پارامتر server میتواند به صورت - تعیین گردد.
ویژگیهای RADIUS خواندهشده توسط radclient میتوانند حاوی ویژگی ویژه Packet-Dst-Port باشند. در صورت وجود این ویژگی، بسته به آن درگاه UDP ارسال میشود و مقدار :port مشخصشده در خط فرمان نادیده گرفته خواهد شد.
- acct | auth | status | coa | disconnect | auto
- استفاده از
auth برای
ارسال بسته
احراز هویت
(Access-Request)، acct برای
ارسال بسته
حسابرسی
(Accounting-Request)، status
برای ارسال
بسته وضعیت
(Status-Server)، coa برای
ارسال بسته
CoA-Request، یا disconnect
برای ارسال
درخواست
قطع اتصال.
به جای این
مقادیر،
میتوانید
از یک کد
دهدهی نیز
در اینجا
استفاده
کنید. برای
نمونه، کد
۱۲ نیز
معادل Status-Server
است.
ویژگیهای RADIUS خواندهشده توسط radclient میتوانند شامل ویژگی ویژه Packet-Type باشند. در صورت وجود این ویژگی، آن نوع بسته ارسال شده و مقدار type مشخصشده در خط فرمان نادیده گرفته میشود.
اگر فهرست ویژگیهای RADIUS همواره شامل ویژگی Packet-Type باشد، پارامتر type میتواند به صورت auto تعیین شود.
- secret
- راز مشترک (shared secret) برای این کلاینت. این مقدار باید در سمت سرور radius نیز برای نشانی IP که بستههای radius را از آن میفرستید، تعریف شده باشد.
مثال (EXAMPLE)
یک نمونه نشست که سرور راه دور را برای Status-Server پرسوجو میکند (همه سرورها از این ویژگی پشتیبانی نمیکنند، اما FreeRADIUS دارای پشتیبانی قابل پیکربندی برای آن است).
$ echo "Message-Authenticator = 0x00" | radclient 192.0.2.42 status s3cr3t
Sending request to server 192.0.2.42, port 1812.
radrecv: Packet from host 192.0.2.42 code=2, id=140, length=54
Reply-Message = "FreeRADIUS up 21 days, 02:05"
همچنین ببینید (SEE ALSO)
radiusd(8)
نویسندگان (AUTHORS)
Miquel van Smoorenburg, miquels@cistron.nl
Alan DeKok <aland@freeradius.org>
| 21 May 2024 |