آموزش تغییر پسورد سرور لینوکس؛ تصویری و مرحلهبهمرحله

نگاه کلی به مطالب
تغییر پسورد سرور لینوکس یکی از اقدامات کاربردی برای حفظ امنیت سرور و جلوگیری از دسترسیهای غیرمجاز است. در این آموزش از مجله سبزلرن، نحوه تغییر رمز کاربران و Root، بررسی وضعیت و انقضای پسورد، قفل و باز کردن حسابها و رفع خطاهای رایج را بهصورت عملی بررسی میکنیم.
تغییر پسورد سرور لینوکس برای افزایش امنیت و جلوگیری از دسترسیهای غیرمجاز اهمیت زیادی دارد.
دستور "passwd" ابزار اصلی برای تغییر رمز عبور کاربران و حساب "Root" در لینوکس است.
با دستورهای "passwd" و "chage" میتوان وضعیت رمز، تاریخ انقضا، قفل شدن و اجبار به تغییر رمز را مدیریت کرد.
در صورت فراموشی رمز یا بروز خطا، میتوان از حساب دارای دسترسی sudo برای بازیابی یا تغییر رمز استفاده کرد.
برای امنیت بیشتر سرور، علاوه بر پسورد باید از "SSH Key"، مدیریت دسترسی کاربران، فایروال و بهروزرسانی منظم سیستم استفاده کرد.
چرا تغییر پسورد سرور لینوکس ضروری است؟
رمز عبور یکی از مهمترین لایههای امنیتی برای محافظت از حسابهای کاربری در سرور لینوکس است. بسیاری از سرورها بهخصوص VPN ها و سرورهایی که بهتازگی خریداری شدهاند، با یک رمز اولیه در اختیار مدیر قرار میگیرند. استفاده طولانیمدت از این رمز یا استفاده مجدد از رمزی که در سرویسهای دیگر نیز به کار رفته، میتواند ریسک دسترسی غیرمجاز را افزایش دهد. این موضوع دلیل اصلی تغییر پسورد سرور لینوکس است، اما بهطور کلی برای این موضوع دلایل دیگر نیز وجود دارد که مهمترین آنها عبارتاند از:
جایگزین کردن رمز اولیه سرور
جلوگیری از دسترسی افراد قبلی
افزایش امنیت پس از افشای رمز
جلوگیری از استفاده مجدد از رمز
مدیریت بهتر دسترسی کاربران
رعایت سیاستهای امنیتی سازمان
کاهش ریسک دسترسی غیرمجاز
البته توجه داشته باشید که تغییر پسورد بهتنهایی امنیت سرور را تضمین نمیکند. استفاده از "SSH Key"، احراز هویت مناسب، فایروال، بهروزرسانی سیستمعامل و مدیریت صحیح سطح دسترسی کاربران نیز اهمیت دارد.
مقالــه پیشنهادی:
لینوکس چیست؟ (مزایا و معایب)
دستور passwd در لینوکس چیست؟
دستور "passwd" ابزار اصلی تغییر پسورد سرور لینوکس است. یک کاربر معمولی میتواند رمز حساب خودش را تغییر دهد، در حالیکه کاربری که دسترسی مدیریتی یا "sudo" دارد میتواند رمز عبور سایر کاربران را نیز تغییر دهد. ساختار کلی دستور به شکل زیر است:
passwd [options] [username]برای تغییر رمز کاربر فعلی کافی است، دستور زیر را اجرا کنید:
passwdبرای تغییر رمز یک کاربر دیگر نیز میتوانید از دستور زیر استفاده کنید:
sudo passwd usernameآموزش تغییر پسورد سرور لینوکس برای کاربر فعلی
اگر با حساب کاربری خودتان وارد سرور شدهاید و میخواهید مطابق آموزش دوره لینوکس رمز عبور همان حساب را تغییر دهید، مراحل زیر را دنبال کنید:

مرحله اول: ورود به سرور از طریق SSH
ابتدا با استفاده از SSH به سرور متصل شوید. در مثال زیر، "username" نام کاربری و "SERVER_IP" آدرس IP سرور است:
ssh username@SERVER_IPپس از اتصال موفق، وارد محیط ترمینال سرور خواهید شد. اگر نمیدانید با چه حسابی وارد سرور شدهاید، میتوانید دستور زیر را اجرا کنید:
whoamiاین دستور نام کاربری فعلی را نمایش میدهد.
مرحله دوم: اجرای دستور passwd
پس از ورود به سرور، دستور زیر را اجرا کنید:
passwdسیستم از شما ابتدا رمز عبور فعلی و سپس رمز عبور جدید را درخواست میکند. ممکن است هنگام وارد کردن رمز عبور هیچ کاراکتر، ستاره یا نقطهای در ترمینال نمایش داده نشود. این رفتار کاملا طبیعی است و به معنی ثبت نشدن ورودی نیست.
مرحله سوم: وارد کردن رمز جدید
پس از وارد کردن رمز فعلی، رمز جدید را وارد کنید. سپس سیستم از شما میخواهد رمز جدید را یک بار دیگر برای تایید وارد کنید. در صورت موفقیت تغییر پسورد سرور لینوکس، معمولا پیامی مشابه زیر نمایش داده میشود:
passwd: password updated successfully
تغییر پسورد کاربر دیگر در لینوکس
اگر مدیر سرور هستید و میخواهید رمز عبور یک کاربر دیگر را تغییر دهید، میتوانید از "sudo passwd" استفاده کنید. برای مثال، برای تغییر رمز کاربری با نام "admin" باید دستور زیر را اجرا کنید:
sudo passwd adminپس از احراز هویت sudo، سیستم از شما رمز جدید کاربر را میخواهد. در این حالت، مدیر سیستم معمولا برای تنظیم رمز جدید کاربر دیگر نیازی به دانستن رمز فعلی آن کاربر ندارد.
مقالــه پیشنهادی:
سرور چیست و چه کاربرد هایی دارد؟ + 8 کاربرد مهمآموزش تغییر پسورد Root در لینوکس
حساب "root" بالاترین سطح دسترسی در بسیاری از سیستمهای لینوکسی را دارد. اگر حساب فعلی شما دارای دسترسی "sudo" است، میتوانید رمز عبور Root را با دستور زیر تغییر دهید:
sudo passwd root
پس از اجرای دستور، رمز جدید Root را وارد کرده و برای تایید، دوباره آن را وارد کنید. در بسیاری از نصبهای "Ubuntu"، مدیریت سیستم از طریق sudo انجام میشود و ورود مستقیم کاربر "root" از طریق "SSH" ممکن است غیرفعال باشد. بنابراین تنظیم یا تغییر رمز "Root" بهخودیخود به معنی فعال شدن ورود مستقیم Root از طریق SSH نیست. فعال یا غیرفعال بودن ورود Root از طریق SSH به تنظیمات سرویس SSH و فایل پیکربندی آن بستگی دارد.
آیا میتوان پسورد سرور را از طریق SSH تغییر داد؟
اگر با SSH به سرور متصل هستید، میتوانید در همان Session دستور passwd را اجرا کنید. در حالت معمول، تغییر رمز عبور باعث قطع فوری Session فعال SSH نمیشود. با این حال، برای اتصالهای بعدی باید از رمز جدید یا روش احراز هویت مجاز استفاده شود.
تفاوت Password لینوکس و SSH Key
تغییر رمز عبور حساب لینوکس با تغییر کلید SSH یکسان نیست. اگر ورود به سرور فقط با SSH Key انجام میشود، تغییر رمز حساب لینوکس الزاماً روش احراز هویت SSH را تغییر نمیدهد. بنابراین بهتر است روش احراز هویت SSH سرور را بهصورت جداگانه بررسی کنید.
چگونه وضعیت پسورد یک کاربر را بررسی کنیم؟
برای مدیریت بهتر حسابهای کاربری در لینوکس، میتوان وضعیت رمز عبور، تاریخ انقضا و تنظیمات مرتبط با آن را بررسی و در صورت نیاز تغییر داد. دستورهای "passwd" و "chage" امکانات مختلفی برای این کار دارند که مهمترین آنها را در جدول زیر مشاهده میکنید.
کاربرد | دستور | توضیح |
مشاهده وضعیت Password | sudo passwd -S username | نمایش وضعیت فعلی رمز عبور کاربر |
مشاهده تاریخ تغییر و انقضای رمز | sudo chage -l username | نمایش تاریخ آخرین تغییر رمز و زمان انقضا |
اجبار کاربر به تغییر رمز | sudo passwd -e username | اجبار کاربر به تغییر رمز در ورود بعدی |
قفل کردن Password | sudo passwd -l username | قفل کردن رمز عبور حساب کاربری |
باز کردن Password | sudo passwd -u username | باز کردن رمز عبور قفلشده |
تعیین حداکثر عمر Password | sudo chage -M 90 username | تعیین حداکثر اعتبار رمز؛ در این مثال ۹۰ روز |
تعیین هشدار انقضا | sudo chage -W 7 username | نمایش هشدار به کاربر از ۷ روز قبل از انقضای رمز |
اگر پسورد سرور لینوکس را فراموش کنیم چه کنیم؟
اگر رمز عبور یک کاربر را فراموش کردهاید اما هنوز با حساب دیگری که دسترسی sudo دارد به سرور دسترسی دارید، میتوانید رمز را دوباره تنظیم کنید:
sudo passwd usernameبرای مثال، اگر میخواهید رمز Root را تغییر دهید:
sudo passwd rootاگر هیچ حساب مدیریتی در دسترس نیست
در صورتی که هیچ حسابی با دسترسی مدیریتی در اختیار ندارید، روش بازیابی به شرکت ارائهدهنده سرور بستگی دارد. برخی ارائهدهندگان VPS و سرور امکاناتی مانند موارد زیر ارائه میکنند:
Web Console
KVM
Rescue Mode
Recovery Mode
Console (دسترسی اضطراری)
قبل از انجام عملیات Recovery، بهتر است مستندات رسمی ارائهدهنده سرور را بررسی کنید تا از روش صحیح بازیابی استفاده شود.
خطاهای رایج هنگام تغییر پسورد لینوکس
تغییر پسورد سرور لینوکس معمولا فرآیند سادهای است، اما گاهی ممکن است هنگام اجرای دستور passwd با خطا یا مشکل مواجه شوید. برخی از رایجترین خطاها و راهکارهای اولیه برای رفع آنها در زمان تغییر رمز سرور لینوکس عبارتاند از:
خطای Permission denied: اگر دسترسی لازم برای تغییر رمز کاربر مورد نظر را نداشته باشید، ممکن است با خطای Permission denied مواجه شوید. در صورت داشتن دسترسی sudo، دستور را با "sudo passwd username" اجرا کنید. اگر حساب شما دسترسی sudo ندارد، باید از یک حساب مدیریتی برای تغییر رمز استفاده شود.
خطای Authentication token manipulation error: این خطا میتواند دلایل مختلفی داشته باشد و نباید صرفا بر اساس متن خطا یک علت مشخص را قطعی در نظر گرفت. برخی عوامل احتمالی مانند مشکل در فایلسیستم، مشکلات دسترسی به فایلهای مربوط به احراز هویت، تنظیمات PAM، کمبود فضای دیسک و مشکلات مربوط به فایلهای سیستمی را بررسی کنید.
رمز جدید پذیرفته نمیشود: اگر سیستم رمز جدید را قبول نمیکند، ممکن است برای حساب یا سیستمعامل شما سیاست خاصی برای Password تعریف شده باشد. برای مثال ممکن است حداقل طول یا پیچیدگی خاصی برای رمز تعیین شده باشد. بهتر است یک رمز طولانی، تصادفی و منحصربهفرد انتخاب کنید و در صورت نیاز، سیاست Password سیستم را بررسی کنید.

نکات امنیتی برای انتخاب پسورد مناسب سرور
رمز عبور سرور باید طولانی، غیرقابل حدس و منحصربهفرد باشد. برای افزایش امنیت، نکات زیر را رعایت کنید:
از رمزهایی مانند 123456، password، admin123 و qwerty استفاده نکنید.
رمز عبور سرور را در چند سرویس مختلف تکرار نکنید.
از اطلاعات شخصی در ساختار رمز استفاده نکنید.
در صورت امکان از Password Manager برای تولید و نگهداری رمز استفاده کنید.
در کنار Password، استفاده از SSH Key را بررسی کنید.
دسترسیهای مدیریتی را فقط در اختیار کاربران موردنیاز قرار دهید.
کاربران غیرضروری را حذف یا غیرفعال کنید.
دسترسی Root را تا حد امکان محدود کنید.
فایروال سرور را بهدرستی پیکربندی کنید.
سیستمعامل و بستههای نرمافزاری را بهصورت منظم بهروزرسانی کنید.
آیا تغییر پسورد سرور لینوکس همان تغییر رمز SSH است؟
جواب این سوال منفی است، زیرا دستور passwd برای تغییر پسورد سرور لینوکس استفاده میشود اما روش احراز هویت SSH به تنظیمات سرویس SSH وابسته است. اگر ورود SSH با SSH Key انجام میشود، تغییر Password لزوما کلید SSH یا روش احراز هویت کلیدمحور را تغییر نمیدهد. در نهایت به خاطر داشته باشید که امنیت سرور فقط به Password وابسته نیست. عوامل دیگر مانند مدیریت صحیح کاربران، محدود کردن دسترسیهای مدیریتی، پیکربندی فایروال و بهروزرسانی منظم سیستم نیز بخش مهمی از تامین امنیت یک سرور لینوکسی هستند.
سوالات متداول
آیا تغییر پسورد باعث قطع SSH میشود؟
در اغلب موارد تغییر Password بهتنهایی Session فعال SSH را قطع نمیکند. با این حال، برای اتصالهای بعدی باید از رمز جدید یا روش احراز هویت مجاز استفاده شود.
آیا بعد از تغییر پسورد باید سرور را ریستارت کنیم؟
خیر. برای تغییر معمولی رمز عبور با دستور passwd نیازی به Restart یا Reboot سرور نیست و تغییر رمز معمولاً بلافاصله اعمال میشود.
چرا هنگام وارد کردن پسورد چیزی نمایش داده نمیشود؟
این رفتار طبیعی ترمینال لینوکس است. هنگام وارد کردن Password معمولا هیچ کاراکتر، ستاره یا نقطهای نمایش داده نمیشود تا اطلاعات حساس در صفحه ترمینال قابل مشاهده نباشد.
مقالات مرتبط
نظرات
اولین نفری باش که برای این مقاله نظر میدی.
