رمز عبور قوی که مرتب تغییر کند، نخستین خط دفاعی VPS Linux Infrawire شماست. از بخش مشتریان میتوانید آیپی و رمز root سرور را پیدا کنید و باید این رمز را پس از نخستین ورود تغییر دهید. این راهنما تغییر رمز، انقضا و سیاست، قفل کردن حسابها و بازیابی رمز root گمشده را پوشش میدهد.
📋 پیشنیازها
- یک VPS لینوکس (Ubuntu 24.04، Debian 12، AlmaLinux 9 یا Rocky Linux 9)
- دسترسی SSH با کاربر root یا کاربری دارای
sudo - برای بازیابی: دسترسی به کنسول (VNC) سرور یا حالت نجات
1. تغییر رمز root
پس از ورود با root:
Bashpasswd
با sudo:
Bashsudo passwd root
رمز جدید را دو بار وارد کنید؛ هنگام تایپ چیزی نمایش داده نمیشود. دستکم ۱۴ نویسه یا بهتر، یک عبارت رمز از مدیر رمز عبور استفاده کنید.
2. تغییر رمز کاربر دیگر
Bashsudo passwd USER
کاربر عادی رمز خود را فقط با passwd تغییر میدهد که ابتدا رمز فعلی را میپرسد. برای وادار کردن کاربر به انتخاب رمز جدید در ورود بعدی:
Bashsudo passwd -e USER
3. تعیین رمز در اسکریپت با chpasswd
chpasswd خطهایی به شکل کاربر:رمز را از ورودی استاندارد میخواند که برای خودکارسازی مفید است:
Bashread -r -s -p "رمز جدید: " PW; echo echo "USER:$PW" | sudo chpasswd unset PW
رمز را مستقیماً در دستور تایپ نکنید: در ~/.bash_history میماند و در فهرست فرایندها دیده میشود.
4. انقضا و سیاست رمز
قوانین کهنگی رمز را با chage ببینید و تنظیم کنید:
Bashsudo chage -l USER # نمایش سیاست فعلی sudo chage -M 90 -W 7 USER # حداکثر ۹۰ روز و هشدار ۷ روز قبل
برای اجبار به پیچیدگی، ماژول کیفیت را نصب کنید:
Bash# Ubuntu / Debian sudo apt install -y libpam-pwquality # AlmaLinux / Rocky sudo dnf install -y libpwquality
سپس /etc/security/pwquality.conf را ویرایش کنید:
INIminlen = 12 minclass = 3 retry = 3
این قوانین برای کاربران عادی اعمال میشود. root میتواند آنها را دور بزند، پس خودتان انضباط داشته باشید.
5. قفل کردن و بازکردن حساب
Bashsudo passwd -l USER # قفل کردن رمز sudo passwd -u USER # بازکردن قفل sudo chage -E 0 USER # منقضی کردن فوری حساب sudo chage -E -1 USER # حذف تاریخ انقضا
قفل کردن رمز مانع ورود با کلید SSH نمیشود. برای غیرفعال کردن کامل ورود، شل را هم با sudo usermod -s /usr/sbin/nologin USER روی /usr/sbin/nologin بگذارید.
6. بازیابی رمز root فراموششده
کنسول VNC سرور را باز کنید (یا حالت نجات را بوت کنید) و ریبوت کنید. در منوی GRUB کلید e را بزنید، خطی را که با linux شروع میشود پیدا کنید و در انتهای آن اضافه کنید:
Bashinit=/bin/bash
برای بوت Ctrl+X را بزنید، سپس:
Bashmount -o remount,rw / passwd root sync exec /sbin/init
روی AlmaLinux و Rocky به جای آن rd.break اضافه کنید، سپس mount -o remount,rw /sysroot، chroot /sysroot، passwd root و touch /.autorelabel را اجرا کنید و دو بار خارج شوید. در حالت نجات، دیسک سیستم را mount کنید، chroot /mnt و سپس passwd root را اجرا کنید.
7. بررسی
Bashsudo passwd -S USER sudo chage -l USER
P یعنی رمز قابل استفاده و L یعنی حساب قفلشده. پیش از بستن نشست اول، یک نشست SSH دوم باز کنید و از کارکرد رمز جدید مطمئن شوید.
🔧 عیبیابی
"Authentication token manipulation error"
سیستم فایل فقطخواندنی است، معمولاً در حالت بازیابی. mount -o remount,rw / را اجرا کنید و دوباره تلاش کنید.
"BAD PASSWORD: The password fails the dictionary check"
سیاست رمز ضعیف را رد میکند. رمز بلندتری با چند نوع نویسه انتخاب کنید.
SSH هنوز رمز جدید root را نمیپذیرد
sudo grep -E 'PermitRootLogin|PasswordAuthentication' /etc/ssh/sshd_config و فایلهای /etc/ssh/sshd_config.d/ را بررسی کنید. ممکن است ورود با رمز به نفع کلیدها غیرفعال شده باشد.
پس از بازیابی در سیستم دارای SELinux امکان ورود نیست
روی AlmaLinux یا Rocky فراموش کردن touch /.autorelabel باعث شکست ورود میشود. بازیابی را تکرار کنید و فایل را بسازید.
🔒 حسابهای شما اکنون با رمزهای قوی، انقضای معقول و راه بازیابیای که میدانید چطور استفاده کنید محافظت میشوند.