راه اندازی اولیه سرور با اوبونتو 20.04

هنگامی که برای اولین بار یک سرور اوبونتو 20.04 جدید ایجاد می کنید، باید برخی از مراحل پیکربندی مهم را به عنوان بخشی از راه اندازی اولیه انجام دهید. این مراحل امنیت و قابلیت استفاده از سرور شما را افزایش می دهد و پایه ای محکم برای اقدامات بعدی به شما می دهد.

مرحله 1 - وارد شدن به عنوان root

برای ورود به سرور خود، باید آدرس IP عمومی سرور خود را بدانید. شما همچنین به رمز عبور یا - اگر یک کلید SSH برای احراز هویت نصب کرده اید - به کلید خصوصی برای حساب کاربر اصلی نیاز دارید. اگر قبلاً وارد سرور خود نشده‌اید، ممکن است بخواهید راهنمای ما را در مورد نحوه اتصال به قطره‌ها از طریق SSH دنبال کنید، که این فرآیند را به طور مفصل پوشش می‌دهد.

اگربه سرور خود متصل نیستید، اکنون به عنوان کاربر اصلی با استفاده از دستور زیر وارد شوید (بخش your_server_ip دستور را با آدرس IP عمومی سرور خود جایگزین کنید):

 

ssh root@your_server_ip

 

اخطار مربوط به اعتبار میزبان را در صورت ظاهر شدن بپذیرید. اگر از احراز هویت رمز عبور استفاده می‌کنید، رمز عبور ریشه خود را برای ورود به سیستم وارد کنید. اگر از یک کلید SSH استفاده می‌کنید که با عبارت عبور محافظت می‌شود، ممکن است اولین باری که در هر جلسه از کلید استفاده می‌کنید، از شما خواسته شود که عبارت عبور را وارد کنید. اگر این اولین باری است که با رمز عبور وارد سرور می شوید، ممکن است از شما خواسته شود رمز عبور ریشه را تغییر دهید.

درباره روت

کاربر ریشه، کاربر اداری در یک محیط لینوکس است که دارای امتیازات بسیار گسترده است. به دلیل امتیازات بالای حساب root، برای از استفاده منظم از آن توصیه به عدم استفاده می شوید. این به این دلیل است که اکانت ریشه قادر است تغییرات بسیار مخربی را حتی به صورت تصادفی ایجاد کند.

مرحله بعدی راه اندازی یک حساب کاربری جدید با امتیازات کاهش یافته برای استفاده روزانه است. بعداً به شما نشان خواهیم داد که چگونه به طور موقت امتیازات بیشتری را برای مواقعی که به آنها نیاز دارید به دست آورید.

مرحله 2 - ایجاد یک کاربر جدید

هنگامی که به عنوان root وارد سیستم شدید، می توانید حساب کاربری جدید را اضافه کنید. در آینده، به جای root با این حساب جدید وارد می‌شویم.

این مثال یک کاربر جدید به نام sammy ایجاد می کند، اما شما باید آن را با نام کاربری که دوست دارید جایگزین کنید:

 

adduser sammy

 

از شما چند سوال پرسیده می شود که با رمز عبور حساب شروع می شود.

یک رمز عبور قوی را وارد کنید و در صورت تمایل، هر یک از اطلاعات اضافی را در صورت تمایل وارد کنید. این مورد الزامی نیست و فقط می توانید در هر قسمتی که می خواهید از آن رد شوی کلید اینتر را فشار دهید.

مرحله 3 - اعطای امتیازات اداری

اکنون یک حساب کاربری جدید با امتیازات حساب معمولی داریم. با این حال، ممکن است گاهی اوقات نیاز به انجام وظایف اجرایی داشته باشیم.

برای اینکه مجبور نباشیم از کاربر معمولی خود خارج شویم و دوباره به عنوان حساب ریشه وارد شویم، می‌توانیم امتیازات سوپرکاربر یا root را برای حساب عادی خود تنظیم کنیم. این به کاربر عادی اجازه می دهد تا با قرار دادن کلمه sudo قبل از یک دستور, دستورات با امتیازات اجرایی را اجرا کند.

برای افزودن این امتیازات به کاربر جدید خود، باید کاربر را به گروه sudo اضافه کنیم. به طور پیش فرض، در اوبونتو 20.04، کاربرانی که عضو گروه sudo هستند، مجاز به استفاده از دستور sudo هستند.

به عنوان root، این دستور را اجرا کنید تا کاربر جدید خود را به گروه sudo اضافه کنید (نام کاربری برجسته شده را با کاربر جدید جایگزین کنید):

 

usermod -aG sudo sammy

 

اکنون، هنگامی که به عنوان کاربر معمولی خود وارد شده اید، می توانید sudo را قبل از دستورات تایپ کنید تا آنها را با امتیازات superuser اجرا کنید.

مرحله 4 - راه اندازی یک فایروال اساسی

سرورهای اوبونتو 20.04 می توانند از فایروال UFW استفاده کنند تا مطمئن شوند که فقط اتصالات به برخی خدمات مجاز است. ما می توانیم با استفاده از این برنامه یک فایروال اولیه راه اندازی کنیم.

 

توجه: اگر سرورهای شما بر روی DigitalOcean اجرا می شوند، می توانید به صورت اختیاری از فایروال های DigitalOcean Cloud به جای فایروال UFW استفاده کنید. توصیه می کنیم در هر بار فقط از یک فایروال استفاده کنید تا از قوانین متناقضی که ممکن است اشکال زدایی آنها دشوار باشد جلوگیری کنید.

 

برنامه ها می توانند پس از نصب پروفایل های خود را در UFW ثبت کنند. این پروفایل ها به UFW اجازه می دهد تا این برنامه ها را با نام مدیریت کند. OpenSSH، سرویسی که به ما امکان می دهد اکنون به سرور خود متصل شویم، دارای یک نمایه ثبت شده در UFW است.

می توانید این را با تایپ کردن دستور زیر ببینید:

 

ufw app list

 

Output 
Available applications:
 OpenSSH

 

ما باید مطمئن شویم که فایروال به ما اجازه اتصالات به SSH اجازه می دهد تا بتوانیم دفعه بعد دوباره وارد شویم. ما می توانیم این اتصالات را با تایپ کردن دستور زیر مجاز کنیم:

 

ufw allow OpenSSH

 

پس از آن، می توانیم فایروال را با تایپ کردن فعال کنیم:

 

ufw enable

 

y را تایپ کرده و برای ادامه، ENTER را فشار دهید. می توانید ببینید که اتصالات SSH همچنان با تایپ کردن مجاز هستند:

 

ufw status

 

Output
Status: active

To                         Action      From
--                         ------      ----
OpenSSH                    ALLOW       Anywhere
OpenSSH (v6)               ALLOW       Anywhere (v6)

 

از آنجایی که فایروال در حال حاضر همه اتصالات به جز SSH را مسدود می کند، اگر سرویس های اضافی را نصب و پیکربندی کنید، باید تنظیمات فایروال را تنظیم کنید تا به ترافیک اجازه ورود داده شود. می توانید برخی از عملیات رایج UFW را در راهنمای UFW Essentials ما بیاموزید.

مرحله 5 - فعال کردن دسترسی خارجی برای کاربر معمولی شما

اکنون که یک کاربر معمولی برای استفاده روزانه داریم، باید مطمئن شویم که می‌توانیم مستقیماً SSH را وارد حساب کنیم.

 

توجه: توصیه می‌کنیم تا زمانی که تأیید کنید می‌توانید وارد سیستم شوید و از sudo با کاربر جدید خود استفاده کنید، به‌عنوان روت وارد شوید. به این ترتیب در صورت داشتن مشکل می توانید عیب یابی کنید و تغییرات لازم را به صورت روت انجام دهید. اگر از DigitalOcean Droplet استفاده می کنید و با اتصال ریشه SSH خود مشکل دارید، می توانید با استفاده از Recovery Console به Droplets دسترسی پیدا کنید.

 

فرآیند پیکربندی دسترسی SSH برای کاربر جدید شما بستگی به این دارد که آیا حساب ریشه سرور شما از رمز عبور یا کلیدهای SSH برای احراز هویت استفاده می کند.

اگر حساب اصلی از احراز هویت رمز عبور استفاده می کند
اگر با استفاده از رمز عبور وارد حساب اصلی خود شده اید، احراز هویت رمز عبور برای SSH فعال می شود. می توانید با باز کردن یک جلسه ترمینال جدید و استفاده از SSH با نام کاربری جدید خود، به حساب کاربری جدید خود SSH کنید:

 

ssh sammy@your_server_ip

 

پس از وارد کردن رمز عبور کاربر معمولی خود، وارد سیستم خواهید شد. به یاد داشته باشید، اگر نیاز به اجرای دستوری با امتیازات مدیریتی دارید، sudo را قبل از آن به صورت زیر تایپ کنید:

 

sudo command_to_run

 

هنگام استفاده از sudo برای اولین بار در هر جلسه (و به صورت دوره ای پس از آن) از شما خواسته می شود رمز عبور کاربر معمولی خود را وارد کنید.

برای افزایش امنیت سرور خود، اکیدا توصیه می کنیم به جای استفاده از احراز هویت رمز عبور، کلیدهای SSH را تنظیم کنید. راهنمای ما را در مورد تنظیم کلیدهای SSH در اوبونتو 20.04 دنبال کنید تا نحوه پیکربندی احراز هویت مبتنی بر کلید را بیاموزید.

اگر حساب اصلی از احراز هویت کلید SSH استفاده می کند

اگر با استفاده از کلیدهای SSH وارد حساب کاربری اصلی خود شده اید، احراز هویت رمز عبور برای SSH غیرفعال است. برای ورود با موفقیت باید یک کپی از کلید عمومی محلی خود را به فایل ~/.ssh/authorized_keys کاربر جدید اضافه کنید.

از آنجایی که کلید عمومی شما از قبل در فایل ~/.ssh/authorized_keys حساب ریشه روی سرور قرار دارد، می‌توانیم آن فایل و ساختار دایرکتوری را در حساب کاربری جدید خود در جلسه فعلی خود کپی کنیم.

ساده ترین راه برای کپی کردن فایل ها با مالکیت و مجوزهای صحیح، دستور rsync است. این کار دایرکتوری .ssh کاربر ریشه را کپی می کند، مجوزها را حفظ می کند و صاحبان فایل را تغییر می دهد، همه در یک دستور واحد. مطمئن شوید که بخش های هایلایت شده دستور زیر را برای مطابقت با نام کاربر معمولی خود تغییر دهید:

 

توجه: دستور rsync با منابع و مقاصدی که با اسلش انتهایی خاتمه می‌یابند متفاوت از موارد بدون اسلش آخر رفتار می‌کند. هنگام استفاده از rsync در زیر، مطمئن شوید که دایرکتوری منبع (~/.ssh) دارای یک اسلش انتهایی نباشد (بررسی کنید تا مطمئن شوید از ~/.ssh/ استفاده نمی کنید).

اگر تصادفاً یک اسلش انتهایی به دستور اضافه کنید، rsync به جای کپی کردن کل ساختار دایرکتوری ~/.ssh، محتویات دایرکتوری ~/.ssh حساب ریشه را در فهرست اصلی کاربر sudo کپی می کند. فایل ها در مکان اشتباهی قرار می گیرند و SSH نمی تواند آنها را پیدا و استفاده کند.

 

rsync --archive --chown=sammy:sammy ~/.ssh /home/sammy

 

اکنون، یک جلسه ترمینال جدید در دستگاه محلی خود باز کنید و از SSH با نام کاربری جدید خود استفاده کنید:

 

ssh sammy@your_server_ip

 

شما باید بدون استفاده از رمز عبور وارد حساب کاربری جدید شوید. به یاد داشته باشید، اگر نیاز به اجرای دستوری با امتیازات مدیریتی دارید، قبل از آن sudo را به صورت زیر تایپ کنید:

 

sudo command_to_run

 

هنگام استفاده از sudo برای اولین بار در هر جلسه (و به صورت دوره ای پس از آن) از شما خواسته می شود رمز عبور کاربر معمولی خود را وارد کنید.

از اینجا به کجا برویم؟

در این مرحله، شما یک پایه محکم برای سرور خود دارید. اکنون می توانید هر نرم افزاری را که نیاز دارید بر روی سرور خود نصب کنید.

 

منبع DigitalOcean

۴۹۸
۱۴۰۲/۲/۲۷