امنیت سرور

2. نصب نسخه Minimal یا Core


# برای نصب نسخه مینیمال Ubuntu:

sudo apt install ubuntu-server-minimal

3. پیکربندی BIOS/UEFI قبل از نصب

4. انتخاب فایل‌سیستم و پارتیشن‌بندی ایمن


/         →  سیستم‌عامل  
/home     →  کاربران  
/var      →  لاگ‌ها و داده‌های متغیر  
/tmp      →  فضای موقت  (با mount option: noexec, nosuid)  
/boot     →  بوت‌لودر (در صورت نیاز جدا شود)


برای پارتیشن‌های /tmp و /home، استفاده از گزینه‌های mount زیر توصیه می‌شود:  
nodev, noexec, nosuid


# Debian / Ubuntu:

sudo apt update && sudo apt upgrade -y

# RHEL / CentOS / Rocky:

sudo dnf update -y


# نمایش پورت‌های باز و سرویس‌های در حال گوش‌دادن:
sudo ss -tuln
# نمایش وضعیت واحدهای فعال از نوع سرویس:
sudo systemctl list-units --type=service

7. نصب و فعال‌سازی ابزارهای امنیتی پایه


sudo adduser secureadmin
sudo usermod -aG sudo secureadmin

9. استفاده از چک‌لیست‌های امنیتی رسمی


sudo apt install lynis
sudo lynis audit system


sudo nano /etc/ssh/sshd_config

داخل فایل، مقدار پورت و دسترسی روت رو اینطور تنظیم کنید:


Port 2222
PermitRootLogin no   # غیرفعال کردن ورود مستقیم به root

سپس SSH را ریستارت کنید:


sudo systemctl restart sshd


sudo nano /etc/ssh/sshd_config

داخل فایل موارد زیر را اضافه یا اصلاح کنید:


PasswordAuthentication no
ChallengeResponseAuthentication no


ssh-keygen -t rsa -b 40

ssh-copy-id -p 2222 user@your


sudo apt install fail2ban -y

پیکربندی اولیه:

یک فایل تنظیمات محلی بسازید:

sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

سپس آن را ویرایش کنید:

sudo nano /etc/fail2ban/jail.local

بخش [sshd] را یافته و فعال کنید:

[sshd]
enabled = true
port = 2222
filter = sshd
logpath = /var/log/auth.log
maxretry = 5
bantime = 3600    # زمان بن شدن IP به ثانیه (مثلاً 1 ساعت)
findtime = 600    # بازه زمانی برای شمارش تلاش‌ها (10 دقیقه)

راه‌اندازی مجدد Fail2Ban:

sudo systemctl restart fail2ban
sudo systemctl enable fail2ban

بررسی وضعیت سرویس و جعبه‌های بن شده:

sudo fail2ban-client status
sudo fail2ban-client status sshd

sudo apt install ufw -y

# سیاست پیش‌فرض: رد همه ورودی‌ها
sudo ufw default deny incoming

# اجازه دادن به همه خروجی‌ها
sudo ufw default allow outgoing

# باز کردن پورت‌های مورد نیاز
sudo ufw allow 2222/tcp     # برای SSH جدید
sudo ufw allow 80,443/tcp   # در صورت استفاده از وب‌سرور

# فعال‌سازی فایروال
sudo ufw enable

# بررسی وضعیت فایروال
sudo ufw status verbose


sudo apt install fail2ban -y

پیکربندی اولیه:

یک فایل تنظیمات محلی بسازید:

sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

سپس آن را ویرایش کنید:

sudo nano /etc/fail2ban/jail.local

بخش [sshd] را یافته و فعال کنید:

[sshd]
enabled = true
port = 2222
filter = sshd
logpath = /var/log/auth.log
maxretry = 5
bantime = 3600    # زمان بن شدن IP به ثانیه (مثلاً 1 ساعت)
findtime = 600    # بازه زمانی برای شمارش تلاش‌ها (10 دقیقه)

راه‌اندازی مجدد Fail2Ban:

sudo systemctl restart fail2ban
sudo systemctl enable fail2ban

بررسی وضعیت سرویس و جعبه‌های بن شده:

sudo fail2ban-client status
sudo fail2ban-client status sshd

بخش چهارم: حفاظت نرم‌افزاری و سخت‌افزاری سرور

1. نصب آنتی‌ویروس و آنتی‌مالور


sudo apt install clamav clamav-daemon -y
sudo freshclam    # به‌روزرسانی دیتابیس ویروس‌ها


sudo apt install clamav clamav-daemon -y
sudo freshclam    # به‌روزرسانی دیتابیس ویروس‌ها
clamscan -r /home

2. استفاده از سیستم‌های تشخیص و جلوگیری از نفوذ (IDS/IPS)

4. فعال‌سازی احراز هویت چندمرحله‌ای (2FA / MFA)

sudo apt install libpam-google-authenticator
google-authenticator
sudo nano /etc/pam.d/sshd
auth required pam_google_authenticator.so
ChallengeResponseAuthentication yes

5. راهکارهای سخت‌افزاری امنیت سرور

rsync -avz --delete /path/to/data user@backup-server:/backup/location
rclone sync /path/to/data remote:backup
sudo adduser limitedadmin
sudo usermod -aG sudo limitedadmin

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

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