رفتن به محتوای اصلی
iServer24 | ارائه‌کننده سرورهای ابری و اختصاصی
راه‌اندازی اولیه سرور Ubuntu 20.04

راه‌اندازی اولیه سرور Ubuntu 20.04

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

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

  1. ساخت یک کاربر غیر روت با دسترسی sudo

  2. فعال‌سازی احراز هویت SSH با کلید (به‌جای پسورد)

  3. فعال کردن فایروال

این سه مرحله، پایه امنیت سرور شما را تشکیل می‌دهند و جلوی حملاتی مثل brute-force و دسترسی غیرمجاز را می‌گیرند.

نصب پیش‌فرض Ubuntu معمولاً دسترسی مستقیم روت دارد که از نظر امنیتی بسیار پرریسک است. سرورهای تازه نصب‌شده، هدف اصلی ربات‌هایی هستند که اینترنت را برای تنظیمات پیش‌فرض و پسوردهای ضعیف اسکن می‌کنند. خوشبختانه کل این تنظیمات فقط حدود ۱۰ تا ۱۵ دقیقه زمان می‌برد اما سطح حمله را به‌شدت کاهش می‌دهد.


پیش‌نیازها

قبل از شروع، مطمئن شوید که موارد زیر را دارید:

  • یک سرور Ubuntu 20.04 یا بالاتر

  • آی‌پی عمومی سرور

  • دسترسی SSH (پسورد روت یا کلید خصوصی SSH)

  • یک ترمینال روی سیستم خودتان

⚠️ تا زمانی که ورود کاربر جدید و sudo را تست نکرده‌اید، سشن روت را نبندید.


مرحلههدف
۱. ورود با کاربر rootاتصال اولیه به سرور تازه ساخته‌شده
۲. ساخت کاربر جدیدجلوگیری از استفاده‌ی مداوم از root
۳. دادن دسترسی sudoاجازه‌ی اجرای دستورات مدیریتی به کاربر جدید
۴. فعال‌سازی فایروال UFWمحدود کردن دسترسی شبکه‌ای به سرور
۵. فعال‌سازی SSH برای کاربر جدیدامکان اتصال امن بدون نیاز به root
۶. امن‌سازی بیشتر SSHکاهش سطح حمله روی سرویس SSH
۷. امنیت بیشتر سرورآپدیت خودکار، تایم‌زون و Fail2Ban

مرحله ۱ — ورود به سرور با کاربر root

ssh root@IP_SERVER
برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید

اگر اولین بار است وصل می‌شوید، پیام هشدار fingerprint طبیعی است. yes بزنید.

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


مرحله ۲ — ساخت کاربر جدید

adduser username
برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید

یک پسورد قوی انتخاب کنید. اطلاعات اضافی اختیاری هستند.

بررسی ایجاد کاربر:

id username
برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید

مرحله ۳ — دادن دسترسی sudo

usermod -aG sudo username
برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید

اکنون کاربر جدید می‌تواند با sudo دستورات مدیریتی اجرا کند.

تست:

2 خط
su - username
sudo whoami
برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید

خروجی باید root باشد.


مرحله ۴ — فعال‌سازی فایروال (UFW)

نمایش اپلیکیشن‌های شناخته‌شده:

ufw app list
برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید

اجازه دادن به SSH:

ufw allow OpenSSH
برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید

فعال کردن فایروال:

ufw enable
برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید

بررسی وضعیت:

ufw status
برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید

برای سرور وب:

2 خط
ufw allow 80/tcp
ufw allow 443/tcp
برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید

مرحله ۵ — فعال‌سازی دسترسی SSH برای کاربر جدید

اگر ورود روت با پسورد بوده:

فقط این دستور کافی است:

ssh username@IP_SERVER
برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید

اگر ورود روت با کلید SSH بوده:

کپی کلیدها:

rsync --archive --chown=username:username ~/.ssh /home/username
برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید

بررسی:

ls -la /home/username/.ssh/
برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید

مرحله ۶ — امن‌سازی بیشتر SSH (اختیاری ولی توصیه‌شده)

ویرایش فایل:

sudo nano /etc/ssh/sshd_config
برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید

تغییرات:

2 خط
PasswordAuthentication no
PermitRootLogin no
برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید

بررسی خطا:

sudo sshd -t
برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید

ری‌استارت SSH:

sudo systemctl restart sshd
برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید

مرحله ۷ — امنیت بیشتر سرور

فعال‌سازی آپدیت خودکار امنیتی

3 خط
sudo apt update
sudo apt install unattended-upgrades
sudo dpkg-reconfigure -plow unattended-upgrades
برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید

تنظیم تایم‌زون

sudo timedatectl set-timezone Asia/Tehran
برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید

نصب Fail2Ban

3 خط
sudo apt install fail2ban
sudo systemctl enable fail2ban
sudo systemctl start fail2ban
برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید

نکات مهم امنیتی

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

  • همیشه SSH Key را جایگزین پسورد کنید

  • قبل از فعال کردن فایروال، SSH را Allow کنید

  • روی سرورهای واقعی، ورود روت را کامل ببندید


اگر از سرور قفل شدید

از کنسول ریکاوری هاستینگ وارد شوید و موارد زیر را چک کنید:

3 خط
ufw status
systemctl status sshd
sshd -t
برای کپی کردن کد، روی دکمه کپی در بالا کلیک کنید

جمع‌بندی

بعد از انجام این مراحل، سرور شما:

  • کاربر امن غیرروت دارد

  • فایروال فعال دارد

  • SSH امن شده

  • آپدیت امنیتی خودکار دارد

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

زیرساخت ابری برای اجرای همین آموزش

سرور ابری ساعتی را برای Docker، Ubuntu و DevOps راه‌اندازی کنید — پرداخت به میزان مصرف یا ماهانه.

ادامه یادگیری:Docker·Ubuntu·VPS