| SMBPASSWD(8) | ابزارهای مدیریت سیستم | SMBPASSWD(8) |
نام (NAME)
smbpasswd - تغییر گذرواژه SMB یک کاربر
خلاصه دستور (SYNOPSIS)
smbpasswd [-a] [-c <config file>] [-x] [-d] [-e] [-D debuglevel] [-n] [-r <remote machine>] [-R <name resolve order>] [-m] [-U username[%password]] [-h] [-s] [-w pass] [-W] [-i] [-L] [username]
توضیحات (DESCRIPTION)
این ابزار بخشی از مجموعه samba(7) است.
برنامه smbpasswd بسته به اینکه توسط کاربر root اجرا شود یا خیر، چندین کارکرد متفاوت دارد. هنگامی که به عنوان یک کاربر عادی اجرا میشود، به کاربر اجازه میدهد گذرواژه مورد استفاده برای نشستهای SMB خود را در هر ماشینی که گذرواژههای SMB را ذخیره میکند، تغییر دهد.
بهطور پیشفرض (هنگامی که بدون هیچ آرگومانی اجرا شود)، تلاش میکند گذرواژه SMB کاربر فعلی را در ماشین محلی تغییر دهد. این شیوه شبیه به نحوه کارکرد برنامه passwd(1) است. با این حال، تفاوت smbpasswd با نحوه کارکرد برنامه passwd در این است که setuid root نیست، بلکه در حالت کلاینت-کارساز (client-server) کار میکند و با یک دیمن smbd(8) در حال اجرا بهصورت محلی ارتباط برقرار مینماید. در نتیجه، برای اینکه این عمل با موفقیت انجام شود، دیمن smbd باید روی ماشین محلی در حال اجرا باشد. در یک ماشین یونیکس، گذرواژههای رمزگذاریشده SMB معمولاً در بکاند پیشفرض passdb ذخیره میشوند.
هنگامی که smbpasswd توسط یک کاربر عادی و بدون هیچ گزینهای اجرا شود، گذرواژه قبلی SMB را از وی درخواست میکند و سپس گذرواژه جدید را دو بار میپرسد تا از صحت تایپ آن اطمینان حاصل شود. هیچ گذرواژهای هنگام تایپ روی صفحه نمایش بازتاب (echo) نخواهد شد. اگر یک گذرواژه خالی SMB دارید (که با رشته "NO PASSWORD" در فایل smbpasswd مشخص میشود)، کافی است هنگام درخواست گذرواژه قبلی، کلید <Enter> را فشار دهید.
دستور smbpasswd همچنین میتواند توسط یک کاربر عادی برای تغییر گذرواژه SMB در ماشینهای راه دور، مانند کنترلکنندههای دامنه اصلی (Primary Domain Controllers) ویندوز NT مورد استفاده قرار گیرد. گزینههای (-r) و -U در زیر را ببینید.
هنگامی که smbpasswd توسط کاربر root اجرا میشود، امکان افزودن و حذف کاربران جدید در فایل smbpasswd و همچنین اعمال تغییرات در ویژگیهای کاربر در این فایل را فراهم میکند. در زمان اجرا توسط root، دستور smbpasswd مستقیماً به فایل smbpasswd محلی دسترسی پیدا میکند، بنابراین اعمال تغییرات حتی در صورت عدم اجرای smbd نیز امکانپذیر خواهد بود.
گزینهها (OPTIONS)
-a
این گزینه فقط هنگام اجرای smbpasswd به عنوان کاربر root در دسترس است.
-c
-x
این گزینه فقط هنگام اجرای smbpasswd به عنوان کاربر root در دسترس است.
-d
اگر فایل smbpasswd با قالب «قدیمی» (قالب قبل از Samba 2.0) باشد، فضایی در ورودی گذرواژه کاربر برای نوشتن این اطلاعات وجود ندارد و دستور با شکست مواجه خواهد شد (FAIL). برای جزئیات مربوط به قالبهای «قدیمی» و جدید فایل گذرواژه، به smbpasswd(5) مراجعه کنید.
این گزینه فقط هنگام اجرای smbpasswd به عنوان کاربر root در دسترس است.
-e
اگر فایل smbpasswd در قالب «قدیمی» باشد، دستور smbpasswd در فعالسازی حساب با شکست مواجه خواهد شد (FAIL). برای جزئیات مربوط به قالبهای «قدیمی» و جدید فایل گذرواژه، به smbpasswd(5) مراجعه کنید.
این گزینه فقط هنگام اجرای smbpasswd به عنوان کاربر root در دسترس است.
-D debuglevel
هرچه این مقدار بالاتر باشد، جزئیات بیشتری درباره فعالیتهای smbpasswd در فایلهای گزارش (لاگ) ثبت خواهد شد. در سطح 0، فقط خطاهای حیاتی و هشدارهای جدی ثبت میشوند.
سطوح بالاتر از 1 مقادیر قابل توجهی از دادههای گزارش را تولید میکنند و فقط باید هنگام بررسی یک مشکل استفاده شوند. سطوح بالاتر از 3 فقط برای استفاده توسعهدهندگان طراحی شدهاند و حجم عظیمی از دادههای لاگ تولید میکنند که اکثر آنها بسیار مبهم و پیچیده هستند.
-n
توجه داشته باشید برای اینکه به کاربران اجازه ورود به کارساز Samba داده شود پس از آنکه گذرواژه در فایل smbpasswd روی "NO PASSWORD" تنظیم شد، مدیر سیستم باید پارامتر زیر را در بخش [global] از فایل smb.conf تنظیم کند:
null passwords = yes
این گزینه فقط هنگام اجرای smbpasswd به عنوان کاربر root در دسترس است.
-r remote machine name
نام کاربریای که گذرواژهاش تغییر میکند، همان کاربر یونیکس واردشده (logged on) فعلی است. برای جزئیات تغییر گذرواژه برای یک نام کاربری دیگر، پارامتر -U username را مشاهده کنید.
توجه داشته باشید که در صورت تغییر گذرواژه دامنه ویندوز NT، ماشین راه دور مشخصشده باید کنترلکننده اصلی دامنه (Primary Domain Controller) برای آن دامنه باشد (کنترلکنندههای پشتیبان دامنه فقط یک نسخه فقطخواندنی از پایگاهداده حسابهای کاربری دارند و اجازه تغییر گذرواژه را نمیدهند).
توجه داشته باشید که ویندوز 95/98 پایگاهداده گذرواژه واقعی ندارد، بنابراین تغییر گذرواژه با مشخص کردن یک ماشین Win95/98 به عنوان ماشین مقصد راه دور امکانپذیر نیست.
-R name resolve order
گزینهها عبارتند از: "lmhosts"، "host"، "wins" و "bcast". این گزینهها موجب تفکیک نامها به شرح زیر میشوند:
-m
این گزینه فقط هنگام اجرای smbpasswd به عنوان کاربر root در دسترس است.
-U username
-h
-s
-w password
-W
این پارامتر تنها در صورتی در دسترس است که Samba با پشتیبانی LDAP کامپایل شده باشد. سوئیچ -W برای مشخص کردن گذرواژهای که با ldap admin dn استفاده میشود به کار میرود. توجه داشته باشید که گذرواژه در فایل secrets.tdb ذخیره شده و بر اساس DN مدیر کلیدگذاری میشود. این بدان معناست که اگر مقدار ldap admin dn تغییر کند، گذرواژه نیز باید بهصورت دستی بهروزرسانی شود.
-i
این گزینه فقط هنگام اجرای smbpasswd به عنوان کاربر root در دسترس است.
-L
username
نکات (NOTES)
از آنجا که smbpasswd برای یک کاربر غیر root در حالت کلاینت-کارساز (client-server) کار کرده و با یک smbd محلی ارتباط برقرار میکند، دیمن smbd برای کارکرد صحیح آن باید در حال اجرا باشد. یک مشکل رایج این است که با مشخص کردن ورودیهای allow hosts یا deny hosts در فایل smb.conf(5)، محدودیتی برای میزبانهایی که میتوانند به smbd در حال اجرا در ماشین محلی دسترسی داشته باشند اعمال شده و از اعطای مجوز دسترسی "localhost" به smbd غفلت شود.
علاوه بر این، دستور smbpasswd تنها در صورتی مفید و کاربردی است که Samba برای استفاده از گذرواژههای رمزگذاریشده تنظیم شده باشد.
نسخه (VERSION)
این صفحه راهنما بخشی از نسخه 4.24.6 مجموعه نرمافزاری Samba است.
همچنین ببینید (SEE ALSO)
نویسنده (AUTHOR)
نرمافزار اصلی Samba و ابزارهای مرتبط توسط Andrew Tridgell ایجاد شدهاند. Samba اکنون توسط Samba Team بهعنوان پروژهای متنباز، مشابه روش توسعه هسته لینوکس، توسعه مییابد.
| 08/16/2026 | Samba 4.24.6 |