radrelay.conf(5) FreeRADIUS configuration file radrelay.conf(5)

radrelay.conf - فایل پیکربندی برای حالت «radrelay» کارگزار FreeRADIUS

فایل radrelay.conf در دایرکتوری پایگاه دادهٔ radius، به طور پیش‌فرض /etc/raddb قرار دارد. این فایل پیکربندی سراسری را برای کارگزار FreeRADIUS، زمانی که کارگزار در حالت «radrelay» کار می‌کند، تعریف می‌نماید.

برای توضیحات دقیق دربارهٔ قالب فایل، به «man radiusd.conf» مراجعه کنید. مدخل‌های پیکربندی در radrelay.conf تا حد زیادی مشابه هستند، همراه با چند تفاوت که در اینجا ذکر شده است.

بسیاری از مراکز چندین کارگزار radius اجرا می‌کنند؛ حداقل یک سرور اصلی و یک سرور پشتیبان. هنگامی که سرور اصلی از کار می‌افتد، بیشتر NASها متوجه این موضوع شده و به سرور پشتیبان سوئیچ می‌کنند.

این امر موجب می‌شود بسته‌های حسابرسی (accounting) شما به سرور پشتیبان ارسال شوند — و حتی برخی از NASها زمانی که سرور اصلی دوباره فعال می‌شود، به سرور اصلی بازنمی‌گردند.

نتیجه این است که رکوردهای حسابرسی از دست می‌روند، و/یا مدیر سیستم برای ترکیب فایل‌های جزئیات (detail) مختلف از چندین سرور، متحمل زحمت فراوان می‌شود. همچنین بدین معناست که پایگاه دادهٔ نشست‌ها («radutmp» که برای radwho و تشخیص استفادهٔ هم‌زمان به کار می‌رود) از هماهنگی خارج می‌شود.

برنامهٔ radrelay این مشکل را با «بازپخش» (relay) بسته‌ها از یک سرور به سرور دیگر حل می‌کند تا هر دو دارای مجموعهٔ یکسانی از داده‌های حسابرسی باشند.

اگر کارگزار RADIUS ناگهان تعداد زیادی بستهٔ حسابرسی دریافت کند، ممکن است توان پردازشی کافی (CPU) برای پردازش به‌موقع همهٔ آن‌ها وجود نداشته باشد. این مشکل به‌ویژه زمانی که بسته‌های حسابرسی به یک پایگاه داده در پس‌زمینه (back-end) ارسال می‌شوند، مشهود است.

به طور مشابه، ممکن است یک پایگاه داده داشته باشید که نشست‌های فعال («live») را پیگیری می‌کند و پایگاه دادهٔ دیگری که داده‌های پیشینهٔ حسابرسی را ثبت می‌نماید. در این حالت، دسترسی به پایگاه دادهٔ اول سریع است زیرا کوچک است. دسترسی به پایگاه دادهٔ دوم ممکن است کندتر باشد، زیرا ممکن است حاوی چندین گیگابایت داده باشد. علاوه بر این، نوشتن به‌موقع روی پایگاه دادهٔ اول بسیار مهم است، در حالی که داده‌ها می‌توانند با چند دقیقه تأخیر و بدون هیچ مشکلی روی پایگاه دادهٔ دوم نوشته شوند.

فایل radrelay.conf حالت «radrelay» کارگزار را کنترل می‌کند که می‌تواند هر دو عملکرد فوق را به طور هم‌زمان انجام دهد.

ابتدا باید کارگزار اصلی radius را پیکربندی کنید تا در یک فایل detail مجزا و اضافی ثبت لاگ کند. این کار را می‌توان با افزودن یک نمونهٔ اضافی از ماژول detail به radiusd.conf انجام داد:

برای نمونه:

	detail radrelay-detail {
		filename = ${radacctdir}/radrelay/detail
		permissions = 0600
		dir_permissions = 0755
		locking = yes
	}
	...
	accounting {
		...
		radrelay-detail
		...
	}

این پیکربندی باعث می‌شود بسته‌های حسابرسی در فایل ${radacctdir}/radrelay/detail ثبت شوند. این فایل نباید توسط اسکریپت‌های استاندارد چرخش لاگ (log rotation) چرخانده شود، زیرا برنامهٔ radrelay آن را خوانده و خواهد چرخاند.

برای دستورالعمل‌های تفصیلی دربارهٔ مدخل‌های پیکربندی، معنای آن‌ها و نحوهٔ استفاده از آن‌ها به فایل radrelay.conf مراجعه کنید.

برای اینکه بخش «radrelay» کارگزار فایل detail فوق را بخواند، radrelay.conf را با بخش زیر پیکربندی کنید:

	listen {
		type = detail
		filename = ${radacctdir}/radrelay/detail
		max_outstanding = 100
		identity = radrelay
	}

کارگزار بسته‌های حسابرسی را از فایل detail می‌خواند و آن‌ها را دقیقاً همان‌گونه که از NAS دریافت کرده بود پردازش می‌کند. بنابراین، باید بخش «accounting» در radrelay.conf را طوری پیکربندی کنید که رکوردهای حسابرسی را در یک ماژول «sql» بنویسد، یا آن‌ها را به یک کارگزار RADIUS دیگر پروکسی نماید.

سپس، کارگزار را از طریق دستور زیر راه‌اندازی کنید:

$ radiusd -n radrelay

کارگزار باید راه‌اندازی شود، فایل detail را بخواند و بسته‌های حسابرسی را از آن پردازش کند.

هنگامی که کارگزار در حالت radrelay اجرا می‌شود، فایل radiusd.conf به هیچ وجه خوانده نمی‌شود. لطفاً radrelay.conf را ویرایش کنید.

برنامهٔ اصلی «radrelay» توسط Miquel van Smoorenburg برای پروژهٔ Cistron radius نوشته شد و توسط Simon Ekstrand به FreeRADIUS پورت گردید. برنامهٔ «radsqlrelay» توسط Kostas Kalavras نوشته شد. این برنامه هرگز به عنوان بخشی از یک انتشار رسمی FreeRADIUS عرضه نشد، اما به عنوان مبنایی برای طراحی این پیاده‌سازی عمل کرد.

/etc/raddb/radrelay.conf

radiusd(8), radiusd.conf(5)

Alan DeKok <aland@ox.org>

27 May 2005