هنگام راهاندازی سرور جدید Ubuntu 20.04 ، باید مراحل مهم پیکربندی را به عنوان بخشی از تنظیمات اصلی انجام دهید. این مراحل باعث افزایش امنیت و قابلیت استفاده سرور شما میشود و پایه خوبی برای اقدامات بعدی ایجاد میکند.
مرحله 1 – ورود به سرور به عنوان root
برای ورود به سرور خود ، باید آدرس IP عمومی سرور خود را بدانید. همچنین به رمزعبور یا ( اگر یک کلید SSH را برای احراز هویت نصب کردهاید ) به کلید خصوصی برای حساب کاربر root نیاز دارید. اگر قبلاً به سرور خود وارد نشدهاید،راهنما در مورد نحوه اتصال به Droplets با SSH را مطالعه نمائید، که این روند را به طور کامل پوشش میدهد.
اگر از قبل به سرور خود متصل نیستید، اکنون با استفاده از دستور زیر به عنوان کاربر root وارد سیستم شوید.
(قسمت برجسته شده از دستور را با آدرس IP عمومی سرور خود جایگزین کنید)
ssh root@your_server_ip
در صورت ظاهر شدن هشدار درباره احراز میزبان. اگر از احراز هویت رمز عبور استفاده میکنید،رمز ورود root خود را برای ورود به سیستم وارد کنید. اگر از کلید SSH استفاده میکنید که از عبارت عبور محافظت شده باشد. ممکن است از شما خواسته شود اولین بار که هر جلسه از کلید استفاده میکنید، عبارت عبور را وارد کنید. اگر این اولین بار است که با رمز به سرور وارد میشوید،ممکن است از شما خواسته شود رمز اصلی را نیز تغییر دهید.
درباره root
کاربر root، کاربر مدیر در یک محیط لینوکس است که از امتیازات بسیار گسترده ای برخوردار است.
مرحله بعدی، راه اندازی یک حساب کاربری جدید با امتیازات کاهش یافته، برای استفاده روزمره است. بعداً ، ما به شما یاد خواهیم داد که چگونه فقط در مواقعی که به آنها نیاز دارید امتیازات بیشتری را بدست آورید.
مرحله 2 – ایجاد یک کاربر جدید در سرور
پس از ورود به سرور به عنوان root ، ما آماده هستیم تا حساب کاربری جدید را اضافه کنیم. در آینده، به جای root با این حساب جدید وارد خواهیم شد.
این مثال یک کاربر جدید به نام sammy ایجاد میکند ، اما شما باید نام کاربری را که دوست دارید جایگزین کنید:
adduser mamad
سپس، چند سوال از شما پرسیده میشود.
ابتدا یک رمزعبور قوی وارد کنید و در صورت تمایل،هر یک از اطلاعات اضافی را پر کنید. این مورد ضروری نیست و شما میتوانید هر زمینه ای را که می خواهید رد کنید ، ENTER بزنید.
مرحله 3 – اعطای امتیازات مدیر
اکنون ، ما یک حساب کاربری جدید با امتیازات عادی در سرور داریم. با این حال، ممکن است گاهی اوقات نیاز به انجام کارهای مدیریتی داشته باشیم.
برای جلوگیری از خروج از حساب عادی خود و ورود مجدد به عنوان حساب root، میتوانیم مواردی را که به عنوان superuser یا root استفاده میشوند برای حساب عادی خود تنظیم کنیم. این کار به کاربر عادی اجازه میدهد تا با قرار دادن کلمه sudo قبل از هر دستور، دستوراتی را با امتیازات مدیریتی اجرا کند.
برای افزودن این امتیازات، باید کاربر را به گروه sudo اضافه کنیم. به طور پیش فرض، در اوبونتو 20.04 ، کاربرانی که عضو گروه sudo هستند مجاز به استفاده از دستور sudo هستند.
به عنوان root، این دستور را برای اضافه کردن کاربر جدید خود به گروه sudo اجرا کنید. (نام کاربری برجسته را با کاربر جدید خود جایگزین کنید)
usermod -aG sudo mamad
اکنون، وقتی به عنوان کاربر عادی خود وارد سیستم میشوید، میتوانید قبل از دستورات sudo را تایپ کنید تا عملکردهایی با امتیازات کاربر superuser انجام شود.
مرحله 4 – راه اندازی فایروال پایه
سرور های Ubuntu 20.04 میتوانند از فایروال UFW استفاده کنند تا مطمئن شوند فقط اتصال به سرویسهای خاص مجاز است.
با استفاده از این برنامه میتوانیم به راحتی فایروال پایه را تنظیم کنیم.
برنامه ها میتوانند پروفایل های خود را هنگام نصب در UFW ثبت کنند. این پروفایل ها به UFW اجازه میدهند تا این برنامه ها را بر اساس نام مدیریت کند. OpenSSH ، سرویسی که به ما امکان میدهد اکنون به سرور خود متصل شویم، دارای پروفایلی است که در UFW ثبت شده است.
با تایپ متن زیر، این موارد را مشاهده میکنید:
ufw app list
خروجی:
OutputAvailable applications:
OpenSSH
ما باید اطمینان حاصل کنیم که فایروال اجازه اتصال SSH را میدهد تا بتوانیم دفعه بعد دوباره وارد سیستم شویم.
میتوانیم با تایپ دستور زیر این اتصالات را مجاز کنیم :
ufw allow OpenSSH
پس از آن میتوانیم فایروال را با تایپ دستور زیر فعال کنیم :
ufw enable
y را تایپ کرده و برای ادامه ENTER را فشار دهید. میتوانید مشاهده کنید که اتصال SSH با تایپ دستور زیر هنوز مجاز است:
ufw status
خروجی:
Status: active
To Action From
-- ------ ----
OpenSSH ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
از آنجا که فایروال در حال حاضر تمام اتصالات به غیر از SSH را مسدود کرده است، در صورت نصب و پیکربندی سرویسهای اضافی، باید تنظیمات فایروال را تنظیم کنید تا بتواند به شما امکان ورود به سیستم را بدهد.
برخی از عملیات های معمول UFW را در راهنمای ملزومات UFW میتوانید بیاموزید.
مرحله 5 – امکان دسترسی خارجی برای کاربر عادی شما
اکنون که یک کاربر عادی برای استفاده روزمره داریم، باید مطمئن شویم که میتوانیم مستقیماً به حساب SSH برویم.
توجه: تا زمانی که تأیید نکنید میتوانید با کاربر جدید خود وارد سیستم شوید و از sudo استفاده کنید، توصیه میکنیم که به عنوان root وارد سیستم شوید. به این ترتیب، اگر مشکلی دارید، میتوانید عیب یابی کرده و تغییرات اساسی را به عنوان root انجام دهید.
روند پیکربندی دسترسی SSH برای کاربر جدید شما بستگی به این دارد که آیا حساب root سرور شما از رمز عبور یا کلیدهای SSH برای احراز هویت استفاده می کند.
اگر حساب root از احراز هویت رمز عبور استفاده می کند
اگر با استفاده از رمز عبور وارد حساب اصلی خود شدید، تأیید اعتبار رمز عبور برای SSH فعال است. با باز کردن ترمینال جدید و استفاده از SSH با نام کاربری جدید میتوانید به حساب کاربری جدید خود SSH وارد کنید.
ssh mamad@your_server_ip
پس از وارد کردن رمز ورود کاربر عادی خود، به سیستم وارد خواهید شد. به یاد داشته باشید، اگر لازم است یک دستور با امتیازات مدیریتی اجرا کنید، قبل از آن sudo را تایپ کنید:
sudo command_to_run
هنگام استفاده از sudo برای اولین بار در هر جلسه، از شما رمز ورود کاربر عادی خود خواسته میشود.
برای افزایش امنیت سرور خود، توصیه میکنیم به جای استفاده از احراز هویت رمز عبور، کلیدهای SSH را تنظیم کنید. برای یادگیری نحوه پیکربندی احراز هویت مبتنی بر کلید، راهنمای ما را در مورد تنظیم کلیدهای SSH در اوبونتو 20.04 دنبال کنید.
اگر حساب Root از تأیید اعتبار کلید SSH استفاده میکند
اگر با استفاده از کلیدهای SSH وارد حساب root خود شدید، تأیید اعتبار رمز عبور برای SSH غیرفعال است. برای ورود با موفقیت باید یک کپی از کلید عمومی محلی خود به پرونده ssh/authorized_keys. /~ کاربر جدید اضافه کنید.
از آنجا که کلید عمومی شما از قبل در پرونده ssh/authorized_keys. /~ در سرور است، میتوانیم در session موجود خود، آن فایل و ساختار دایرکتوری را در حساب کاربری جدید خود کپی کنیم.
ساده ترین راه برای کپی کردن پروندهها با مالکیت و مجوزهای صحیح، با دستور rsync است. این دستور، پوشه ssh. کاربر root را کپی میکند، مجوزها را حفظ میکند و صاحبان پرونده را اصلاح میکند.
قسمتهای برجسته شده دستور زیر را برای مطابقت با نام کاربر عادی خود تغییر دهید:
توجه: هنگام استفاده از rsync ، مطمئن شوید که پوشه منبع (ssh. /~) شامل [ / ] انتهایی نیست (بررسی کنید که از /ssh. /~ استفاده نمیکنید).
اگر به طور تصادفی [ / ] انتهایی را به دستور اضافه کنید، rsync به جای کپی کردن کل ساختار دایرکتوری ssh. /~ ، محتوای دایرکتوری ssh. /~ حساب root را در فهرست اصلی کاربر sudo کپی میکند. پرونده ها در مکان اشتباهی قرار خواهند گرفت و SSH قادر به یافتن و استفاده از آنها نخواهد بود.
rsync --archive --chown=mamad:mamad ~/.ssh /home/mamad
اکنون، یک ترمینال جدید در دستگاه محلی خود باز کرده و از SSH با نام کاربری جدید خود استفاده کنید:
ssh mamad@your_server_ip
شما باید بدون استفاده از رمز عبور وارد حساب کاربری جدید شوید. به یاد داشته باشید، اگر لازم است یک دستور با امتیازات اداری اجرا کنید ، sudo را قبل از آن تایپ کنید:
sudo command_to_run
هنگام استفاده از sudo برای اولین بار در هر session، از شما رمز ورود کاربر عادی خواسته میشود.
اکنون شما یک پایه محکم برای سرور خود دارید. میتوانید هر یک از نرم افزارهای مورد نیاز خود را بر روی سرور خود نصب کنید.
منبع: https://www.digitalocean.com/community/tutorials/initial-server-setup-with-ubuntu-20-04
جهت مشاهده آموزشهای دیگر ، صفحه آموزشگاه را مشاهده نمائید.