زیرساخت ابری هایو
[dark-light-mode-switch]

تنظیمات اولیه سرور Ubuntu 20.04

فهرست مطالب

وقتی یک سرور ابونتو 20.04 جدید راه اندازی میکنید باید یکسری تنظیمات مهم اولیه رو برای راه اندازی استاندارد سرور انجام بدید. تو این آموزش قرار قدم به قدم بهتون بگم که چه کارهایی رو باید برای کارایی و امنیت بهتر برای راه اندازی ubuntu 20.04 انجام بدید.

بسیاری از اوقات تنظیمات پیش فرضی که همراه سیستم عامل ارائه میشوند،

بالاترین امنیتی را که سرور شما باید داشته باشد را ارائه نمی دهد.

در طول این مقاله، نکات امنیتی را در اختیار شما قرار می دهیم تا بتوانید از یک سرور امن لذت ببرید.

قدم 1 – ورود به سرور با یوزر root

برای ورود به سرور، شما علاوه بر آدرس آیپی سرورتون نیاز به پسورد برای ورود و یا اگر SSH Key نصب کرده باشید نیاز به کلید خصوصی (Private key) برای یوزر root دارید.

اگر هنوز وارد سرور نشدید، همین الان با کمک دستور زیر به عنوان کاربر root وارد سرور بشید.

نکته: به جای عبارت your_server_ip آدرس آیپی سرورتون رو وارد کنید.

ssh root@your_server_ip

پیغام اخطاری که مربوط به تایید امنیتی هاست هست رو تایید کنید.

اگر رمزی برای ورود دارید اون رو وارد کنید.

مدنظر داشته باشید که اگر از SSH Key استفاده میکنید باید passpharse تون رو برای اولین ورود در هر session وارد کنید.

اگر این اولین باره که وارد سرور میشید احتمالا از شما خواسته میشه که رمز root رو برای امنیت بیشتر تغییر بدید. این کار رو حتما انجام بدید.

کاربر root در سرور چیست؟

کاربر root به عنوان مدیر اصلی (administrator) در لینوکس شناخته میشه که تمام دسترسی های لازم رو داره.

بخاطر همین دسترسی های زیادی که اکانت root تو سرور داره، معمولا یک کاربر جدا برای کار با سرور ساخته میشه.

چون حساب root در سرور میتونی بسیار خطرناک باشه و اگر حواستون نباشه میتونه تغییرات سرور خراب کنی رو اعمال بکنه!

قدم 2 – ساخت یک کاربر جدید در سرور اوبونتو 20.04

وقتی با یوزر روت وارد سرور شدید، میتونید یک اکانت جدید تو سرور بسازید.

تا بتونیم در آینده به جای یوزر روت با اکانت دیگه ای وارد بشیم که خطرات احتمالی کمتر بشن.

با کمک تکه کد زیر میتونید یک یوزر جدید در سرور ابونتو 20.04 بسازید:

adduser hadi

نکته: به جای hadi نام کاربری مورد نظر خودتون رو بنویسید.

بعد از زدن این دستور یکسری سوالات مثل رمز اکانت و… ازتون پرسیده میشه.

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

به جزء رمز یوزر باقی موارد ضروری نیستن و میتونید با زدن ENTER این موارد رو رد کنید.

قدم 3 – دادن دسترسی Administrator به یوزر جدید در ابونتو 20.04

حالا ما یه یوزر جدید با دسترسی های معمولی داریم. اما خب بعضی وقت ها نیاز هست که دسترسی های مدیر رو داشته باشیم.

برای اینکه هربار هی کاربر رو عوض نکنیم میتونیم دسترسی هایی که superuser یا root دارن رو هم به یوزر معمولی خودمون بدیم.

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

برای اینکه دسترسی ها رو به کاربر در سرور بدیم باید، اکانتی که ساختیم رو به گروه sudo اضافه کنیم.

برای این کار به عنوان کاربر root وارد سرور بشید (تا دسترسی لازم رو داشته باشیم) و بعد دستور زیر رو اجرا کنید:

usermod -aG sudo hadi

قاعدتا جای عبارت hadi باید نام کاربری یوزر جدید رو بنویسید.

حالا اگر با اکانت جدیدی که تو سرور ساختید وارد بشید میتونید با اضافه کردن sudo به اول کامند ها دستورات superuser رو هم اجرا کنید.

قدم 4 – کاربر روت ( root ) را ایمن کنید

این مورد باید اولین کاری باشد که هنگام راه اندازی و نصب اوبونتو در سرور جدید باید انجام دهید.

به طور معمول، تنظیم رمز عبور برای کاربر روت در طول فرآیند نصب انجام می شود.

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

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

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

لطفاً قبل از قفل کردن کاربر ریشه، مطمئن شوید که قبلاً کاربر سرپرست دیگری در سیستم با امتیازات root یا « sudo » دارید.

اگر قبلا رمز قوی انتخاب نکردید ابتدا رمز عبوری برای root تنظیم کنید، پسورد را به شکل زیر میتوانید تنظیم کنید.

sudo passwd root

اکنون می‌توانیم با قفل کردن رمز عبور با کاراکتر “ -l ” مانند زیر، اکانت root را قفل کنیم.

این کار از استفاده از کاربر روت جلوگیری می کند.

sudo passwd -l root

برای باز کردن قفل اکانت روت، دوباره کافیست رمز عبور root را تغییر دهید تا فعال شود.

sudo passwd root

قدم 5 – فعال سازی دسترسی خارجی برای کاربر جدید

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

نکته: تا وقتی که مطمئن بشید که میتونید با یوزر جدید وارد بشید و از sudo استفاده کنید، پیشنهاد میکنیم همچنان با یوزر root وصل بمونید.

تو این حالت اگر هر مشکلی پیش اومد میتونید تغییرات لازم برای حل مشکل رو با یوزر root انجام بدید.

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

مراحل تنظیم کردن دسترسی SSH برای کاربر جدید به این بستگی داره که برای ورود با کاربر root از پسورد استفاده میکنید یا SSH Key.

اگر برای کاربر روت از پسورد استفاده میکنید

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

ssh hadi@ip-e-server-e-shoma

بعد از وارد کردن دستور بالا برای کاربر جدیدتون رمزتون رو وارد کنید و Enter رو بزنید. دقت کنید برای امنیت بیشتر وقتی رمز رو تایپ میکنید چیزی دیده نمیشه.

از این به بعد میتونید با این یوزر به سرور وصل بشید و هرموقع نیاز به اجرای دستوراتی داشتید که نیاز به سطح دسترسی administrator داشت می تونید از Sudo قبل از دستورتون استفاده کنید.

sudo dastoore_shoma

وقتی برای اولین بار در هر ورود بخواید از sudo استفاده کنید یکبار دیگه رمز کاربری تون رو باید وارد کنید.

برای افزایش امنیت سرور تون، ما به شدت پیشنهاد میکنیم که به جای تایید اعتبار با پسورد از SSH Key استفاده کنید.

به زودی آموزشی کامل برای تنظیم SSH Key برای Ubuntu 20.04 میزاریم.

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

اگر برای ورود به سرور از SSH Key استفاده میکنید، پس تایید اعتبار با پسورد غیرفعال هست. برای همین لازمه که یه کپی از کلید عمومی یا local public key تو فولدر یوزر جدید و آدرس زیر بگیرید:

~/.ssh/authorized_keys

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

راحت ترین روش برای کپی کردن فایل با دسترسی های درست استفاده از دستور rsync هست.

این دستور فولدر .ssh روت رو بدون تغییر در سطح دسترسی فایل ها و… کپی میکنه به هرجایی که میخواید.

با دستور زیر میتونید این کار رو انجام بدید، دقت کنید که به جای hadi اسم یوزری که برای خودتون ساختید رو بنویسید:

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

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

حالا میتونید با یوزر جدید و ssh key به سرور وصل بشید.

 

قدم 6 – یک دسترسی ایمن به SSH ایجاد کنید

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

ما میتوانیم با انجام کار زیر دسترسی به کاربر روت از طریق ssh را محدود کنیم.

شما فقط باید از کاربر root برای اجرای دستورات سطح ریشه یا مدیریت روی سرور استفاده کنید.

اما هنوز از طریق ssh میتوان از یک کاربر عادی به کاربر روت جابه جا شد که شما باید جلوی این کار را بگیرید.

ابتدا وارد سرور بشوید و به کاربر روت سویچ کیند.

ssh hadi@IP

پس از ورود می توانید بادستور زیر از کاربر “hadi” به کاربر روت سویچ کنید.

sudo su

با انجام برخی تغییرات در تنظیمات فایل sshd_config میتوانید ورود به کاربر روت را از طریق ssh غیر فعال کنید.

برای اینکه دستورات زیر با دسترسی روت در ترمینال ابونتو وارد کنید.

nano /etc/ssh/sshd_config

در این فایل بخش Authentication را پیدا کنید و به دنبال خط زیر بگردید:

PermitRootLogin yes

فقط آن را به این تغییر دهید:

PermitRootLogin no

برای خروج از ویرایشگر متن Ctrl + X را بزنید و Y را وارد کنید و در آخر Enter را بزنید

برای اعمال تغییرات، باید سرویس SSH را مجدداً راه اندازی کنید:

/etc/init.d/ssh restart

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

هم اکنون نباید اجازه ورود به کاربر روت را به شما بدهد.

این کار امنیت بسیار بیشتری را برای سرور شما فراهم می کند زیرا به کاربر دیگری (که دیگران نمی دانند و احتمالاً نمی توانند حدس بزنند) نیاز دارد تا از طریق SSH به سرور  دسترسی پیدا کند.

در اینجا هکر ها باید 2 متغیر را برای دسترسی به سرور بدانند، اولی نام کاربر است و دومی رمز عبور آن، ولی اگر از کاربر روت استفاده کنید برای ورود هکر ها یک مورد را حذف کرده اید، زیرا اکثر میدانند یک کاربر روت وجود دارد.

همچنین موارد زیر را نیز می توان تغییر داد تا دسترسی SSH ایمن تر شود.

nano /etc/ssh/sshd_config
PermitEmptyPasswords no

اطمینان حاصل کنید که دستورالعمل بالا روی ” خیر ” تنظیم شده است تا کاربران بدون رمز عبور نتوانند وارد سیستم شوند.

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

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

قدم 7 – در سرور فایروال نصب کنید

به‌طور پیش‌فرض، نسخه‌های جدید اوبونتو باید دارای فایروال بدون عارضه یا UFW باشند.

با دستور زیر می توانید بررسی کنید که آیا UFW  روی سرور نصب شده است:

sudo ufw status

که وضعیت فعال یا غیرفعال را برمی گرداند. اگر نصب نیست می توانید آن را با دستور زیر نصب کنید:

sudo apt-get install ufw

در اینجا باید فهرستی از اجزایی که نیاز به دسترسی به سرور شما دارند را در نظر بگیرید.

  • آیا دسترسی SSH لازم است؟
  • آیا ترافیک وب مورد نیاز است؟

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

در این مثال ما اجازه دهید دسترسی به SSH و وب را باز می کنیم.

sudo ufw allow ssh

sudo ufw allow http

همچنین با این دستورات میتوان پورت ها را نیز باز کنید.

sudo ufw allow 80/tcp

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

sudo ufw enable

این ممکن است اتصال SSH فعلی را قطع کند اگر به این ترتیب که به شما گفتیم دستورات را مرحله به مرحله وارد کردید مشکلی برای تان پیش نخواهد آمد.

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

قدم 8 – باید آنچه را که میخواهید انجام دهید را بدانید

مهم است که فکر کنید برای چه کاری قصد استفاده از سرور خود را خواهید  داشت.

  • آیا قرار است فقط یک سرور فایل باشد؟
  • یا وب سرور؟
  • یا یک وب سرور که نیاز به ارسال ایمیل از طریق فرم ها  را دارد؟

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

بهتر است سرور را فقط با خدماتی که نیاز دارید بسازید.

هنگامی که در سرور سرویس های اضافی را قرار می‌دهید که مورد نیاز نیستند، ممکن است با خطر قدیمی شدن نرم افزار مواجه شوید که تنها  باعث این میشود که آسیب‌پذیری بیشتری را به سرور خود تحمیل کنید.

هر مؤلفه و سرویسی را که در سرور ابونتو اجرا می کنید باید به عنوان بهترین روش ایمن شود.

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

قدم 9 – سیستم عامل سرور را به روز نگه دارید

شما باید مطمئن شوید که سرور شما با آخرین آپدیت های امنیتی به روز می ماند.

در حالی که یک سرور می تواند برای مدتی بدون تعمیر و نگهداری کار کند و مشکلی پیش نیاید،

ولی ممکن است باگی در آن وجود داشته باشد که هکر ها از طریق آن بتوانند به سرور نفوذ کنند و تنها راه در امان ماندن از آن ها به روز نگه داشتن سیستم است.

به‌روزرسانی‌های منظم در سرور اوبونتو می‌تواند این تضمین را به شما بدهد که سیستم امن و به‌روز باقی می‌ماند.

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

sudo apt-get update

در حالی که نصب سرور اوبونتو یک راه عالی برای یادگیری نحوه کار با لینوکس است، اما ایده خوبی است که آن را در یک محیط امن یاد بگیرید.

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

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

زمانی که سرور اوبونتو را نصب می کنید، باید پنج مورد بالا را در نظر داشته باشید.

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

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

همچنین هرگز از کمک گرفتن از دیگران نترسید!

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

کارکنان پشتیبانی ما همیشه در 24 ساعت شبانه روز، 7 روز هفته و 365 روز سال برای کمک به مشکلات سرور ابری شما در دسترس هستند.

ما از طریق سیستم های تیکتینگ در پنل کاربری خود، از طریق ایمیل پشتیبانی ما:

support@haio.ir

از طریق تلفن:  ۵۶۲۱۸۴۳۹ – ۰۲۱

چت آنلاین یا هر روشی که شما ترجیح می دهید در دسترس شما هستیم.

ما برای شما سخت کار می کنیم تا بتوانید آرامش داشته باشید.

رایگان آموزش ببین - آموزش کار با سرویس های هایو

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *