📄 محتوای کامل
امنیت سرور لینوکس یکی از مهم ترین دغدغه های مدیران سایت، شرکت ها، هاستینگ ها و کسب وکارهای آنلاین است. اگر سرور شما ایمن نباشد، ممکن است در معرض حملات هکری، باج افزار، بدافزار، سرقت اطلاعات و قطعی سرویس قرار بگیرد.
خبر خوب این است که با اجرای چند اقدام ساده اما حرفه ای، می توانید در کمتر از ۱ ساعت امنیت سرور لینوکسی خود را چند برابر کنید.
در این مقاله از نگارنوین، به صورت کاملاً عملی و مرحله به مرحله یاد می گیرید چگونه سرور Ubuntu / Debian / CentOS / AlmaLinux را ایمن کنید.
تصویر شاخص مقاله
افزایش امنیت سرور لینوکس
چرا امنیت سرور لینوکس مهم است؟
اگر امنیت سرور ضعیف باشد، خطرات زیر شما را تهدید می کند:
- هک شدن سایت
- پاک شدن اطلاعات
- نفوذ به دیتابیس
- ارسال اسپم از سرور
- افت سئو سایت
- کند شدن سرور
- مسدود شدن IP
قبل از شروع (بسیار مهم)
قبل از هر تغییری، از سرور بکاپ بگیرید:
rsync -a /home /backup/
یا Snapshot تهیه کنید.
۱. بروزرسانی کامل سیستم عامل و پکیج ها
اولین قدم برای امنیت، آپدیت کردن سیستم است.
Ubuntu / Debian
sudo apt update && sudo apt upgrade -y
sudo reboot
CentOS / AlmaLinux
sudo yum update -y
sudo reboot
✅ بسیاری از حفره های امنیتی فقط با آپدیت رفع می شوند.
۲. تغییر پورت SSH از ۲۲ به پورت دلخواه
هکرها همیشه پورت ۲۲ را اسکن می کنند.
فایل تنظیمات SSH:
sudo nano /etc/ssh/sshd_config
خط زیر را پیدا کنید:
#Port 22
تغییر دهید:
Port 2222
سپس:
sudo systemctl restart sshd
✅ حالا اتصال جدید:
ssh root@IP -p 2222
۳. غیرفعال کردن ورود مستقیم Root
ورود مستقیم root بسیار خطرناک است.
sudo nano /etc/ssh/sshd_config
پیدا کنید:
PermitRootLogin yes
تغییر دهید:
PermitRootLogin no
سپس:
sudo systemctl restart sshd
۴. ساخت کاربر جدید با دسترسی sudo
adduser adminuser
usermod -aG sudo adminuser
حالا با این کاربر وارد شوید.
۵. استفاده از SSH Key به جای رمز عبور
امن ترین روش ورود.
روی سیستم خودتان:
ssh-keygen -t rsa -b 4096
سپس:
ssh-copy-id adminuser@IP -p 2222
بعد در سرور:
sudo nano /etc/ssh/sshd_config
تغییر دهید:
PasswordAuthentication no
سپس:
sudo systemctl restart sshd
✅ حالا فقط با کلید وارد می شوید.
۶. نصب فایروال UFW
فعال سازی:
sudo apt install ufw -y
اجازه به SSH جدید:
sudo ufw allow 2222/tcp
اجازه به وب:
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
فعال سازی:
sudo ufw enable
مشاهده وضعیت:
sudo ufw status
۷. نصب Fail2Ban ضد حملات Brute Force
sudo apt install fail2ban -y
فعال سازی:
sudo systemctl enable fail2ban
sudo systemctl start fail2ban
وضعیت:
sudo systemctl status fail2ban
✅ آی پی مهاجم را خودکار بلاک می کند.
۸. نصب آنتی ویروس ClamAV
sudo apt install clamav clamav-daemon -y
آپدیت دیتابیس:
sudo freshclam
اسکن:
clamscan -r /home
۹. محدود کردن دسترسی فایل ها
مجوزهای اشتباه یعنی فاجعه امنیتی.
اصلاح chmod:
find /var/www/html -type f -exec chmod 644 {} ;
find /var/www/html -type d -exec chmod 755 {} ;
۱۰. مانیتورینگ لاگ ها و ورودها
بررسی لاگ SSH:
sudo tail -f /var/log/auth.log
بررسی ورود کاربران:
last
بررسی کاربران آنلاین:
w
تنظیمات حرفه ای اضافه (پیشنهاد ویژه)
نصب ابزار بررسی روت کیت:
sudo apt install rkhunter -y
sudo rkhunter --check
نصب AppArmor
sudo systemctl status apparmor
اگر فعال بود عالی است.
چک لیست امنیت سرور لینوکس
| مورد | انجام شد |
|---|---|
| آپدیت سیستم | ✅ |
| تغییر پورت SSH | ✅ |
| غیرفعال کردن Root | ✅ |
| ساخت کاربر جدید | ✅ |
| SSH Key | ✅ |
| فایروال | ✅ |
| Fail2Ban | ✅ |
| آنتی ویروس | ✅ |
| مجوز فایل ها | ✅ |
| بررسی لاگ ها | ✅ |
اشتباهات رایج مدیران سرور
❌ استفاده از رمز ساده
❌ باز بودن پورت های اضافی
❌ ورود با root
❌ آپدیت نکردن سیستم
❌ نداشتن بکاپ
نتیجه گیری
اگر همین ۱۰ روش را اجرا کنید، امنیت سرور لینوکس شما چندین برابر بهتر می شود و جلوی اکثر حملات رایج گرفته خواهد شد.
امنیت سرور یک کار یک باره نیست؛ باید دائماً بررسی، بروزرسانی و مانیتور شود.
سوالات متداول
آیا لینوکس امن تر از ویندوز سرور است؟
بله، در صورت مدیریت صحیح معمولاً امن تر و پایدارتر است.
آیا تغییر پورت SSH کافی است؟
خیر، فقط یک لایه دفاعی است.
بهترین ابزار امنیت سرور چیست؟
ترکیب این موارد:
- UFW
- Fail2Ban
- SSH Key
- آپدیت منظم