AUTH_KRB5(8) InterNetNews Documentation AUTH_KRB5(8)

auth_krb5 - احراز هویت‌کننده Kerberos v5 برای nnrpd

auth_krb5 [-i instance]

این برنامه احراز هویت را برای nnrpd در برابر یک KDC کربروس نگارش ۵ (Kerberos v5 KDC) انجام می‌دهد. این یک احراز هویت واقعی Kerberos با استفاده از بلیت‌های سرویس نیست؛ بلکه از یک نام کاربری و گذرواژه برای تلاش جهت دریافت یک Kerberos v5 TGT استفاده می‌شود تا معتبر بودن آن‌ها تایید گردد. به همین ترتیب، این احراز هویت‌کننده فرض می‌کند که نام کاربری و گذرواژه کاربر در اختیار nnrpd قرار گرفته است و بنابراین به اندازه احراز هویت واقعی Kerberos امن نیست. عموماً این برنامه باید تنها به همراه NNTP بر بستر TLS استفاده شود تا از شنود گذرواژه محافظت به عمل آید.

در حالت عادی، بهتر است از این احراز هویت‌کننده استفاده نکنید. در عوض از ckpasswd با پشتیبانی PAM استفاده کرده و پشته PAM مربوط به nnrpd را به گونه‌ای پیکربندی کنید که از یک ماژول PAM کربروس استفاده کند. یک ماژول کامل PAM کربروس در نحوه اعتبارسنجی گذرواژه‌ها دقیق‌تر و پیشرفته‌تر عمل کرده و دارای مجموعه بسیار گسترده‌تری از گزینه‌ها نسبت به این احراز هویت‌کننده است.

اگر این گزینه مشخص شود، instance به عنوان نمونه (instance) پرینسیپال دریافت‌شده از nnrpd استفاده خواهد شد و احراز هویت به جای پرینسیپال پایه، در برابر آن پرینسیپال انجام می‌شود. به عبارت دیگر، پرینسیپالی مانند "user" وقتی به auth_krb5 فراخوانی‌شده با "-i nntp"; داده شود، پیش از اقدام برای احراز هویت Kerberos به "user/nntp" تبدیل خواهد شد.

از آنجا که سپردن گذرواژه به nnrpd به اندازه احراز هویت معمول Kerberos امن نیست، این گزینه از پیکربندی‌ای پشتیبانی می‌کند که در آن به تمامی کاربران یک نمونه جداگانه فقط برای احراز هویت اخبار (news) با گذرواژه اختصاصی داده می‌شود، تا گذرواژه حساب کاربری عادی آن‌ها از طریق NNTP فاش نشود.

قطعه پیکربندی زیر از readers.conf(5) به nnrpd دستور می‌دهد که با تلاش برای دریافت Kerberos v5 TGT برای کاربران، و الحاق یک نمونه از "nntp" به نام‌های کاربری پیش از انجام این کار، آن‌ها را احراز هویت کند:

auth kerberos {
    auth: "auth_krb5 -i nntp"
}
access kerberos {
    users: "*/nntp"
    newsgroups: example.*
}

دسترسی به گروه‌های newsgroup با الگوی example.* برای تمام کاربرانی که با موفقیت احراز هویت شوند، اعطا می‌شود.

در حال حاضر، هر نام کاربری حاوی اطلاعات قلمرو (شامل "@") رد می‌شود. این اقدام به منظور جلوگیری از آن است که شخصی با وارد کردن نام کاربری مربوط به یک پرینسیپال در قلمرویی دیگر که به آن دسترسی دارد، از طریق آن به کارساز اخبار دسترسی یابد. با این وجود، این موردی است که ممکن است افراد در شرایط خاصی تمایل به انجام آن داشته باشند، بنابراین باید روش بهتری برای رسیدگی به آن وجود داشته باشد (مانند شاید فهرستی از قلمروهای قابل قبول یا یک فلگ -r که قلمرو مورد نظر برای تلاش جهت احراز هویت را مشخص کند).

مشخص نیست هنگامی که نام کاربری ارائه‌شده حاوی "/" باشد و گزینه -i نیز مشخص شده باشد، اقدام صحیح چیست. در حال حاضر، auth_krb5 یک پرینسیپال نادرست Kerberos با چند نمونه ایجاد کرده و تلاش می‌کند با آن احراز هویت کند، که البته شکست خواهد خورد اما شاید با بهترین پیام خطا همراه نباشد.

در ابتدا توسط Christopher P. Lindsey نوشته شد. این مستندات توسط Russ Allbery <eagle@eyrie.org> بر اساس فایل README اصلی Christopher نوشته شده است.

ckpasswd(8), nnrpd(8), readers.conf(5).

2022-07-10 INN 2.7.4