راهاندازی اولیه Ubuntu باید دسترسی مدیریتی قابل اعتماد، بستههای بهروز و سرویسهای محدود به نیاز واقعی ایجاد کند. این راهنما برای Ubuntu 22.04 نوشته شده است. این نسخه جدیدترین LTS نیست؛ پیش از استقرار تازه، چرخهٔ پشتیبانی Ubuntu و سازگاری برنامه را بررسی کنید.
پیش از راهاندازی اولیه Ubuntu
IP، نام کاربر اولیه، پورت SSH و روش ورود را از ارائهدهنده بگیرید. بعضی تصویرهای ابری کاربر sudo دارند و ورود مستقیم root در آنها فعال نیست. root بودن را پیشفرض نگیرید و برای انجام آموزش آن را بیدلیل فعال نکنید.
کنسول بازیابی ارائهدهنده را در دسترس داشته باشید. اثر انگشت کلید میزبان را از مسیر معتبر تطبیق دهید؛ هشدار تغییر کلید را با حذف کورکورانهٔ known_hosts نادیده نگیرید. پنجرهٔ اتصال فعلی را تا پایان آزمون اتصال تازه باز نگه دارید.
حساب مدیریتی روزمره
اگر حساب مناسب ندارید، از نشست مدیریتی موجود یک کاربر بسازید. نام siteadmin فقط نمونه است. طبق راهنمای مدیریت کاربر Ubuntu میتوانید کاربر را به گروه مورد نیاز اضافه کنید:
sudo adduser siteadmin
sudo adduser siteadmin sudo
کاربر دارای sudo اختیار مدیریتی مهمی دارد؛ این عضویت را به حساب سرویس یا کاربر غیرمسئول ندهید. با حساب جدید وارد شوید و در یک نشست جدا بررسی کنید:
id
sudo -v
در نشست root موجود، sudo ابتدای فرمانها لازم نیست. اگر کاربر از قبل وجود دارد، به جای ساخت مجدد، وضعیت و نیاز واقعی دسترسی آن را بررسی کنید.
راهاندازی کلید SSH
کلید خصوصی روی دستگاه خودتان میماند و فقط کلید عمومی به سرور میرود. برای ایجاد کلید تازه روی دستگاه محلی، راهنمای OpenSSH استفاده از Ed25519 را توضیح میدهد:
ssh-keygen -t ed25519
کلید موجود را هنگام پرسش overwrite بازنویسی نکنید. برای کلید تازه مسیر جدا و عبارت عبور مناسب در نظر بگیرید. اگر ورود فعلیِ مجاز به حساب مقصد دارید، فایل عمومی را با مسیر واقعی خود منتقل کنید:
ssh-copy-id -i ~/.ssh/id_ed25519.pub siteadmin@SERVER_IP
SERVER_IP باید جایگزین شود و برای پورت غیراستاندارد گزینهٔ پورت را مطابق اتصال واقعی اضافه کنید. اگر ورود اولیهٔ حساب مقصد ممکن نیست، از کنسول یا ابزار ارائهدهنده برای افزودن همان کلید عمومی استفاده کنید؛ صرفاً برای اجرای این فرمان ورود رمزعبوری را عمومی فعال نکنید.
مالکیت و مجوز پوشهٔ .ssh و فایل authorized_keys باید متعلق به حساب مقصد و محدود باشد. کپی کامل پوشهٔ SSH کاربر root میتواند کلیدهای اضافی و تنظیمات ناخواسته منتقل کند؛ تنها کلید عمومی مورد نظر را اضافه کنید.
آزمون اتصال تازه
از پنجرهٔ دوم با کاربر جدید و کلید مشخص وارد شوید و sudo را امتحان کنید. استفاده از کلید به معنی غیرفعال بودن ورود رمزعبوری نیست؛ این دو تنظیم جدا هستند. هر محدودسازی بعدی باید پس از موفقیت ورود جدید و داشتن مسیر بازیابی انجام شود.
اگر تنظیم SSH را تغییر دادید، فایلهای داخل sshd_config.d را هم در نظر بگیرید. پیش از اعمال تغییر، sudo sshd -t باید موفق شود. تغییر پورت یا حذف روش ورود را همزمان با چند تغییر دیگر انجام ندهید.
فایروال را با پورت واقعی SSH تنظیم کنید
sudo ufw status verbose
sudo ufw app list
در UFW، پروفایل OpenSSH لزوماً پورت سفارشی شما را پوشش نمیدهد. اگر SSH واقعاً روی ۲۲ است، قاعدهٔ نمونه زیر مناسب همان پورت است؛ در غیر این صورت عدد درست را جایگزین کنید:
sudo ufw allow 22/tcp
فقط سرویسهای لازم را مجاز کنید. قبل از فعال کردن UFW، قواعد موجود، فایروال ارائهدهنده و مسیر SSH را بررسی کنید. سپس sudo ufw enable را اجرا و اتصال تازه را آزمایش کنید. در محیط دارای مدیر فایروال دیگر، دو مدیر را بیبرنامه همزمان فعال نکنید.
بهروزرسانی و آمادهسازی خدمت
sudo apt update
sudo apt upgrade
فهرست تغییرات و پیامهای بستهها را بخوانید. اگر راهاندازی مجدد لازم است، زمان آن را با دسترسی کنسول و خدمت برنامهریزی کنید. در پایان زمان سیستم، فضای دیسک، حسابهای مجاز و پورتهای باز را بررسی کنید و سپس وبسرور یا برنامهٔ مورد نیاز را نصب کنید.
مطالعهٔ مرتبط
بازبینی فنی: ۱۴ آبان ۱۴۰۵. تاریخ انتشار اولیه و نشانی قبلی حفظ شدهاند.